首页 > 解决方案 > 系统从 Google Play 下载更新或应用程序更新时是否可以获取事件?

问题描述

希望在系统开始下载新更新或 google play 应用程序更新时获取事件。是否可以?

标签: android

解决方案


首先,您需要在您的AndroidManifest.xml

<receiver android:name=".AppUpgradeReceiver">
    <intent-filter>
        <action android:name="android.intent.action.PACKAGE_REPLACED" />
    </intent-filter>
</receiver>

接下来您需要添加一个接收器来处理这些事件:

class AppUpgradeReceiver : BroadcastReceiver() {

    @SuppressLint("UnsafeProtectedBroadcastReceiver")
    override fun onReceive(context: Context?, intent: Intent?) {
        if (context == null) {
            return
        }
        Toast.makeText(context, "Updated to version #${BuildConfig.VERSION_CODE}!", Toast.LENGTH_LONG).show()
    }

}

文档

如果您正在寻找有关如何测试这些事件的信息,或有关如何触发它的更多信息,您可能会发现我的原始帖子很有趣。它涵盖了收听应用程序更新(MY_PACKAGE_REPLACEDvs PACKAGE_REPLACED)的用例,并有一个示例 repo / gist


推荐阅读