android工具-annotations,-annotations
在當下的java的使用中,annotations已經被廣泛運用,來提升開發效率。在android中,主要是協助開發人員處理一些前背景工作、rest 服務、應用類、程式碼片段等,讓開發人員專註於真正重要的東西。
(一)如何使用android annotations
具體使用方法請參看此文。
(二)使用範例
/** * android annotations範例 * * @author peter_wang * @create-time 2014-9-13 下午7:40:56 */// 設定Activity的layout布局檔案@EActivity(R.layout.activity_http_request)public class HttpRequestActivity extends Activity { // 等同findviewById,名字預設是id名字 @ViewById TextView tv_response_main; //string資源檔資訊 @StringRes(R.string.hello_world) String mHelloWorld; // 執行完oncreate後的動作 @AfterViews void init() { tv_response_main.setText(mHelloWorld); } // 點擊事件,tv_response_main代表點擊的觸發View對象id @Click void tv_response_mainClicked() { getHttpData(); } // 後台執行線程 @Background void getHttpData() { try { // 得到HttpClient對象 HttpClient getClient = new DefaultHttpClient(); // 得到HttpGet對象 HttpGet request = new HttpGet("http://192.168.140.1:8080/SimpleServer/servlet/PayServlet?id=1"); // 用戶端使用GET方式執行請教,獲得伺服器端的回應response HttpResponse response = getClient.execute(request); // 判斷請求是否成功 if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { // 獲得輸入資料流 InputStreamReader inStrem = new InputStreamReader(response.getEntity().getContent()); BufferedReader br = new BufferedReader(inStrem); StringBuilder sb = new StringBuilder(); String readLine = null; while ((readLine = br.readLine()) != null) { sb.append(readLine); } setHttpDataUI(sb.toString()); // 關閉輸入資料流 inStrem.close(); } else { } } catch (Exception e) { e.printStackTrace(); } } // 線程中更新UI @UiThread void setHttpDataUI(String data) { tv_response_main.setText(data); }}
(三)工作原理
android annotations源於java annotations,簡單瞭解java annotations可以看這篇文章。
java annotations中包含三種類型:SourceCode、Class、Runtime。
android annotations是SourceCode類型,利用Java Annotation Processing Tool (APT) 在編譯源檔案(*.java)之前,通過註解處理器(AnnotationProcessor)解釋並處理源檔案中的註解,產生 一些新的源檔案,APT也會對新產生源檔案進行編譯,直到沒有新的檔案產生。新產生的源檔案在apt_generated檔案夾中。
編譯前
package com.some.company;@EActivitypublic class MyActivity extends Activity { // ...}
編譯後
package com.some.company;public final class MyActivity_ extends MyActivity { // ...}由此可知:Activity會產生新的Activity_檔案,所以AndroidManifest.xml中用到的Activity和Application都要加底線:xxActivity_,xxApplication_。
(四)優點
(1)簡化開發,提高效率。依賴注入layout、views、resource、service等常用操作。
(2)開放。產生的源檔案可見。
(3)不影響效能。因為不是runtime操作,都在編譯期產生新的源檔案,對程式運行速度沒有影響。
Android 開發用什工具?
android是基於linux的,所以在ubuntu下是最好的。當然windows下面也是可以的。但是android的核心是基於linux的,並且通過終端進行各種操作,非常強大,也比cmd方便。我現在自己開發的環境是這樣的:
ubuntu系統,以前我是windows然後安裝了ubuntu的虛擬機器。android大部分的開發都是中介層到頂層的應用開發,所以基本上是java開發。表配如下:
1。eclipse是開發java必備,也是android必備。(當然前提是先安裝JDK1.6)
2。下載android的SDK和ADT。這是android的開發必須的工具,adb、ddms、mksdcard、aapt,debug 必備
A。安裝完eclipse後,通過help=〉install new software 。。把ADT安裝好
B。然後window=>preference設定好SDK的路徑即可
如果用到C開發的話,可以安裝一下啊CDT
現在可以通過AVD manager安裝一下你想在哪個平台下的api,比如:android2.3.4,就可以建一個2.3.4的emulator,把模擬器跑起來。通過adb ddms 等工具察看、開發了。為了方便,把adb的路徑加到環境變數裡。
好了,大致上就這麼多。配好就可以開發了,祝你好運~~
參考資料:zhidao.baidu.com/question/301811184.html
Android開發需要那些開發工具
JDK1.6以上
Eclipse + ADT外掛程式
andoid SDK 開發套件 檔案大小取決於下的外掛程式 從1G到7G不等
基本就可以了 如果美話介面的話還要用到PS等工具