一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - Android - Android 8.0版本更新無(wú)法自動(dòng)安裝問(wèn)題的解決方法

Android 8.0版本更新無(wú)法自動(dòng)安裝問(wèn)題的解決方法

2022-03-02 15:14Ho0229 Android

這篇文章主要為大家詳細(xì)介紹了Android 8.0版本更新無(wú)法自動(dòng)安裝問(wèn)題的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

前言

前幾天APP上線了個(gè)新版本,有部分用戶反應(yīng)在下載完安裝包以后點(diǎn)擊安裝無(wú)反應(yīng)。查了下這部分用戶手機(jī)的系統(tǒng)的版本都是8.0+版本。因?yàn)樘脹](méi)關(guān)注新版本特性,所以導(dǎo)致了這個(gè)問(wèn)題的發(fā)生。

Android 8.0 (Android O)為了針對(duì)一些流氓軟件引導(dǎo)用戶安裝其他無(wú)關(guān)應(yīng)用。在應(yīng)用權(quán)限設(shè)置的“特殊訪問(wèn)權(quán)限”中,加入了“安裝其他應(yīng)用”的設(shè)置。

實(shí)現(xiàn)

1.清單文件權(quán)限聲明

?
1
<uses-permissionandroid:name="android.permission.REQUEST_INSTALL_PACKAGES"/>

2.點(diǎn)擊安裝判斷是否有權(quán)限

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
if (Build.VERSION.SDK_INT >= 26) {
    //來(lái)判斷應(yīng)用是否有權(quán)限安裝apk
    boolean installAllowed= getPackageManager().canRequestPackageInstalls();
    //有權(quán)限
    if (installAllowed) {
      //安裝apk
      install(apkPath);
    } else {
      //無(wú)權(quán)限 申請(qǐng)權(quán)限
      ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.REQUEST_INSTALL_PACKAGES}, INSTALL_APK_REQUESTCODE);
    }
  } else {
    install(apkPath);
}

權(quán)限申請(qǐng)回調(diào)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
  super.onRequestPermissionsResult(requestCode, permissions, grantResults);
  switch (requestCode) {
    case INSTALL_APK_REQUESTCODE:
      //有注冊(cè)權(quán)限且用戶允許安裝
      if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
        install(apkPath);
      } else {
        //將用戶引導(dǎo)至安裝未知應(yīng)用界面。
        Intent intent = new Intent(Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES);
        startActivityForResult(intent, GET_UNKNOWN_APP_SOURCES);
      }
      break;
 
  }
}

安裝APK

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
private void install(String apkPath) {
    //7.0以上通過(guò)FileProvider
    if (Environment.SYSTEM_VERSION_CODE >= 24) {
      Uri uri = FileProvider.getUriForFile(context, Environment.FILE_PROVIDER_AUTHORITY, new File(apkPath));
      Intent intent = new Intent(Intent.ACTION_VIEW).setDataAndType(uri, "application/vnd.android.package-archive");
      intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
      intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
      context.startActivity(intent);
    } else {
      Intent intent = new Intent(Intent.ACTION_VIEW);
      intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
      intent.setDataAndType(Uri.parse("file://" + apkPath), "application/vnd.android.package-archive");
      context.startActivity(intent);
    }
}

更新圖示

Android 8.0版本更新無(wú)法自動(dòng)安裝問(wèn)題的解決方法

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:https://blog.csdn.net/qq_17470165/article/details/80574195

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲国产天堂在线观看 | 国产精品一区牛牛影视 | 91久色 | 明星裸乳照无奶罩 | 女人被爽到呻吟娇喘的视频动态图 | chinese一tk视频丨vk | 2019午夜福合集高清完整版 | 2021最新国产成人精品视频 | 西野翔全部作品在线观看 | 国产99精品免费视频看6 | 给我一个黄色网址 | 国产偷窥女洗浴在线观看亚洲 | 成人精品一级毛片 | 99热国产在线观看 | 高跟翘臀老师后进式视频 | 俄罗斯三级在线观看级 | 亚洲一区二区三区福利在线 | 国产一级免费片 | 调教开发新婚娇妻放荡 | 亚洲无总热门 | 强女明星系列小说 | 日韩欧美中文字幕出 | 亚洲精品午夜级久久久久 | 手机能看的黄色网站 | 国产成人在线视频播放 | 扒开双腿猛进入爽爽视频ai | bl放荡受np双性 | 91真人毛片一级在线播放 | 免费国产午夜高清在线视频 | 国产一级特黄aa大片免费 | 四虎地址8848aa4hc44四虎 四虎成人永久地址 | 男人都懂www深夜免费网站 | 乌克兰肛交影视 | 吃胸膜奶视频456 | 亚洲AV无码专区国产精品麻豆 | 小sao货水好多真紧h的视频 | 久久se精品一区二区国产 | 男人疯狂擦进女人下面 | 国产在线观看精品 | 双夫1v2| 亚洲国产精品ⅴa在线观看 亚洲国产高清一区二区三区 |