在Android Oreo的应用升级中(API版本26)

时间:2017-11-21 00:23:15

标签: android android-8.0-oreo

我的应用程序在Play商店之外发布,当有新版本可用时,它会在应用程序中升级。我使用以下代码开始安装(使用DownloadManager下载文件后)

String destination = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS) + "/app.apk";

对于Android N(24):

Uri contentUri = FileProvider.getUriForFile(ctxt, BuildConfig.APPLICATION_ID + ".provider", new File(destination));
Intent openFileIntent = new Intent(Intent.ACTION_VIEW);                        
openFileIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);                    
openFileIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
openFileIntent.setData(contentUri);
startActivity(openFileIntent);

对于Android 23及以下版本:

final Uri uri = Uri.parse("file://" + destination);
Intent install = new Intent(Intent.ACTION_VIEW);
install.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
install.setDataAndType(uri,"application/vnd.android.package-archive");
startActivity(install);

当我对" Android N"使用相同的代码时,它没有在Android Oreo中显示系统安装活动。有谁解决了这个问题?

0 个答案:

没有答案