鍍金池/ 問答/HTML5  iOS  Android  HTML/ ionic3項目如何打包apk

ionic3項目如何打包apk

ionic3項目如何打包apk

回答
編輯回答
醉淸風(fēng)

下載android platform
有兩種模式,一種是debug,一種是release
如何生成簽名
如何自動簽名
--prod的優(yōu)化啟動速度
1.添加Android平臺支持
在工程目錄下執(zhí)行 ionic platform add android 命令
項目的路徑下就會自動生成platform文件夾,里面有一個android文件夾。
添加Android平臺支持后就可以打包apk了
在工程目錄下執(zhí)行 ionic build android 命令
會在 xxxplatformsandroidbuildoutputsapk下生成android-debug.apk
這種命令生成的apk是用于調(diào)試的。
安裝到手機
連接手機或者打開模擬器,在xxxplatformsandroidbuildoutputsapk下打開命令窗口執(zhí)行adb install android-debug.apk就能將apk安裝在手機或者模擬器上了。
2.兩種打包的版本
一種是debug調(diào)試版,一種是release發(fā)布版

打包debug調(diào)試版
在工程目錄下執(zhí)行ionic build android,生成的apk就是debug調(diào)試版本
打包release發(fā)布版
在工程目錄下執(zhí)行ionic build andorid --release,生成的apk就是release發(fā)布版本。
如果沒有配置簽名文件則默認(rèn)只生成android-release-unsigned.apk,沒有簽名的apk。release版本是必須有簽名才能在手機上運行。
3.生成簽名文件
有兩種方式生成簽名文件
1.使用Android Studio

build.jpg
Genetate Signed APK.jpg
New Key Store.jpg
2.使用jdk的KeyTool生成簽名文件

生成簽名文件的命令:

keytool -genkey -v -keystore name.jks -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
name.jks,name可以自定義,jks是Android studio生成的簽名文件的后綴,這里默認(rèn)使用jks也可以;
alias_name是別名,也是自定義的。

生成簽名.jpg
注意注意:
問是否正確的時候要回答中文'是',一開始傻乎乎回答'yes'結(jié)果沒反應(yīng) (╯‵□′)╯︵┻━┻

4.如何打包的時候自動簽名
在工程目錄/platforms/android目錄新建名為release-signing.properties的文件,文件內(nèi)容如下

storeFile=path to keystore
keyAlias=your key alias
storePassword=your store password
keyPassword=you key password

使用ionic build android --release編譯即可,在/platforms/android/build/outputs/apk下就會生成已簽名的安裝包android-release.apk

在windows下storeFile文件路徑應(yīng)使用Unix下的目錄分隔符/。

5.--prod的優(yōu)化打包體積
在編譯命令的最后加上--prod會讓app的啟動速度加快。
ionic build android --release --prod
無論是debug版本還是release版本都適用。

2018年8月15日 20:31