解決Android7.0 使用Intent安裝apk的問題

    filename:文件名

    File file = new File(filename);
    Uri uri;
    if(Build.VERSION.SDK_INT < 23)
    {
        uri = Uri.fromFile(file);
    }
    else
    {
        //7.0 ,使用FileProvider始終報錯:解析安裝包出錯,所以經過1天多的折騰,以及在某群里問各位大牛,最終以這樣的方式
        //解決。
        
        //嚴格模式,防止Uri.parse 報異常
        StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder();
        StrictMode.setVmPolicy(builder.build());
        uri = Uri.parse("file://" + file.getAbsolutePath());
    }
    L.e(filename, uri);
    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setDataAndType(uri, "application/vnd.android.package-archive");
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(intent);


    親測有效!
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容