Ionic項目打包安卓APK


之前用Ionic+Angular做了幾個小應用Demo,現在用其中一個做實驗試下打包安卓的APK安裝包。(備注:我用的應用demo是之前博客里寫的匯率的Demo,不清楚的同學可以查哈~)

我是用ionic start創建的項目,在我的platforms里默認的只有IOS的平台,所以我要先安裝上Android平台。

打開終端,進入到項目文件夾內,執行命令:$ ionic platform add android,之后等待添加完成。

第一步:先創建應用圖標和啟動圖片

  應用圖標最少要1024px*1024px大小,啟動圖標最少要2208px*2208px,都要png-8格式的就可以了。做好圖片后,我們把圖標命名為icon.png,啟動圖片命名為splash.png,把這兩張圖片放到項目resources文件夾目錄下,然后在android和ios文件夾目錄下也各放一份,之后在終端執行命令:$ ionic resources,然后就會生成不同尺寸的圖片。

(注:ionic resources命令默認會將圖標和啟動圖片都生成不同尺寸的圖片,如果像分別生成,可以執行ionic resources icon生成圖標,執行ionic resources --splash生成啟動圖片)

第二步:優化項目文件

  應用體積越小越好,所以我需要把項目里非必要的文件都清除掉。

  ① 移除Cordova Console插件

    運行命令查看cordova插件列表:$ cordova plugin list

    看到我們需要刪除的插件:

    

    運行刪除插件的命令:$ cordova plugin rm cordova-plugin-console

    執行成功:

    

  ② 移除所有不需要的文件

  ③ 移除庫中不使用的文件

  ④ 壓縮代碼

  ⑤ 壓縮圖片

第三步 安裝JDK 配置JAVA環境

  下載JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html

  

  下載文件后,雙擊安裝:

  

  安裝完成后點擊關閉:

  

  在終端運行命令:$ java -version,檢測是否成功:

  

  還可以在命令提示符中輸入“javac”,能夠出現用法提示,證明安裝成功。

第四步 安裝Android SDK Tools

  需要下載兩個工具:sdk tools和更新完的sdk的adt版本

  sdk tools下載地址:http://www.androiddevtools.cn/

  

  解壓后命令行進入tools目錄:$ cd android-sdk-macosx/tools/

  輸入命令:$ ./android sdk,然后我們會看到Android SDK Manager圖形界面

  從菜單欄Android SDK Manager 進入Preferences,進行如下配置:

  

  然后從菜單Tools進入Manage Add-on Site:

  

  然后把下面的網址手動new進去:

  http://mirrors.neusoft.edu.cn/android/repository/addon-6.xml
  http://mirrors.neusoft.edu.cn/android/repository/addon.xml
  http://mirrors.neusoft.edu.cn/android/repository/extras/intel/addon.xml
  http://mirrors.neusoft.edu.cn/android/repository/sys-img/android-tv/sys-img.xml
  http://mirrors.neusoft.edu.cn/android/repository/sys-img/android-wear/sys-img.xml
  http://mirrors.neusoft.edu.cn/android/repository/sys-img/android/sys-img.xml
  http://mirrors.neusoft.edu.cn/android/repository/sys-img/google_apis/sys-img.xml
  http://mirrors.neusoft.edu.cn/android/repository/sys-img/x86/addon-x86.xml
  http://mirrors.neusoft.edu.cn/android/repository/addons_list-2.xml
  http://mirrors.neusoft.edu.cn/android/repository/repository-10.xml

  然后建議勾選下面打框的選項,之后進行安裝就可以啦(Android版本我隨便選了幾個,不用選太低的版本):

  

  然后設置Android環境變量:

  打開終端,進入android sdk安裝目錄:

  輸入命令:$ touch .bash_profile

  輸入命令:open -e .bash_profile

  打開.bash_profile添加路徑(我的路徑哈):

  export ANDROID_HOME=/Users/jiangwei/Desktop/android-sdk
  export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

  保存文件並關閉

  然后輸入命令:$ source .bash_profile

  在終端輸入命令 adb點回車,如果未顯示command not found,說明此命令有效,環境變量設置完成。

第五步 配置應用簽名

  回到應用項目目錄下:

  運行命令:$ keytool -genkey -v -keystore know_your_brew.keystore -alias know_your_brew -keyalg RSA -keysize 2048 -validity 10000

  注意:使用你應用的名字來替代know_your_brew,這個命令會生成一個新的文件,在本示例中為know_your_brew.keystore。

第六步 使用Cordova編譯應用文件

  使用build命令編譯一個應用的發布版本:

  終端進入到項目目錄下,執行命令:$ cordova build --release android

  該命令會生成一個新的APK文件,命令會返回編譯后的APK文件的絕對地址,如下圖所示:

  

第七步 簽名應用文件

  現在我們來使用之前創建的keystore文件來簽名已生成的未簽名版本的應用。

  (我們先把已經生成的apk文件移到項目根目錄下,不然可能會報錯"無法打開 jar 文件: android-release-unsigned.apk")

  終端執行命令:

  $ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore exr.keystore android-release-unsigned.apk exr

  過程會需要一點時間,期間會提示輸入keystore的密碼密鑰,命令會修改apk文件並對其進行簽名。

  可以使用命令$ jarsigner -verify -verbose -certs apk文件名,來驗證應用是否簽名成功。

第八步 優化APK文件

  優化APK文件,使其減少在設備上占用的空間和內存。我們使用zipalign工具,它使用簽名后的APK文件生成一個優化后的APK版本,用於應用上傳。

  在android-sdk目錄里,我搜到zipalign的命令的地址是:./build-tools/25.0.2下面,從終端進入android-sdk目錄下,執行命令:

  $ open -e .bash_profile

  打開.bash_profile文件,添加zipalign環境變量:export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/build-tools/25.0.2

  保存關閉文件

  執行命令:$ source .bash_profile

  然后返回到應用項目文件夾目錄下,執行命令:

  $ zipalign -v 4 android-release-unsigned.apk MyExrApp.apk

  完成后會返回

至此,android APK文件已經生成並完成簽名和優化,可以將它發到手機上就可以下載安裝了,如果想要將它發布到應用商店,那就需要去應用商店注冊開發者賬戶,將其提交到Android應用商店中。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM