DCloud_Android_zl
DCloud_Android_zl
  • 发布:2018-10-26 15:39
  • 更新:2023-03-27 19:11
  • 阅读:67169

uni-app离线打包Android平台注意事项

分类:5+ SDK

#该文章已停止维护,相关问题请查看原生文档

uni本地集成大致方法与5+集成无异。集成方式可参考Android离线打包

uni项目打包可参考HBuilderX生成本地打包App资源

uni打包需要注意事项:

资源使用

  • SDK升级时,需同时更新SDK中所有文件,包括SDK目录/SDK/assets/data/下所有文件、/SDK/libs/下对应所需文件,data目录下的.dat文件必须更新
  • 自定义组件模式和uni-app离线打包时必须添加uniapp-release.aar。
  • 2.2.0之后gif图片库最为一个单独的aar引用,你可以选择使用SDK中aar文件或者依赖远程仓库。
  • 2.4.0之后项目集成需要添加miit_mdid_1.0.10.aar文件,以便获取移动智能设备标识公共服务平台提供的匿名设备标识符OAID、开发者匿名设备标识符VAID、及应用匿名设备标识符AAID,可用于解决Android10无法获取设备标识(如IMEI、IMSI、Wi-Fi MAC地址等)的问题

gradle配置

  • 使用uni时必须添加aaptOptions配置

    aptOptions {  
        additionalParameters '--auto-add-overlay'  
        ignoreAssetsPattern "!.svn:!.git:.*:!CVS:!thumbs.db:!picasa.ini:!*.scc:*~"  
    }  
    ``  
    
  • 集成uni-app时必须添加如下依赖

    ependencies {  
    implementation fileTree(include: ['*.jar'], dir: 'libs')  
    implementation fileTree(include: ['*.aar'], dir: 'libs')  
    /*uniapp集成所需库-----------------------开始*/  
    implementation 'com.android.support:recyclerview-v7:26.1.0'  
    implementation 'com.alibaba:fastjson:1.1.46.android'  
    implementation 'com.facebook.fresco:fresco:1.13.0'  
    implementation "com.facebook.fresco:animated-gif:1.13.0"  
    /*uniapp集成所需库-----------------------结束*/  
      
    ``  
    

应用配置

  • uni跟5+的启动方式不同,请确保使用的是自己的appid。
  • 请确保assets--->apps中appid的文件夹名称和dcloud_control.xml的appid对应节点值以及manifest.json中的appid值保持一致,如下图所示:

离线SDK集成uni-app问题汇总

  • 如果出现部分tab上图标不显示问题,请下载最新SDK,更新SDK目录/SDK/assets/data/下所有文件。
  • 如果出现tabbar或者标题栏不显示的问题,检查是否添加gif依赖!2.2.0之后将gif库单独提出来作为一个单独的aar引用。
  • 解决UniPush或个推上传google play违反相关政策的问题,参考链接

离线SDK集成uni-app白屏问题汇总

  • 如果出现白屏问题,请检测appid是否一致。
  • 如果在appid一致的情况下仍旧出现白屏现象,请确保Androidmanifest.xml中manifest节点下的package属性与build.gradle中的applicationId一致!
  • 如果appid一致的情况下依旧白屏,请确保ndk配置为armeabi-v7a或者arm64-v8a或者x86.
7 关注 分享
Trust 负伍 银少 zhangdaren jzq84229 Citizen_C 爱折腾的章鱼猫

要回复文章请先登录注册

x***@outlook.com

x***@outlook.com

回复 Ajax96 :
根据你的项目需求,删除 app-> libs 文件夹下不需要的 依赖包就好了,如果不知道这些依赖的作用,可以参考(Android-SDK@你下载的SDK版本),文件夹下的Feature-Android.xls表格 官方在表格里面有写说明,我刚开始官方测试案例(HBuilder-Hello) 打包出来就有51.1MB,后来根据自己的需求删了大部分的依赖包,现在打包出来的只有19MB,千万要记住有几个是默认依赖不要删除了哦(android-gif-drawable-release@1.2.17.aar、lib.5plus.base-release.aar、miit_mdid_1.0.10.aar、uniapp-release.aar),详细可以查看 https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android 和 https://ask.dcloud.net.cn/article/35139,我也吐一下槽,官方能不能把回复文本框的高度设置大一点啊,内容输多了只能看得到3行,前面的都看不到了,还得让我手动修改样式
2020-05-13 20:29
段大大

段大大

一直优化这优化哪的,最后一个离线打包的功能不如一个小平台的,为什么呢??谁让人家可以购买云打包次数呢?
2020-04-29 15:11
Ajax96

Ajax96

离线打包apk体积好大呀,一个uniapp-release.aar就占了十几m,有什么办法能优化一下离线打包的apk体积吗
2020-04-22 16:18
xxj_e_e

xxj_e_e

一堆bug,加载就转圈圈,平台小就是坑,技术都不过关
2020-04-18 10:00
给瞎子道歉

给瞎子道歉

回复 安异 :
你好 ,请问你的问题解决了吗 我也遇到这样的问题
2020-03-23 15:54
wenju

wenju

回复 wenju :
发觉还是这个文章写得好 https://www.jianshu.com/p/e152c1ae0f4a
2020-03-13 10:36
wenju

wenju

最快的方法: 下载SDK, 运行HBuilder-Hello, 把apps项目和appid改成自己的就好了
2020-03-12 15:50
安异

安异

您好,我的版本号是2.5.1。使用uni-app,离线打包成Android应用,按照官方的步骤进行,针对uni-app和5+的差异也做了处理,官当示例也无法打开。将manifest.json中的PandoraEntry变为PandoraEntryActivity后,官网示例可以打开并正常使用。但是修改成自己的项目ID后,在闪屏页无法进入,不知道是什么原因,希望打包成功的朋友们可以给出相关方式和建议。
十分感谢
2020-02-01 10:40
1***@qq.com

1***@qq.com

如果appid一致的情况下依旧白屏,请确保ndk配置为armeabi-v7a或者arm64或者x86.
检查一下打包脚本中abifiters的配置,还有编译成app资源时日志输出的编译器版本,要与ide一致才好。编译器版本低的要修改packages.json,改里面的dev配置,换成latest
2019-12-02 11:56
liru07441019

liru07441019

回复 7***@qq.com :
升级了还是不行,怎么就解决白屏
2019-11-22 17:36