Android 换日广播接收机
我正在尝试使用安卓系统中的广播接收器,在白天变化时执行一些代码 这是我的代码,但无法正常工作Android 换日广播接收机,android,broadcastreceiver,broadcast,receiver,Android,Broadcastreceiver,Broadcast,Receiver,我正在尝试使用安卓系统中的广播接收器,在白天变化时执行一些代码 这是我的代码,但无法正常工作 static { s_intentFilter = new IntentFilter(); s_intentFilter.addAction(Intent.ACTION_TIME_TICK); s_intentFilter.addAction(Intent.ACTION_TIMEZONE_CHANGED); s_intentFilter.addAction(Intent.
static {
s_intentFilter = new IntentFilter();
s_intentFilter.addAction(Intent.ACTION_TIME_TICK);
s_intentFilter.addAction(Intent.ACTION_TIMEZONE_CHANGED);
s_intentFilter.addAction(Intent.ACTION_TIME_CHANGED);
}
private final BroadcastReceiver m_timeChangedReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
final String action = intent.getAction();
if (action.equals(Intent.ACTION_TIME_CHANGED) ||
action.equals(Intent.ACTION_TIMEZONE_CHANGED))
{
System.out.println("Broadcast Activated");
}
}
};
有什么建议吗?您注册了接收者吗?根据文档(),您需要通过调用Context.registerReceiver()注册它,或者通过AndroidManifest.xml中的标记静态发布实现 改用,并在第二天午夜安排广播意图。声明在清单中用作PendingEvent目标的BroadcastReceiver
注意:当设备关闭时,警报会丢失,因此您应该检查重新启动后的日期,并在需要时重新编写警报程序。是的,我忘记了:重写受保护的void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);registerReceiver(m_timeChangedReceiver,s_intentFilter);您是否在清单中注册了意图?还请记住,这些操作仅在用户手动更改时间设置时才会触发。