【发布时间】:2012-07-26 18:18:40
【问题描述】:
我有一个在清单上注册的BroadcastReceiver,它最初被禁用android:enabled="false"。
清单:
<receiver
android:name="com.sample.name.MainWidgetBroadcastReceiver"
android:enabled="false"
android:exported="false" >
<intent-filter>
<action android:name="com.sample.name.intent.action.METADATA_UPDATE" />
</intent-filter>
</receiver>
我收到com.sample.name.intent.action.METADATA_UPDATE 的意图是粘性的。启用接收器时如何获取此粘性数据?如果解决方案触发了 BroadcastReceiver 或者我必须自己拉它,那会很好。我宁愿不必为了获取这些数据而注册广播...
PackageManager pm = context.getPackageManager();
pm.setComponentEnabledSetting(
new ComponentName(context, MainWidgetBroadcastReceiver.class),
PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
PackageManager.DONT_KILL_APP);
【问题讨论】:
-
我在问题底部发布了有关如何启用广播的代码。