美文网首页
Android 安装 APK 适配

Android 安装 APK 适配

作者: 好学人 | 来源:发表于2019-07-15 02:20 被阅读0次

获取APK文件的Uri

/**
 * 根据文件路径生成Uri
 */
public Uri getUriFromFile(Context context, File file, String authority) {

    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
        // Android 7.0 以下
        return Uri.fromFile(file);
    } else {
        // Android 7.0 及以上
        return FileProvider.getUriForFile(context, authority, file);
    }
}

安装APK文件

Android 8.0 及以上版本需要在清单文件中配置权限:
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>

/**
 * 调用系统安装器(Intent)安装APK
 * 注:addFlags NOT setFlags
 */
public void installApk(Context context, Uri uri) {
    Intent intent = new Intent();
    String mimeType = "application/vnd.android.package-archive";
    intent.setAction(Intent.ACTION_INSTALL_PACKAGE); // Intent Action
    intent.setDataAndType(uri, mimeType); // 设置文件的Uri和Mime Type
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); // 在新栈启动Activity
    intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); // 允许三方应用读文件
    context.startActivity(intent);
}

相关文章

网友评论

      本文标题:Android 安装 APK 适配

      本文链接:https://www.haomeiwen.com/subject/qwowkctx.html