我在Android设备上安装了版本1的应用'A'。还有另一个应用'B',其中有2个应用'A'的APK。应用程序“B”应自动更新版本2的应用程序“A”。我这样做了:
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("file://" + apkPath), APK_MIMETYPE);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
问题在于它提示用户干预(要求点击'安装'按钮)来更新应用'A'。我要求应用'A'在后台静默更新。
< / p>
条件:
android.uid.system
。是否可以在上述条件下进行静音升级?可以使用Runtime.getRuntime().exec()
API以编程方式从shell命令完成吗?
答案 0 :(得分:0)
我不认为没有用户交互就可以实现它。你可以通过一个shell脚本来实现它,它可以通过包管理器安装应用程序 exmple脚本保存为,并确保通过命令行或shell
完成chmod + x sample.shsample.sh
#!system/bin/sh
pm install -r Myandroid_application_path/my.apk
调用Runtime.getRuntime()。EXEC() 可能它适合你,但它在我的星系笔记中不适合我 我试过这个代码你也可以尝试,如果它工作,请更新
Process proc = null;
try {
Runtime rt = Runtime.getRuntime();
Process proc= rt.exec("/system/bin/pm install -r /mnt/sdcard/chess.apk");
} catch (IOException e) {
// TODO Auto-generated catch block
Log.d("in catch", ""+proc.getErrorStream());
}
我在android中看到了一些脚本运行器Gscript,但我认为它只能在root手机上运行它也无法在我的银河系音符中运行