
擴展閱讀
基于Cordova批量打場景包(MAC)
APP包名稱命名規則
1. 安裝cordova打包應用
`brew install cordova`
2. 創建cordova項目
執行命令 `create app com.githen.app 測試app` * `app` 項目的目錄名稱 ( 下面所有目錄均以此目錄為根目錄說明 ) * `com.githen.app` 項目包名稱 * `測試app` 項目展現名稱
3. 創建代碼快捷軟鏈
`MAC/Linux` 執行命令 `ln -s 程序/build app/www``Window` 執行命令 `mklink /D 程序/build app/www`* `程序/build` yarn 執行構建后的目錄* `app/www` cordova目錄下的www目錄
4. 項目配置調整
- 修改默認啟動圖及圖標配置
在config.xml中 中添加以下信息
- 修改最低兼容版本
// 在build.gradel中的defaultMinSdkVersion=21支持系統為5.0+
- 在AndroidManifest.xml 修改版本號 和 版本Code
- 在AndroidManifest.xml 刪除
5. 插件處理
請求白名單頁面loadingcordova plugin add cordova-plugin-whitelist
退出提醒插件cordova plugin add cordova-plugin-splashscreen
相機插件cordova plugin add cordova-plugin-x-toast
獲取版本號cordova plugin add cordova-plugin-camera
設備信息cordova plugin add cordova-plugin-app-version
兼容低版本cordova plugin add cordova-plugin-device
判斷網絡連接`cordova plugin add cordova-x5webview-plugin`
QQ分享cordova plugin add cordova-plugin-network-information
微博分享cordova plugin add cordova-plugin-qqsdk --variable QQ_APP_ID=申請的ID
瀏覽器打開cordova plugin add cordova-plugin-weibosdk --variable WEIBO_APP_ID=申請的ID
微信分享cordova plugin add cordova-plugin-customurlscheme --variable URL_SCHEME=app
cordova plugin add cordova-plugin-wechat@2.5.0 --variable wechatappid=申請的ID
此版本插件為2.5.0,需要執行下面命令調整解決分享后的閃退問題修改`$your_project/plugins/cordova-plugin-wechat/scripts/android-install.js`中的var targetDir = path.join(projectRoot, "platforms", "android", "src", packageName.replace(/./g, path.sep), "wxapi"); 為var targetDir = path.join(projectRoot, "platforms", "android", "app","src","main","java", packageName.replace(/./g, path.sep), "wxapi");
百度定位cordova plugin add cordova-plugin-baidumaplocation ---variable ANDROID_KEY="申請的key" --variable IOS_KEY="申請的key"
參考地址:兼容cordova8(https://www.jianshu.com/p/9328f374c504)
參考地址:百度定位官網(http://lbsyun.baidu.com/)
1.在根目錄下的config.xml文件中標簽后添加hook
2.新建文件scripts/patch-android-studio-check.js,并寫入如下內容
/*** This hook overrides a function check at runtime. Currently, cordova-android 7+ incorrectly detects thatwe are using* an eclipse style project. This causes a lot of plugins to fail at install time due to paths actually being setup* for an Android Studio project. Some plugins choose to install things into 'platforms/android/libs' which makes* this original function assume it is an ecplise project.*/module.exports = function(context) { if (context.opts.cordova.platforms.indexOf('android') < 0) { return; } const path = context.requireCordovaModule('path'); const androidStudioPath = path.join(context.opts.projectRoot, 'platforms/android/cordova/lib/AndroidStudio'); const androidStudio = context.requireCordovaModule(androidStudioPath); androidStudio.isAndroidStudioProject = function() { return true; };};
3.修改pluginscordova-plugin-baidumaplocationplugin.xml如下
注釋下面代碼:替換為
百度統計cordova plugin add cordova-plugin-baidumobstat
1.在插件src/android/BaiduMobStat.java中添加start代碼
if ("start".equals(action)) { String pageName = ""; try { pageName = args.getString(0); } catch (Exception e) { // TODO: handle exception } if (TextUtils.isEmpty(pageName)) { callbackContext.error("pageName invalid, error"); return; } StatService.start(webView.getContext(), pageName); //System.out.println("baidu:" + StatService.getTestDeviceId(cordova.getActivity()));} else
2.注冊新方法 www/baidumobstat.js
start : function (pageName) { exec(null, errorHandle, "BaiduMobStat", "start", [pageName]);},
3.首頁添加自動統計代碼
cordova.plugins.BaiduMobStatistics.start('stat');
4.在AndroidManifest.xml中添加百度統計key代碼
極光推送cordova plugin add jpush-phonegap-plugin --variable APP_KEY=申請的ID
參考地址:極光推送官網(https://www.jpush.cn/)
拷貝plugins/cordova-plugin-jcore/src/android下所有帶so文件到android/app/libs對應目錄下
6.APK簽名
- MAC命令
jarsigner -verbose -keystore [keystorePath] -signedjar [apkOut] [apkin] [alias]-verbose -> 輸出簽名過程的詳細信息-keystore [keystorePath] -> 密鑰的庫的位置-signedjar [apkOut] -> 簽名后的輸出文件名[apkin] -> 待簽名的文件名[alias] -> 證書別名實例:jarsigner -tsa http://timestamp.digicert.com -sigalg SHA1withRSA -digestalg SHA1 -verbose -keystore debug.keystore -signedjar app_2.0.4.190116_release_sjqq_signed.apk app_2.0.4.190116_release_sjqq_unsign.apk androiddebugkey
- Window
可直接下載360加固(http://jiagu.360.cn/#/global/index)