Android 如何在没有SD卡的情况下安装存储在内存中的APK
我一直试图找出如何从内存安装存储的APK,但我不断地出错 我尝试了Android 如何在没有SD卡的情况下安装存储在内存中的APK,android,android-install-apk,Android,Android Install Apk,我一直试图找出如何从内存安装存储的APK,但我不断地出错 我尝试了getFilesDir(),但它返回了 08-14 03:18:09.127 10089-10089/? W/zipro: Error opening archive /data/user/0/package_name/files/app-release.apk: I/O Error 08-14 03:18:09.127 10089-10089/? D/asset: failed to open Zip archive '/da
getFilesDir()
,但它返回了
08-14 03:18:09.127 10089-10089/? W/zipro: Error opening archive /data/user/0/package_name/files/app-release.apk: I/O Error
08-14 03:18:09.127 10089-10089/? D/asset: failed to open Zip archive '/data/user/0/package_name/files/app-release.apk'
08-14 03:18:09.127 10089-10089/? W/PackageInstaller: Parse error when parsing manifest. Discontinuing installation
我还尝试了Environment.getDownloadCacheDirectory()
,但得到了类似的结果
我正在尝试在非根设备上安装,但我具有签名级别的应用程序权限
如何在非根设备上安装应用程序?
甚至
不起作用。分析错误
更新
我用过之后就可以用了
file.setReadable(true, false)
获取世界可读权限,但我想知道是否有更好的方法?如果您试图从环境中检索文件,则需要存储权限 或者,如果您试图从私有存储中获取文件,则不需要权限,但必须使用
如果不是这样,尝试先手动安装APK,看看APK是否一切正常 我有所有的权限。。。读、写等。我认为这只是linux权限。您是否尝试手动安装APK?你试过阿普卡了吗?intent.setFlags(intent.FLAG\u GRANT\u READ\u URI\u PERMISSION);
file.setReadable(true, false)