<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                #### **Android 打包應用程序并安裝的過程** 目前,是使用**Eclipse編譯工具打包安裝APK的過程分析**,至于使用AndroidStudio的過程可以參考 :-: ![](https://box.kancloud.cn/350b2d3af15a6a088018a32426d639ef_762x200.png) 圖1 Android 打包應用程序并安裝的過程 1. 拷貝apk文件到 /data/app/xx.apk 2. 寫注冊表 /data/system/package.xml packages.list #### **Eclipse對安卓測試程序啟動過程** **程序**: * adt: android develop tools (eclipse的一個插件) * ddms : dalvik debug manager system * adb.exe android debug bridge android調試橋 * aapt.exe android application package tools android程序打包工具 1. Eclipse將.java源文件編譯成.class 2. 使用dx工具將所有.class文件轉換為.dex文件 3. 再將.dex文件和所有資源打包成.apk文件 4. 將.apk文件安裝到虛擬機完成程序安裝 5. 啟動程序 – 開啟進程 – 開啟主線程 6. 創建Activity對象 – 執行OnCreate()方法 7. 按照main.xml文件初始化界面 #### **工程編譯步驟** 步驟中提到的工具如下表: ![](https://box.kancloud.cn/4131d904339fda67b3dd4705a54657f5_662x244.jpg) * **第一步:打包資源文件,生成R.java文件** 【輸入】Resource文件(就是工程中res中的文 件)、Assets文件(相當于另外一種資源,這種資源Android系統并不像對res中的文件那樣優化它)、AndroidManifest.xml 文件(包名就是從這里讀取的,因為生成R.java文件需要包名)、Android基礎類庫(Android.jar文件) 【輸出】打包好的資源(一般在Android工程的bin目錄可以看到一個叫resources.ap_的文件就是它了)、R.java文件(在gen目錄中,大家應該很熟悉了) 【工 具】aapt工具,它的路徑在${ANDROID_SDK_HOME}/platform-tools/aapt(如果你使用的是Windows系統,按 慣例路徑應該這樣寫:%ANDROID_SDK_HOME%\platform-tools\aapt.exe,下同)。 * **第二步:處理AIDL文件,生成對應的.java文件(當然,有很多工程沒有用到AIDL,那這個過程就可以省了)** 【輸入】源碼文件、aidl文件、framework.aidl文件 【輸出】對應的.java文件 【工具】aidl工具 * **第三步:編譯Java文件,生成對應的.class文件** 【輸入】源碼文件(包括R.java和AIDL生成的.java文件)、庫文件(.jar文件) 【輸出】.class文件 【工具】javac工具 * **第四步:把.class文件轉化成Davik VM支持的.dex文件** 【輸入】 .class文件(包括Aidl生成.class文件,R生成的.class文件,源文件生成的.class文件),庫文件(.jar文件) 【輸出】.dex文件 【工具】javac工具 * **第五步:打包生成未簽名的.apk文件** 【輸入】打包后的資源文件、打包后類文件(.dex文件)、libs文件(包括.so文件,當然很多工程都沒有這樣的文件,如果你不使用C/C++開發的話) 【輸出】未簽名的.apk文件 【工具】apkbuilder工具 * **第六步:對未簽名.apk文件進行簽名** 【輸入】未簽名的.apk文件 【輸出】簽名的.apk文件 【工具】jarsigner * **第七步:對簽名后的.apk文件進行對齊處理(不進行對齊處理是不能發布到Google Market的)** 【輸入】簽名后的.apk文件 【輸出】對齊后的.apk文件 【工具】zipalign工具 知道了這些細節之后,我們就可以實現很多我們想實現東西了,比如:**自動化**,我們可以使用某種腳本,像Windows下的批處理,linux下的Bash,Java下的Ant,Python、Perl這樣的腳本語言,甚至直接用Java、.net這們的強類型語言也是可以的。**如果你真正弄懂了上面的步驟,了解了編譯打包過程的本質,你完全可以以你想要的任何方式實現它的自動化,這才是真正的“舉一反三,以不變應萬變”**。再比如,**對Android SDK的精簡**,大家知道,現在Android SDK動轍幾百兆,我們完全可以應用上面的知識,只保留必要的工具,把SDK精簡到10M以下。當然,還可以做很多事情,前提是你真正弄懂了它。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看