首页 > 解决方案 > API 级别 26 及以上:如何检测是否安装了应用程序?

问题描述

我们有 Android 应用程序,它可以检测设备上是否安装/卸载了应用程序。在清单文件的帮助下,如下所示:

        <action android:name="android.intent.action.PACKAGE_INSTALL"/>
        <action android:name="android.intent.action.PACKAGE_ADDED"/>  
        <action android:name="android.intent.action.PACKAGE_REMOVED"/>

android 应用程序从内部系统接收广播并将其发送到我们的服务器。

但是在 API 26 之后,android 操作系统没有为 Package_Installed 广播。

任何人都知道如何在 API 杠杆 26 之后检测应用程序安装。

标签: androidinstallationandroid-8.0-oreo

解决方案


面向 Android 8.0 或更高版本的应用无法再在其清单中为隐式广播注册广播接收器。如果应用程序使用 Context.registerReceiver() 注册其 BroadcastReceiver 并且该上下文仍然有效,它们仍将接收广播。

https://developer.android.com/about/versions/oreo/background#broadcasts


推荐阅读