【问题标题】:android Detect when an application is installing, pause installation and prompt an alert boxandroid 检测应用程序何时安装,暂停安装并提示警告框
【发布时间】:2012-11-19 19:02:50
【问题描述】:

是否可以在安装应用程序时运行广播接收器来检测、暂停安装并发出警报

onRecive

public class Receiver extends BroadcastReciver{
public void onReceive(Context context, Intent intent ){

    if(intent.getAction().equals("android.intent.action.PACKAGE_INSTALL")){

    //i want to pause the installing activity and prompt an alert box
}
    }
}

目的是,当要安装应用程序时,它会询问您是否真的要安装此应用程序。

在做了很多研发之后,我真的很想解决这个问题,如果你能帮我解决这个问题,非常感谢。

根据this research 论文,这是可能的。看第2页图1。

【问题讨论】:

  • 是的,但 id 仍然没有谈论如何捕获安装新应用程序的尝试以及如何暂停它!
  • 是的,我也想做你想做的事情,但我能找到的只是,“不可能:(”

标签: android


【解决方案1】:

你不能暂停它。没有用于此的 API。这是一个系统级功能,不应由 3rd 方应用程序处理。

这是一项安全措施。如果每个应用程序都可以控制所有其他应用程序的安装,请想象一下!这将是一个重大的安全失误!因此它不可用。

但是,您可以检测软件包的安装。看到这个帖子:

Receiving package install and uninstall events

【讨论】:

  • I/ActivityManager(243):开始:Intent { act=android.intent.action.VIEW dat=file:///mnt/sdcard/download/DoneDone.apk typ=application/vnd. android.package-archive flg=0x10000001 cmp=com.android.packageinstaller/.PackageInstallerActivity } from pid 5371 “我至少可以捕获我从 logcat 获得的这个事件???它发生在我尝试安装应用程序时”
  • 是的,就像我的问题一样...但是即使您可以检测到添加的应用程序,也不会检测到应用程序安装。这也是我面临的问题......
  • 您无法捕获“用户尝试安装”。您只能捕获安装已完成。清除吗?
猜你喜欢
  • 2012-07-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-16
相关资源
最近更新 更多