利用HBuilderX 举行uniapp 打包Android APK 保姆教程

打印 上一主题 下一主题

主题 873|帖子 873|积分 2619

文章概览

公司业务项目需要打包apk上传的应用市场,打包过程、上架过程、考核驳回等碰到的问题解决,以及操作步调。
打包-配置

HBuilder X打包APK
基础配置

应用版本名称/应用版本号:设置必须比上一个版本的值高

APP启动界面配置


Android启动界面设置,利用原生隐私政策提示框,会在项目根目录下创建生成一个文件androidPrivacy.json
  1. {
  2.     "version" : "1",
  3.     "prompt" : "template",
  4.     "title" : "用户协议和隐私政策",
  5.     "message" : "  请你务必审慎阅读、充分理解“用户协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/>  你可阅读<a href="xxx">《用户协议》</a>和<a href="xxx">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
  6.     "buttonAccept" : "同意并接受",
  7.     "buttonRefuse" : "暂不同意",
  8.     "hrefLoader" : "system",
  9.     "backToExit" : "false",
  10.     "second" : {
  11.         "title" : "确认提示",
  12.         "message" : "  进入应用前,你需先同意<a href="xxx">《用户协议》</a>和<a href="xxx">《隐私政策》</a>,否则将退出应用。",
  13.         "buttonAccept" : "同意并继续",
  14.         "buttonRefuse" : "退出应用"
  15.     },
  16.     "disagreeMode" : {
  17.         "support" : false,
  18.         "loadNativePlugins" : false,
  19.         "visitorEntry" : false,
  20.         "showAlways" : false
  21.     },
  22.     "styles" : {
  23.         "backgroundColor" : "#F1F1F1",
  24.         "borderRadius" : "5px",
  25.         "title" : {
  26.             "color" : "#000"
  27.         },
  28.         "buttonAccept" : {
  29.             "color" : "#000"
  30.         },
  31.         "buttonRefuse" : {
  32.             "color" : "#ccc"
  33.         },
  34.         "buttonVisitor" : {
  35.             "color" : "#aaa"
  36.         }
  37.     }
  38. }
复制代码
APP模块配置

这个需要根据本身的项目需求举行设置

APP权限配置

  1. <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
  2. <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
  3. <uses-permission android:name="android.permission.VIBRATE"/>
  4. <uses-permission android:name="android.permission.READ_LOGS"/>
  5. <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
  6. <uses-feature android:name="android.hardware.camera.autofocus"/>
  7. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
  8. <uses-permission android:name="android.permission.CAMERA"/>
  9. <uses-permission android:name="android.permission.GET_ACCOUNTS"/>
  10. <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
  11. <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
  12. <uses-permission android:name="android.permission.WAKE_LOCK"/>
  13. <uses-permission android:name="android.permission.FLASHLIGHT"/>
  14. <uses-feature android:name="android.hardware.camera"/>
  15. <uses-permission android:name="android.permission.WRITE_SETTINGS"/>
  16. <uses-permission android:name="android.permission.INSTALL_PACKAGES"/>
  17. <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>
复制代码
APP常用其它配置

有些应用市场targetSdkVersion版本有要求,需要在这里举行配置

最好关闭利用广告标识(IDFA) 在上架应用市场的时候会被检测到

源码视图

  1. {
  2.     "name" : "",
  3.     "appid" : "",
  4.     "description" : "",
  5.     "versionName" : "1.0.0",
  6.     "versionCode" : 2,
  7.     "transformPx" : false,
  8.     /* 5+App特有相关 */
  9.     "app-plus" : {
  10.         "usingComponents" : true,
  11.         "nvueStyleCompiler" : "uni-app",
  12.         "compilerVersion" : 3,
  13.         "splashscreen" : {
  14.             "alwaysShowBeforeRender" : true,
  15.             "waiting" : true,
  16.             "autoclose" : true,
  17.             "delay" : 0
  18.         },
  19.         /* 模块配置 */
  20.         "modules" : {
  21.             "Payment" : {}
  22.         },
  23.         /* 应用发布信息 */
  24.         "distribute" : {
  25.             /* android打包配置 */
  26.             "android" : {
  27.                 "permissions" : [
  28.                     "<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>",
  29.                     "<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>",
  30.                     "<uses-permission android:name="android.permission.VIBRATE"/>",
  31.                     "<uses-permission android:name="android.permission.READ_LOGS"/>",
  32.                     "<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>",
  33.                     "<uses-feature android:name="android.hardware.camera.autofocus"/>",
  34.                     "<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>",
  35.                     "<uses-permission android:name="android.permission.CAMERA"/>",
  36.                     "<uses-permission android:name="android.permission.GET_ACCOUNTS"/>",
  37.                     "<uses-permission android:name="android.permission.READ_PHONE_STATE"/>",
  38.                     "<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>",
  39.                     "<uses-permission android:name="android.permission.WAKE_LOCK"/>",
  40.                     "<uses-permission android:name="android.permission.FLASHLIGHT"/>",
  41.                     "<uses-feature android:name="android.hardware.camera"/>",
  42.                     "<uses-permission android:name="android.permission.WRITE_SETTINGS"/>",
  43.                     "<uses-permission android:name="android.permission.INSTALL_PACKAGES"/>",
  44.                     "<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>"
  45.                 ],
  46.                 "targetSdkVersion" : 30
  47.             },
  48.             /* ios打包配置 */
  49.             "ios" : {
  50.                 "dSYMs" : false,
  51.                 "idfa" : false
  52.             },
  53.             /* SDK配置 */
  54.             "sdkConfigs" : {
  55.                 "ad" : {},
  56.                 "payment" : {
  57.                     "alipay" : {
  58.                         "__platform__" : [ "android" ]
  59.                     }
  60.                 }
  61.             },
  62.             "icons" : {
  63.                 "android" : {
  64.                     "hdpi" : "unpackage/res/icons/72x72.png",
  65.                     "xhdpi" : "unpackage/res/icons/96x96.png",
  66.                     "xxhdpi" : "unpackage/res/icons/144x144.png",
  67.                     "xxxhdpi" : "unpackage/res/icons/192x192.png"
  68.                 },
  69.                 "ios" : {
  70.                     "appstore" : "unpackage/res/icons/1024x1024.png",
  71.                     "ipad" : {
  72.                         "app" : "unpackage/res/icons/76x76.png",
  73.                         "app@2x" : "unpackage/res/icons/152x152.png",
  74.                         "notification" : "unpackage/res/icons/20x20.png",
  75.                         "notification@2x" : "unpackage/res/icons/40x40.png",
  76.                         "proapp@2x" : "unpackage/res/icons/167x167.png",
  77.                         "settings" : "unpackage/res/icons/29x29.png",
  78.                         "settings@2x" : "unpackage/res/icons/58x58.png",
  79.                         "spotlight" : "unpackage/res/icons/40x40.png",
  80.                         "spotlight@2x" : "unpackage/res/icons/80x80.png"
  81.                     },
  82.                     "iphone" : {
  83.                         "app@2x" : "unpackage/res/icons/120x120.png",
  84.                         "app@3x" : "unpackage/res/icons/180x180.png",
  85.                         "notification@2x" : "unpackage/res/icons/40x40.png",
  86.                         "notification@3x" : "unpackage/res/icons/60x60.png",
  87.                         "settings@2x" : "unpackage/res/icons/58x58.png",
  88.                         "settings@3x" : "unpackage/res/icons/87x87.png",
  89.                         "spotlight@2x" : "unpackage/res/icons/80x80.png",
  90.                         "spotlight@3x" : "unpackage/res/icons/120x120.png"
  91.                     }
  92.                 }
  93.             },
  94.             "splashscreen" : {
  95.                 "useOriginalMsgbox" : true
  96.             }
  97.         }
  98.     },
  99.     /* 快应用特有相关 */
  100.     "quickapp" : {},
  101.     /* 小程序特有相关 */
  102.     "mp-weixin" : {
  103.         "appid" : "",
  104.         "setting" : {
  105.             "urlCheck" : false
  106.         },
  107.         "usingComponents" : true
  108.     },
  109.     "mp-alipay" : {
  110.         "usingComponents" : true,
  111.         "appid" : ""
  112.     },
  113.     "mp-baidu" : {
  114.         "usingComponents" : true
  115.     },
  116.     "mp-toutiao" : {
  117.         "usingComponents" : true
  118.     },
  119.     "uniStatistics" : {
  120.         "enable" : false
  121.     },
  122.     "vueVersion" : "2",
  123.     "h5" : {
  124.         "router" : {
  125.             "mode" : "history",
  126.             "base" : ""
  127.         }
  128.     },
  129.     "channel_list" : [
  130.         {
  131.             "id" : "chuizi",
  132.             "name" : "锤子应用市场"
  133.         },
  134.         {
  135.             "id" : "meizu",
  136.             "name" : "魅族应用市场"
  137.         }
  138.     ]
  139. }
  140. /* ios打包配置 *//* SDK配置 */
复制代码
云打包

发行-原生App-云打包


此中渠道打包,HBuilderx自身支持上图渠道包中未圈中的渠道,想本身添加渠道,需要在源码试图中添加,将下面的渠道代码放到源码视图的代码根目录中,可以看打包-配置-源码视图
  1. "channel_list" : [
  2.         {
  3.             "id" : "chuizi",
  4.             "name" : "锤子应用市场"
  5.         },
  6.         {
  7.             "id" : "meizu",
  8.             "name" : "魅族应用市场"
  9.         }
  10.     ]
复制代码
上架考核

1、上架apk必须为最新版本
2、需要APP电子版权认证证书
3、APP完成备案
4、无三方产物素材
等等,根据上架考核的时候具体的驳回缘故原由举行修改即可。
版本升级检测

参考文章:uniapp实现Android apk自动检测更新逼迫下载安装-CSDN博客

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

知者何南

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表