00后霸道总裁
00后霸道总裁
  • 发布:2022-12-28 11:09
  • 更新:2023-01-06 19:53
  • 阅读:556

【报Bug】安卓static目录文件安心打包后缺失

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 最新

HBuilderX类型: 正式

HBuilderX版本号: 3.6.14

手机系统: Android

手机系统版本号: Android 12

手机厂商: 小米

手机机型: 所有

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
        var path = plus.io.convertLocalFileSystemURL('/static/game_v1.apk')  
        plus.runtime.install(path ,{force:true},(widgetInfo)=>{  
          this.showLog('Game 安装成功'+ JSON.stringify(widgetInfo))  
        },(error)=>{  
          this.showLog('Game 安装失败'+ JSON.stringify(error))  
        });
        var path = plus.io.convertLocalFileSystemURL('/static/game_v2.apk')  
        plus.runtime.install(path ,{force:true},(widgetInfo)=>{  
          this.showLog('Game 安装成功'+ JSON.stringify(widgetInfo))  
        },(error)=>{  
          this.showLog('Game 安装失败'+ JSON.stringify(error))  
        });

操作步骤:

如上

预期结果:

大文件apk可以正常安装

实际结果:

找不到大文件 apk

bug描述:

static目录放了22m的apk,安心打包后,程序可以正常找到这个apk文件,并install这个apk

static目录放了1.5G的apk,安心打包后,程序无法找到这个apk,导致安装这个apk失败

已配置了:
"runmode" : "liberate",

2022-12-28 11:09 负责人:DCloud_Android_YJC 分享
已邀请:

最佳回复

DCloud_Android_YJC

DCloud_Android_YJC

liberate模式下,如果static目录下存在大文件导致app运行时出现文件不存在、文件异常等问题,可先尝试如下方法:manifest.json->App常用其他设置->支持CPU类型 勾选arm64-v8a

DCloud_UNI_GSQ

DCloud_UNI_GSQ

manifest.json 发出来看一下

另外解压一下这个apk是否有你这个文件。

另外使用 plus 接口的时候参考一下文档:https://www.html5plus.org/doc/zh_cn/io.html#plus.io.convertLocalFileSystemURL

再试试 plus.io.convertLocalFileSystemURL('_www/static/game_v2.apk')

  • 00后霸道总裁 (作者)

    manifest.json 放在2楼了,apk解压 2个apk文件都包含在里面了

    2022-12-29 16:25

  • 00后霸道总裁 (作者)

    还有选择了安心打包,但每次都会走线上排队:


    [HBuilder] 16:31:18.172 打包成功后会自动返回下载链接。

    [HBuilder] 16:31:18.177 打包过程查询请点菜单发行-查看云打包状态。

    [HBuilder] 16:31:18.178 周五傍晚等高峰期打包排队较长,请耐心等待。

    [HBuilder] 16:31:18.178 如果是为了三方SDK调试,请使用自定义调试基座(菜单运行-手机或模拟器-制作自定义调试基座),不要反复打包。

    [HBuilder] 16:31:18.178 项目 pad-app [UNI34E902C]已成功提交到云端,正在获取打包状态...


    [HBuilder] 16:31:22.987 项目 pad-app [UNI34E902C]的打包状态:

    [HBuilder] 16:31:22.987 时间: 2022-12-29 16:31:18 类型: Android自有证书 队列中

    [HBuilder] 16:31:22.987 [Output]目前云打包排队人数较多,当前打包任务位于队列第 495位,预计 30 分钟内进入打包状态。


    [HBuilder] 16:31:23.283 项目 pad-app [UNI34E902C]的打包状态:

    [HBuilder] 16:31:23.283 时间: 2022-12-29 16:31:18 类型: Android自有证书 队列中

    2022-12-29 16:34

  • DCloud_UNI_GSQ

    回复 00后霸道总裁: 检查一下解压出来的这个不能正常安装的大apk文件是否损坏

    2022-12-29 16:34

  • 00后霸道总裁 (作者)

    回复 DCloud_UNI_GSQ: 解压出来的,可以正常通过adb安装


    /Applications/HBuilderX.app/Contents/HBuilderX/plugins/launcher/tools/adbs/adb install -t game_v2.apk

    Performing Streamed Install

    Success

    2022-12-29 16:49

  • DCloud_UNI_GSQ

    回复 00后霸道总裁: 这个大的apk在安心打包之前,通过默认基座调试的时候可以安装的是吧

    2022-12-29 16:56

  • 00后霸道总裁 (作者)

    回复 DCloud_UNI_GSQ: 默认基座传不过去,通过adb可以传过去,然后可以正常安装;

    默认基座位置是在sd卡里的位置,但是安心打包正式版本是在/data/user/0/com.xxx.xx/files/apps/__UNI_XXXXXX/www/static/*.apk这里

    2022-12-29 17:18

  • 00后霸道总裁 (作者)

    回复 DCloud_UNI_GSQ: plus.io.convertLocalFileSystemURL('_www/static/game_v2.apk') 试了这种也不好使

    2022-12-29 18:19

  • DCloud_UNI_GSQ

    回复 00后霸道总裁: 已经转给其他同事,等待进一步排查

    2022-12-30 11:21

  • 00后霸道总裁 (作者)

    回复 DCloud_UNI_GSQ: 我做了一个demo项目,可以直接运行,安心打包就可以重现bug


    https://cowtransfer.com/s/0f1691d319de46 点击链接查看 [ zip.zip ] ,或访问奶牛快传 cowtransfer.com 输入传输口令 wjf8kv 查看;

    2022-12-30 12:31

  • 00后霸道总裁 (作者)

    回复 DCloud_UNI_GSQ: 如果离线打包,static文件包太大,导致打包失败:


    Execution failed for task ':simpleDemo:compressDebugAssets'.

    > A failure occurred while executing com.android.build.gradle.internal.tasks.CompressAssetsWorkAction

    > Java heap space

    2022-12-30 13:30

  • DCloud_Android_YJC

    回复 00后霸道总裁: 安心打包后的apk中,assets/apps/appid/www/static中有那个需要安装的apk吗

    2022-12-30 13:39

  • 00后霸道总裁 (作者)

    回复 DCloud_Android_YJC: 有

    2022-12-30 13:45

  • DCloud_Android_YJC

    回复 00后霸道总裁: apk是正常的1个多G吗

    2022-12-30 13:47

  • 00后霸道总裁 (作者)

    回复 DCloud_Android_YJC: 你可以看这个demo,就是static里面放了一个1.5G的apk,其他的都没了


    我做了一个demo项目,可以直接运行,安心打包就可以重现bug


    https://cowtransfer.com/s/0f1691d319de46 点击链接查看 [ zip.zip ] ,或访问奶牛快传 cowtransfer.com 输入传输口令 wjf8kv 查看;

    2022-12-30 14:06

  • DCloud_Android_YJC

    回复 00后霸道总裁: 我跑一下你这个demo看看,yinjiacheng@dcloud.io把我加一下协作者

    2022-12-30 14:21

  • 00后霸道总裁 (作者)

    回复 DCloud_Android_YJC: 已邀请,包名、别名:com.bna.bigapkdemo,密钥:Jj123456,keystore:项目中bigapkedemo.keystore

    2022-12-30 14:35

  • 00后霸道总裁 (作者)

    回复 DCloud_Android_YJC: 你好,可以正常运行吗?

    2022-12-30 16:57

  • DCloud_Android_YJC

    回复 00后霸道总裁: 已复现,正在排查

    2022-12-30 16:58

  • 00后霸道总裁 (作者)

    回复 DCloud_Android_YJC: 有修复计划吗?

    2023-01-03 12:11

  • DCloud_Android_YJC

    回复 00后霸道总裁: 正在尝试解决

    2023-01-04 11:20

  • 00后霸道总裁 (作者)

    回复 DCloud_Android_YJC: 有进度了吗?

    2023-01-06 12:40

  • DCloud_Android_YJC

    回复 00后霸道总裁: 试一下manifest.json->App常用其他设置->支持CPU类型 勾选arm64-v8a

    2023-01-06 15:36

  • DCloud_Android_YJC

    回复 00后霸道总裁: 我这边使用你提供的demo,勾选armeabi-v7a和arm64-v8a或只勾选arm64-v8a是可以安装的,只勾选armabi-v7a就不行

    2023-01-06 15:38

  • DCloud_Android_YJC

    回复 00后霸道总裁: 你可以在你们正式的项目上试一下

    2023-01-06 15:39

  • 00后霸道总裁 (作者)

    回复 DCloud_Android_YJC: 已测试好使!感谢感谢

    2023-01-06 19:03

00后霸道总裁

00后霸道总裁 (作者) - 00后霸道总裁

{  
    "name" : "xxxxxxx",  
    "appid" : "__Uxxx",  
    "description" : "",  
    "versionName" : "1.0.0",  
    "versionCode" : "100",  
    "transformPx" : false,  
    /* 5+App特有相关 */  
    "app-plus" : {  
        "runmode" : "liberate",  
        "usingComponents" : true,  
        "nvueStyleCompiler" : "uni-app",  
        "compilerVersion" : 3,  
        "splashscreen" : {  
            "alwaysShowBeforeRender" : true,  
            "waiting" : true,  
            "autoclose" : true,  
            "delay" : 0  
        },  
        "screenOrientation" : [  
            "landscape-primary", //可选,字符串类型,支持横屏  
            "landscape-secondary" //可选,字符串类型,支持反向横屏  
        ],  
        /* 模块配置 */  
        "modules" : {},  
        /* 应用发布信息 */  
        "distribute" : {  
            /* android打包配置 */  
            "android" : {  
                "permissions" : [  
                    "<uses-feature android:name=\"android.hardware.camera\"/>",  
                    "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",  
                    "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",  
                    "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",  
                    "<uses-permission android:name=\"android.permission.BLUETOOTH\"/>",  
                    "<uses-permission android:name=\"android.permission.CAMERA\"/>",  
                    "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",  
                    "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",  
                    "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",  
                    "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",  
                    "<uses-permission android:name=\"android.permission.INSTALL_PACKAGES\"/>",  
                    "<uses-permission android:name=\"android.permission.INSTALL_SHORTCUT\"/>",  
                    "<uses-permission android:name=\"android.permission.INTERNET\"/>",  
                    "<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",  
                    "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",  
                    "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",  
                    "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",  
                    "<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>",  
                    "<uses-permission android:name=\"android.permission.VIBRATE\"/>",  
                    "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",  
                    "<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"/>",  
                    "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>",  
                    "<uses-permission android:name=\"android.permission.BLUETOOTH\"/>"  
                ],  
                "minSdkVersion" : 21,  
                "packagename" : "coxxxxrain",  
                "keystore" : "wjbxxxre",  
                "password" : "xxx",  
                "aliasname" : "coxxx"  
            },  
            /* ios打包配置 */  
            "ios" : {  
                "dSYMs" : false,  
                "idfa" : true  
            },  
            /* SDK配置 */  
            "sdkConfigs" : {  
                "ad" : {}  
            },  
            "icons" : {  
                "android" : {  
                    "hdpi" : "unpackage/res/icons/72x72.png",  
                    "xhdpi" : "unpackage/res/icons/96x96.png",  
                    "xxhdpi" : "unpackage/res/icons/144x144.png",  
                    "xxxhdpi" : "unpackage/res/icons/192x192.png"  
                },  
                "ios" : {  
                    "appstore" : "unpackage/res/icons/1024x1024.png",  
                    "ipad" : {  
                        "app" : "unpackage/res/icons/76x76.png",  
                        "app@2x" : "unpackage/res/icons/152x152.png",  
                        "notification" : "unpackage/res/icons/20x20.png",  
                        "notification@2x" : "unpackage/res/icons/40x40.png",  
                        "proapp@2x" : "unpackage/res/icons/167x167.png",  
                        "settings" : "unpackage/res/icons/29x29.png",  
                        "settings@2x" : "unpackage/res/icons/58x58.png",  
                        "spotlight" : "unpackage/res/icons/40x40.png",  
                        "spotlight@2x" : "unpackage/res/icons/80x80.png"  
                    },  
                    "iphone" : {  
                        "app@2x" : "unpackage/res/icons/120x120.png",  
                        "app@3x" : "unpackage/res/icons/180x180.png",  
                        "notification@2x" : "unpackage/res/icons/40x40.png",  
                        "notification@3x" : "unpackage/res/icons/60x60.png",  
                        "settings@2x" : "unpackage/res/icons/58x58.png",  
                        "settings@3x" : "unpackage/res/icons/87x87.png",  
                        "spotlight@2x" : "unpackage/res/icons/80x80.png",  
                        "spotlight@3x" : "unpackage/res/icons/120x120.png"  
                    }  
                }  
            }  
        },  
        "nativePlugins" : {  
            "TRTCCloudUniPlugin-TRTCCloudImpl" : {  
                "__plugin_info__" : {  
                    "name" : "【官方】腾讯云实时音视频SDK",  
                    "description" : "uni-app TRTC SDK 是腾讯云实时音视频通讯解决方案在 uni-app 上的 SDK,提供实时音视频服务",  
                    "platforms" : "Android,iOS",  
                    "url" : "https://ext.dcloud.net.cn/plugin?id=7774",  
                    "android_package_name" : "coxxxxn",  
                    "ios_bundle_id" : "coxxxxrain",  
                    "isCloud" : true,  
                    "bought" : 1,  
                    "pid" : "7774",  
                    "parameters" : {}  
                }  
            }  
        }  
    },  
    /* 快应用特有相关 */  
    "quickapp" : {},  
    /* 小程序特有相关 */  
    "mp-weixin" : {  
        "appid" : "",  
        "setting" : {  
            "urlCheck" : false  
        },  
        "usingComponents" : true  
    },  
    "mp-alipay" : {  
        "usingComponents" : true  
    },  
    "mp-baidu" : {  
        "usingComponents" : true  
    },  
    "mp-toutiao" : {  
        "usingComponents" : true  
    },  
    "uniStatistics" : {  
        "enable" : false  
    },  
    "vueVersion" : "2",  
    "h5" : {  
        "title" : "认xxxx",  
        "router" : {  
            "mode" : "hash",  
            "base" : "/app/"  
        }  
    }  
}  
//可选,字符串类型,支持横屏  
//可选,字符串类型,支持反向横屏  
/* 模块配置 */  

要回复问题请先登录注册