準備工作
首先需要搭建Android開發環境,安裝eclipse和ADT(Android Development Tools)插件,并在Android SDK Manager中安裝需要的SDK。開發人員需要掌握Java編程語言,具備Android開發的能力,最后你需要TWaver Android開發庫文件(twaver.android.jar),這樣就可以開始TWaver Android的開發了。 下面將以最簡單的Hello TWaver示例來作分步詳解。新建Hello TWaver工程
新建一個Android Application工程"Hello TWaver",包名設置為"twaver.demo.hellotwaver",選擇最低SDK為API 11(Android 3.0),選擇目標SDK(Target SDK)為API 11,此后按向導提示至結束。

向導自動生成了一些文件和目錄,其中"MainActivity.java"文件是默認主引導類,之后我們會修改這個文件,各目錄簡單介紹:


導入twaver.android.jar類庫
接下來需要引入twaver android開發包,Android中引入類庫與桌面Java開發有所不同,需要通過"Import"方式來導入,而不是"build path",使用"Import"向導導入twaver.android.jar,ADT會自動轉成Dalvik虛擬機所支持的格式,步驟如下:選擇libs目錄,右鍵點擊"Import",選擇文件系統,找到"twaver.android.jar",點擊完成,"twaver.android.jar"將出現在libs目錄中,這樣我們就可以調用twaver android中的API了:

編寫Hello TWaver
打開前面自動生成的"MainActivity.java"文件,這是此項目的主引導類,找到"onCreate"方法(應用程序加載時會調用此方法),這里我們創建一個Network組件,并通過"setContentView(...)"將其添加到面板中,代碼如下:創建了一個Network組件,并向其數據容器中加入了兩個節點,一條連線和一條告警,最后設置這個network組件為內容視圖(content view)
1 @Override
2 protected void onCreate(Bundle savedInstanceState) {
3 super.onCreate(savedInstanceState);
4
5 Network network = new Network(this);
6 ElementBox box = network.getElementBox();
7
8 Node node = new Node();
9 node.setName("Hello");
10 node.setStyle(Styles.LABEL_OUTLINE, 1);
11 node.setLocation(50, 100);
12 box.add(node);
13 Node node2 = new Node();
14 node2.setName("TWaver");
15 node2.setLocation(250, 200);
16 box.add(node2);
17 Link link = new Link(node, node2);
18 link.setName("Hello TWaver");
19 box.add(link);
20
21 box.getAlarmBox().add(new Alarm(node.getId(), AlarmSeverity.CRITICAL));
22
23 this.setContentView(network);
24 }
2 protected void onCreate(Bundle savedInstanceState) {
3 super.onCreate(savedInstanceState);
4
5 Network network = new Network(this);
6 ElementBox box = network.getElementBox();
7
8 Node node = new Node();
9 node.setName("Hello");
10 node.setStyle(Styles.LABEL_OUTLINE, 1);
11 node.setLocation(50, 100);
12 box.add(node);
13 Node node2 = new Node();
14 node2.setName("TWaver");
15 node2.setLocation(250, 200);
16 box.add(node2);
17 Link link = new Link(node, node2);
18 link.setName("Hello TWaver");
19 box.add(link);
20
21 box.getAlarmBox().add(new Alarm(node.getId(), AlarmSeverity.CRITICAL));
22
23 this.setContentView(network);
24 }
運行與調試
最后運行程序,Android應用程序可以發布到虛擬機中,也可以直接連接到真實設備,我推薦使用真實設備來調試和開發,這樣效率高,且支持多點觸控,需要注意的是,并非所有的Android設備都可以用于開發,推薦使用Google Nexus系列產品,更多鏈接設備開發的資料可參考:http://developer.android.com/tools/extras/oem-usb.html,本例中我們將使用模擬器來運行剛才的例子。Android模擬器
打開Android模擬器管理器,創建一個API級別大于等于11的虛擬機,這里我們使用4.0.3,選擇相應的SDK:


