问题:想把下载的hap、apk文件自动安装到鸿蒙HarmonyOS系统中,这样的方式能实现吗?可否给个命令方式和调用IBundleInstaller都行。
回答: 代码安装可参看下面的代码,注意要使用此方法,得需要向系统请求ohos.permission.INSTALL_BUNDLE权限,该权限为签名级别: private void installHap() { IBundleManager mIBundleManager = getContext().getBundleManager(); new Thread(new Runnable() { @Override public void run() { try { mIBundleManager.getBundleInstaller().install(Arrays.asList("com.XXX"), new InstallParam(), new InstallerCallback() { @Override public void onFinished(int i, String s) { } }); } catch (RemoteException e) { e.printStackTrace(); } } }).start(); }
说明: 也可尝试以下代码: //Context ctx; IBundleManager pm = ctx.getBundleManager(); pm.getBundleInstaller().install(Arrays.asList("com.aaa"), new InstallParam(), new InstallerCallback() { @Override public void onFinished(int i, String s) { } }); pm.getBundleInstaller().uninstall("com.aaa", new InstallParam(), new InstallerCallback() { @Override public void onFinished(int i, String s) { } }); |