gpt4 book ai didi

BroadcastReceiver 中的 Android onReceive 不工作

转载 作者:行者123 更新时间:2023-11-30 01:38:04 27 4
gpt4 key购买 nike

我添加了一个接收器来在安装应用程序时进行监听。但它不起作用。这是我在 AndroidManifest.xml 中的代码

 <receiver android:enabled="true" 
android:exported="true"
android:name="com.bsp.iqtest.reiceiver.IQTestReceiver">
<intent-filter>

<action android:name="android.intent.action.PACKAGE_ADDED" />
<action android:name="android.intent.action.PACKAGE_REPLACED" />
<data android:scheme="package"/>
</intent-filter>
</receiver>

这是我在 MainActivity(启动器 Activity )中的代码,函数 onCreate。

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
IQTestReceiver br = new IQTestReceiver();
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(Intent.ACTION_PACKAGE_ADDED);
intentFilter.addAction(Intent.ACTION_PACKAGE_REPLACED);
intentFilter.addDataScheme("package");
registerReceiver(br, intentFilter);
}

这是我在 IQTestReceiver 中的代码(这个类写在其他文件中)

public class IQTestReceiver extends BroadcastReceiver {
public IQTestReceiver() {
}
@Override
public void onReceive(Context context, Intent intent) {
String packageName=intent.getData().getEncodedSchemeSpecificPart();
Log.e("HELLO",packageName);
}
}

我在 onReceive 函数中设置了一个断点,但是当我调试时它没有运行。

感谢您的帮助。

最佳答案

您可以为您的应用接收PACKAGE_ADDEDPACKAGE_REPLACED,如果这是您的应用尝试。

“广播 Action :设备上安装了一个新的应用程序包。数据包含包的名称。请注意,新安装的包不会收到此广播。”

参见 http://developer.android.com/reference/android/content/Intent.html

关于BroadcastReceiver 中的 Android onReceive 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34870399/

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