目录

    • 更换新的编译方式
    • 修改生成的aab文件名称
    • 验证
    • 实际效果

App Bundle

Android App 越来越大,但是Google Play store的上传大小又有限制。介绍一种Google 推荐的实现方式。

更换新的编译方式

./gradlew clean assembleRelease xxxx

更改为:

./gradlew clean bundleRelease xxxx

修改生成的aab文件名称

tasks.whenTaskAdded { task ->    if (task.name.startsWith("bundleRelease")) {        def renameTaskName = "rename${task.name.capitalize()}Aab"        def flavor = task.name.substring("bundle".length()).uncapitalize()        tasks.create(renameTaskName, Copy) {            def path = "${buildDir}/outputs/bundle/${flavor}/"            from(path)            include "app.aab"            destinationDir file("${buildDir}/outputs/renamedBundle/")            rename "app.aab", "${appName}_${buildNumber}_${flavor}_${releaseTime()}.aab"        }        task.finalizedBy(renameTaskName)    }}

验证

通过bundletool 将aab文件转换成apks文件

java -jar ~/bin/bundletool-all-0.10.3.jar build-apks \--bundle=app/build/outputs/bundle/release/app.aab \--output=./bb.apks \--ks=./xxx.keystore \--ks-pass=pass:password \--ks-key-alias=key-alias \--key-pass=pass:password

安装到设备上

java -jar ~/bin/bundletool-all-0.10.3.jar  install-apks --apks=/MyApp/my_app.apks

bundletool 使用参考

实际效果

1 大小可以减少大约70% 左右(google play下载的apk大小从~70mb 降低到21mb )
2 Google play store warning 没有了。

更多相关文章

  1. Android(安卓)AsyncTask 的实现及 cancel 方式
  2. [Android算法] bitmap 将图片压缩到指定的大小
  3. Android-NDK开发之基础--Android(安卓)JNI有关Java类命名方式
  4. android XML积累
  5. Android(安卓)豆瓣电影- RecyclerView
  6. Handler:使用方式
  7. 代码论坛如何通过C的方式在android NDK下面查找本机的mac地址
  8. Android(安卓)Studio 2.3使用CMake方式NDK入门
  9. Custom Layouts on Android

随机推荐

  1. 关于使用Android NDK编译ffmpeg
  2. Android(安卓)Jetpack架构组件(一)带你了解
  3. Android(安卓)写输入编辑框增加@功能,@相
  4. Android(安卓)Handler的机制和原理(二)
  5. android rom移植知识普及
  6. Android中WebView载入本地HTML代码并实现
  7. UI设计稿——iPhone的一稿适配
  8. Android(安卓)流方式发送XML数据
  9. Android(安卓)EditText 设置键盘 搜索,回
  10. Android之Glide(非常好用的图片加载框架)