我有个问题。 我是新来的Android和Java,我正在做一个程序,关闭手机声音和变暗在用户选择的时间显示。 一切都是由获取用户的输入值(小时和分钟)以及基于这些值报警火的意图,这将启动其关闭声音和调暗显示器的服务的广播接收器来完成。 我想重启后重新启动该报警。 我以为我可以简单地设置另一广播接收器接收BOOT_COMPLETED意图,并设置报警时触发的意图使用的广播接收器,其前启动该服务。 我的问题是,我不知道如何把价值观从中获取用户输入到由BOOT_COMPLETED意图开始BoradcastReceiver活动。 还是有另一种方式来设置基础上重新启动后,用户输入同样的报警? 在简单的话,我想自动设置报警与同火时间是由用户设置的报警重启后。 对不起,我的英语不好...
Answer 1:
你的做法是正确的。
您需要添加的唯一的事情是坚持它DB或其他地方。 每当用户设置的东西,与你互动AlarmManager
,就把它也是在一个文件中。
当你BOOT_COMPLETED
,加载数据和设置之前所有报警了。
Answer 2:
在应用程序的清单:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
然后实现一个BroadcastReceiver接收广播:
public class SampleBootReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED")) {
// Set the alarm here.
}
}
}
对于重新启动后,设置报警你可以选择从共享偏好或从DB你的报警值。
文章来源: Setting alarm after phone reboot