我想检查每分钟制作报警应用程序的时间,但是当我在接收器中时
<action android:name="android.intent.ACTION_TIME_CHANGED"/>
<action android:name="android.intent.ACTION_TIME_TICK"/>
<action android:name="android.intent.action.TIME_TICK"/>
把它放在广播接收器中
@Override
public void onReceive(Context context, Intent intent)
{
Toast.makeText(context,"changed",Toast.LENGTH_LONG)
.show();
}
我的应用程序不工作或做任何我搜索越来越多的东西,但没有什么是有用的,我希望有人帮助我
从你写<action android:name="android.intent.ACTION_TIME_CHANGED"/>
的方式来看,你似乎试图在BroadcastReceiver
注册你的Manifest.xml
。
但是,我会直接从文档中引用它:
ACTION_TIME_TICK
广播行动:当前时间已经改变。每分钟发送一次。您不能通过在清单中声明的组件来接收它,只能通过使用Context.registerReceiver()显式注册它。
--https://developer.android.com/reference/android/content/Intent.html#ACTION_TIME_TICK
您只能通过BroadcastReceiver
方法在registerReceiver()
或Activity
中注册Service
来接收此广播。
但是,我想提一下,如果您打算创建一个Alarm应用程序,则应该避免使用此广播。
每分钟不断取出时间会导致电池耗尽,特别是如果闹钟需要一段时间响铃。
相反,您应该考虑通过JobScheduler
或AlarmManager
等服务安排警报。