EasyClick intent方式安装卸载APP

Posted Mr -老鬼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EasyClick intent方式安装卸载APP相关的知识,希望对你有一定的参考价值。

EasyClick intent方式安装卸载APP

通过跳转系统安装app页面和卸载页面实现

安装APK 指定路径

android 10 有限制, 只测试了7.0版本其他版本运行结果未知,自行测试

//例子
let apkPath = "file:///sdcard/Download/test.apk";
intentInstallAPK(apkPath);
/**
 * 安装APP
 * 作者:laogui,QQ:1156346325
 * @param apkPath apk 路径
 */
function intentInstallAPK(apkPath) {
    try {
        importPackage(android.content);
        importPackage(android.net);
        importPackage(android.os);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
            let builder = new StrictMode.VmPolicy.Builder();
            StrictMode.setVmPolicy(builder.build());
        }
        let uri = Uri.parse(apkPath);
        let intent = new Intent(Intent.ACTION_VIEW);
        intent.setDataAndType(uri, "application/vnd.android.package-archive");
        intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(intent);
        sleep(1000);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
            let builder = new StrictMode.VmPolicy.Builder();
            builder.detectAll();
            StrictMode.setVmPolicy(builder.build());
        }
    } catch (e) {
        loge(e)
    }
}

卸载APP 指定包名

/**
 * 卸载APP
 * 作者:laogui,QQ:1156346325
 * @param pkgName 包名
 */
function intentUnstallAPK(pkgName) {
    try {
        importClass(android.content.Intent);
        importClass(android.net.Uri);
        let uri = Uri.parse("package:" + "luoyang.com.flutter_ly_app");
        let intent = new Intent(Intent.ACTION_DELETE, uri);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(intent);
    } catch (e) {
        loge(e)
    }
}

我是Mr-老鬼、QQ1156346325 。交流QQ群:620028786,647082990
------------------------------------------------版权声明------------------------------------------------------
本文版权所有~Mr-老鬼 ~转载请注明原文地址
免责声明:本文所有的教程仅限交流学习使用不得用于违法用途,造成的法律后果本人不承担责任。

以上是关于EasyClick intent方式安装卸载APP的主要内容,如果未能解决你的问题,请参考以下文章

EasyClick跳转应用详情页

EasyClick更新图库

EasyClick更新图库

EasyClick更新图库

Android采用pm命令静默卸载应用

EasyClick UI界面返回桌面