在做android app升级更新时遇到几个问题,我用的测试机是华为V10 系统为8.0

一、安装闪退(无反应)

解决办法:

只要在Mainfest.xml 中加入权限编码即可解决

来源参考:https://blog.csdn.net/winnershili/article/details/79559888

二、更新时出现安装包解析异常问题原因:setFlags与addFlags位置顺序不对导致,应该先setFlags再使用addFlags

下面是我能正常运行的代码

private void installAPK() {

File apkFile =

new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), apkName);

Intent intent = new Intent();

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

intent.setAction(Intent.ACTION_VIEW);

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {

Uri apkUri = FileProvider.getUriForFile(mContext, "*****.fileprovider", apkFile);

intent.setDataAndType(apkUri, "application/vnd.android.package-archive");

intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

} else {

intent.setDataAndType(Uri.fromFile(apkFile), "application/vnd.android.package-archive");

}

mContext.startActivity(intent);

}

此次能顺利解决问题,都是参考了网上前辈们的经验,在此感谢!

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐