目錄
- 如何安裝Android SDK、建立開發環境和調試項目
- 移動設計中一些注意事項
- 使用Android虛拟裝置、模拟器和其他開發工具
如何安裝Android SDK、建立開發環境和調試項目
下載下傳和安裝Android SDK :
我的是window7系統,當然下載下傳 SDK starter package 最合适了: http://developer.android.com/sdk/index.html
下載下傳完打開壓縮包如下:
然後把這個包解壓到一個目錄,運作 SDK Manager.exe:
其中包括平台工具(Tools),每個平台版本和一組extra 的節點。
下載下傳時要選中對應于最新的架構SDK和最新的版本工具、相容/支援包、文檔和示例代碼的複選框。
當有新的Android架構SDK、開發工具、示例代碼、文檔、相容庫和第三方增件可用時,可以使用 Android SDK Manager 下載下傳和安裝更新。
Eclipse的ADT插件功能:
- 內建Android項目建立向導。
- 基于窗體的manifest檔案、布局和資料總管以幫助建立、編輯和驗證XML資源。
- 自動的建構Android項目,轉換為Android的可執行檔案.dex,打包為封包件.apk,并把包安裝到Dalvik虛拟機(可以運作在虛拟機和實際裝置上)。
- Android虛拟裝置管理器:運作特定版本Android OS、設定硬體和記憶體限定。
- Android模拟器:外觀,網絡連接配接設定以及模拟來電,SMS消息的能力。
- Dalvik 調試監控服務(Dalvik Debug Monitoring Service,DDMS),包括:端口轉發(port forwarding),棧、堆和線程檢視,程序細節和螢幕捕捉功能。
- 通路裝置或者模拟器的檔案系統,允許浏覽目錄和轉移檔案。
- 運作調試。設定斷點和檢視調用棧。
- 所有的Android/Dalvik日志和控制台輸出。
安裝ADT插件:還算簡單,如下圖。
Eclipse 選擇 Help|Install New Software:
建立和了解第一個HelloWorld程式:
(1)選擇Eclipse的File|New|Project|Android Application 類型|Next:
(2)填寫資訊之後一路Next便建立了一個預設的Hello World程式。
當然還得建立一個虛拟器AVD:
(1) Eclipse 選擇 Window|AVD Manager|Create:
(2)填寫資訊即可OK。
還需要建立一個啟動配置哦:
- 要啟動的項目和Activity
- 部署目标(虛拟裝置和時間裝置)
- 模拟器的啟動參數
- 輸入/輸出設定(包括預設的控制台)
建立和設定就簡單啦:
填寫資訊,Apply儲存目前設定。
終于運作和調試了(F5行不通了):
當然選擇Run/Debug了
了解一下HelloWorld是個什麼東東:
Activity是應用程式中可見的互動元件的基類,大概等同于桌面應用程式開發中的窗體Form哦。AndroidBarActivity是支援庫裡的類可以相容2.x版本, activity提供的actionbar隻有在3.0以上才可以用的。
package com.example.hello;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
在Android中,可視化元件稱為視圖(View),它類似于傳統桌面應用開發中的控件。
setContentView是用來布局的,當然是通過傳入的那個參數:布局資源。是以必須重寫OnCreate方法。
注意到R變量:提供對資源的設計時通路。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.hello.MainActivity" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
</RelativeLayout>
定義UI有兩種方式:
(1) XML,這樣可以把應用程式邏輯和UI分離開來。
Code中通路UI元素是通過辨別符屬性擷取的,例如:
<TextView android:id=”@+id/myTextView”
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
Code通路:TextView myTextView = (TextView)findViewById(R.id.myTextView);
(2) Code,按需使用。
移動設計中一些注意事項
Android的應用程式類型:
- 前台應用程式
- 背景應用程式
- 間歇式應用程式
- Widget和Live Wallpaper
移動裝置的特點:
- 低處理能力
- 有限的RAM
- 有限的永久存儲能力
- 低分辨率的小螢幕
- 與資料傳輸相關的更高成本
- 連接配接不穩定,低速的資料傳輸速率,高延遲
- 更不可靠的資料連接配接
- 有限的電池使用時間
開發中考慮事項:
- 高效
- 考慮有限的能力
- 為不同的螢幕進行設計
- 考慮低速率,高延遲
- 需要多少花費
使用Android虛拟裝置、模拟器和其他開發工具
1. Android虛拟裝置管理器
可以設定:
- 虛拟機最大堆大小
- 螢幕的像素密度
- SD卡支援
- 是否具有DPad、觸摸屏、鍵盤和跟蹤球等硬體
- 加速計、GPS和距離傳感器支援
- 可用裝置的記憶體
- 攝像頭硬體(及分辨率)
- 錄音支援
- 是否具備硬體back和home鍵
2. Android SDK 管理器
3. Android 模拟器
4. DDMS:允許檢視Activity程序、檢視棧、檢視和暫停Activity線程以及浏覽任何已連接配接Android裝置的檔案系統
5. Android調試橋(ADB):一個用戶端-伺服器應用程式,它允許連接配接任何Android裝置(真實的或者虛拟的)它由三個元件組成,
- 一個裝置或模拟器上運作的守護程序
- 一個在開發計算機上運作的服務
- 通過服務來和守護程序進行通信的用戶端應用程式(如:DDMS)
6. Hierarchy Viewer 和 Lint 工具:幫助分析、調試和優化應用程式内使用的XML布局定義。
7. Monkey 和 Monkey Runner: 用來在一個UI視圖中測試應用程式的穩定性。
Monkey 要在 ADB shell 中使用,它把一個僞随機系統和UI事件流發送給應用程式。在對應用程式進行壓力測試,以了解在一些你可能沒有想到的邊緣情況下對UI的非正常使用是否會導緻問題時,Monkey 十分有用
Monkey Runner 則是一個Python腳本 API,允許發送特殊的UI指令,以從應用程式外部控制模拟器或者裝置。以一種可預測、可重複的方式執行UI測試、功能測試和單元測試十分重要。
以上幾個工具看來比較強大哦,後面慢慢滴研究啊!!!
Q&A
Q:Android在啟動模拟器AVD時,出現下面的異常:“Failed to allocate memory: 8”,怎麼辦?
A:減少配置設定的記憶體大小。修改AVD的配置檔案,将選項“hw.ramSize=1024”從1024改為256。如圖所示:
今天按Ctrl+S之前突然停電,寫的很多,可惜丢了又來過一遍,氣煞我也。