我有一项服务,我想更新活动显示屏上的数字。我已经设置了明确的意图,如果它没有运行我用它来启动活动,并且我已经在我的活动中添加了一个广播接收器:
public BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Log.d(LOG_NAME, "Received broadcast");
}
};
但它从未收到任何广播。我怀疑这是因为我的明确意图是MyClass.class(它不是接收器本身)而不是实际的接收器,它是一个成员。 有没有人有关于这是否可能具有明确意图的建议?我可以使用一个隐含的意图,但这似乎有点浪费,因为这只是一个特定的类。
答案 0 :(得分:0)
这种方式不起作用。你应该把你的BroadcastReceiver作为一个单独的类。
答案 1 :(得分:0)
我认为您可以拥有一个单独的BroadcastReceiver,它接收显式广播并更新共享首选项,并且您的活动包含一个onSharedPreferenceChangeListener,它将更新活动。