gpt4 book ai didi

android - PACKAGE_ADDED BroadcastReceiver 不起作用

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:16:34 29 4
gpt4 key购买 nike

我在 list 中注册了一个广播接收器:

<application ...>
<receiver android:name="com.some.pkg.NewAppReceiver" >
<intent-filter>
<action android:name="android.intent.action.PACKAGE_ADDED" />
</intent-filter>
</receiver>
</appcication>

接收者:

public class NewAppReceiver extends BroadcastReceiver {

private static final String TAG = "NewAppReceiver";

@Override
public void onReceive(Context context, Intent intent) {
Log.d(TAG, "Intent: " + intent.getAction());
}
}

当我安装 APK 时什么也没有收到手动或从 Android Market .为什么?

最佳答案

您是否在安装其他应用程序之前运行了包含此 broadcastReceiver 的应用程序?

从某些 API 版本开始,broadcastReceivers 在您执行应用程序之前将无法工作。放置一个 Activity 并执行它。

此外,不要忘记将以下内容添加到 broadcastReceiver 中:

<data android:scheme="package" />

编辑:在 Android 8 及更高版本上,如果您的应用以 API 27 或更高版本为目标,它将部分运行,因此您必须在代码中而不是在 list 中注册这些事件。以下是 list 中仍然可以安全使用的 Intent 列表:https://developer.android.com/guide/components/broadcast-exceptions.html .

其余的应该在代码中使用。更多信息 here

关于android - PACKAGE_ADDED BroadcastReceiver 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10888768/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com