ionic3 創(chuàng)建項(xiàng)目至apk打包全過(guò)程教程
主要流程:
安裝node.js ?--> ?安裝jdk ?--> ?安裝AndroidSDK ?--> ?安裝cordova ?--> ?安裝ionic --> ?創(chuàng)建項(xiàng)目 ?--> ?編譯項(xiàng)目apk
一、安裝nodejs
不要安裝最新版。
不建議更改安裝路徑。
網(wǎng)盤地址:
鏈接: https://pan.baidu.com/s/1Q5_nAhaJq6Ahw5DqSIzxXA 密碼: 2sy7
查看nodejs版本:
node -v
查看npm版本:
npm -v
安裝淘寶鏡像 :
npm install -g cnpm --registry=https://registry.npm.taobao.org
查看cnpm版本:
cnpm -v
二、安裝jdk(無(wú)需配置環(huán)境變量)
不建議更改安裝路徑。
網(wǎng)盤地址:
鏈接: https://pan.baidu.com/s/1Q5_nAhaJq6Ahw5DqSIzxXA 密碼: 2sy7
查看版本:
java -version
三、安裝sdk(需要配置環(huán)境變量)
網(wǎng)盤地址:
鏈接: https://pan.baidu.com/s/1Q5_nAhaJq6Ahw5DqSIzxXA 密碼: 2sy7
右鍵X解壓
重命名為sdk
跟jdk放在一個(gè)父目錄,便于查找。C:\Program Files\sdk
配置環(huán)境變量
計(jì)算機(jī)——右鍵屬性——-高級(jí)系統(tǒng)設(shè)置——-環(huán)境變量
在系統(tǒng)變量中新建:
變量名:ANDROID_HOME
變量值:C:\Program Files\sdk
在Path變量中將
;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools
添加到變量值最后(注意前面有分號(hào))
檢查配置是否正確:
android -h
執(zhí)行命令就代表安裝無(wú)誤。

SDK Manager.exe工具
打開界面上的Tools,選擇options,先配置國(guó)內(nèi)鏡像:
域名千萬(wàn)不要輸入http或者h(yuǎn)ttps協(xié)議前綴
mirrors.neusoft.edu.cn

回到主界面,點(diǎn)packages再點(diǎn)reload
按照下面圖片進(jìn)行勾選:


點(diǎn)右下角 install packages 來(lái)安裝,耐心等待即可。
四、安裝cordova
cmd執(zhí)行:
cnpm install -g?cordova@6
?
查看版本:
cordova -v
五、安裝ionic
cmd執(zhí)行:
cnpm install -g?ionic@3.12.0
查看版本:
ionic -v
六、創(chuàng)建ionic項(xiàng)目
創(chuàng)建
cd到要放置app的目錄下,執(zhí)行:
ionic start myapp tabs --skip-npm
解釋:
myapp:項(xiàng)目名稱(自定義)
tabs:ionic模板,還有blank
--skip-npm:跳過(guò)npm安裝

cd到app目錄補(bǔ)全文件
執(zhí)行:
cnpm i

cd到app目錄運(yùn)行項(xiàng)目
執(zhí)行:
ionic serve
如果出現(xiàn) localhost,有幾個(gè)localhost就輸入幾

七、添加平臺(tái)
cd 到app目錄下,執(zhí)行
ionic cordova platform add android

添加完平臺(tái)后app目錄下會(huì)多了一個(gè) platforms 文件夾

八、下載gradle插件
打開:http://services.gradle.org/distributions/
選擇?gradle-2.14.1-all.zip
或者
網(wǎng)盤地址:
鏈接: https://pan.baidu.com/s/1Q5_nAhaJq6Ahw5DqSIzxXA 密碼: 2sy7
下載完不用解壓,直接拷貝到項(xiàng)目文件下的這個(gè)文件下:

注意:新項(xiàng)目沒(méi)有g(shù)radle這個(gè)文件夾,需要新建一個(gè),文件名不要寫錯(cuò)。
修改配置:
找到下面路徑下的?GradleBuilder.js文件

用代碼編輯器打開?GradleBuilder.js:
將: ?
'https\\://services.gradle.org/distributions/gradle-2.14.1-all.zip'?
改為:?
'../gradle-2.14.1-all.zip'
如下圖:
將:

改為:

保存關(guān)閉。
九、打包
cd到app目錄下,執(zhí)行:
ionic cordova build android


打的apk包在畫紅線那個(gè)路徑下面。將apk文件發(fā)送到手機(jī)就可以安裝了。
十、APK簽名
此時(shí)你已經(jīng)有了debug的包,這個(gè)包是用來(lái)進(jìn)行本地開發(fā)測(cè)試使用的,這個(gè)apk包是有簽名的,所以他能被安裝到手機(jī)上,但是這個(gè)包不能用來(lái)上架。所以我們要執(zhí)行下面的命令,用來(lái)生成一個(gè)沒(méi)有簽名的apk包。
ionic cordova build android –release


簽名步驟:?
1、生成簽名(.keystore)文件
打開cmd,cd到j(luò)dk的bin目錄,執(zhí)行:
keytool -genkey -v?-keystore cl.keystore -alias?cl.keystore -keyalg RSA -validity 20000
說(shuō)明:??
-genkey 產(chǎn)生密鑰
-keystore cl.keystore 證書的文件名
-alias cl.keystore證書的別名
-keyalg RSA 使用RSA算法對(duì)簽名加密
-validity 20000該數(shù)字證書的有效期

2、簽名apk
把將要簽名的apk放在jdk文件bin目錄下,cmd執(zhí)行:
jarsigner -verbose -digestalg SHA1 -sigalg MD5withRSA -tsa http://sha256timestamp.ws.symantec.com/sha256/timestamp -keystore cl.keystore -signedjar icl.apk android-release-unsigned.apk cl.keystore
說(shuō)明:??
jarsigne 是工具名稱
-verbose 表示將簽名過(guò)程中的詳細(xì)信息打印出來(lái)
-digestalg SHA1 -sigalg MD5withRSA -tsa http://sha256timestamp.ws.symantec.com/sha256/timestamp 時(shí)間戳
-keystore cl.keystore 之前生成的證書?
-signedjar icl.apk 簽名后的apk?
android-release-unsigned.apk 需要簽名的apk?
cl.keystore 證書的別名


這樣簽名完成的apk就可以上架了。
至此,一個(gè)app項(xiàng)目從創(chuàng)建到打包已經(jīng)完成。
十一、可能發(fā)生的錯(cuò)誤
1、打包時(shí)出現(xiàn)的問(wèn)題:

解決方法:
進(jìn)入SDK Manager.exe,安裝SDK Platform API25
再執(zhí)行一次打包命令:
ionic cordova build android