我有一个应用程序A,它启动了安装应用程序B的意图(存在于应用程序A的数据文件夹中)。
安装应用程序B后,像ASTRO这样的文件管理器可以备份Application B的apk文件。
所以我想阻止用户手动安装它(比如说如果他点击应用程序B的备份apk文件就不应该安装它。)
有没有办法禁用手动安装......?
答案 0 :(得分:1)
但有两种方法可以监控app.one,你可以使用File Observer
监控应用。每当应用程序被备份时,做一些事情来防止它。另一种方式是
例如:如果它存储在sdcard \ am \就像这样使用。
File f=new File("\mnt\sdcard\am\abc.apk");// file location of your app
{
if(f.exists)
{
f.delete();
}
}
对于文件观察者,请看一眼。它可能对你有所帮助。
http://developer.android.com/reference/android/os/FileObserver.html
答案 1 :(得分:0)
您能找到备份的位置并删除apk。
如果文件管理器可以使用APk,那么它可以打开并安装它,我不知道有什么办法可以阻止它超出你的应用范围。
答案 2 :(得分:0)
这在AOSP Android上无法实现。
“从未知来源安装”选项是Settings.Global
中的设置(以前位于Settings.Secure
中),不能由第三方应用程序控制。
但是,如果您愿意为每个想要使用它的设备修改和编译Android本身,就可以实现这一点,就像AT& T在某些设备上所做的那样。
您可以做的最好的事情就是尝试查找备份文件,如果您有权访问该部分存储空间,则将其删除。
答案 3 :(得分:0)
不确定它是否可行,但我会通过让应用程序A
吐出一个必须在应用程序B
上手动输入的代码(如两步验证)来解决这个问题,并且然后验证服务器端。因此,像你提到的流氓安装会变得毫无用处。也许你可以向用户弹出一个错误,通知他们。