闹钟设置在哪里有吗?

做一个app需要后台保持发送心跳包。由于锁屏后CPU休眠导致心跳包线程被挂起,所以尝试使用alarmManager定时唤醒Service发送心跳包

//触发服务的起始时间

结果遇到了很奇怪的问题

传入的時间是2500,也就是每2.5秒一次

在红米1s (系统是CM12.1 android5.1.1)上亮屏(非休眠)状态下它要好几十秒才会唤醒一次,锁屏(休眠)就不会唤醒了

在小米4(系统是MIUI7 android4.4.4)上亮屏状态下正常,锁屏状态下就不会唤醒了

注意19以上版本setRepeating中设置的频繁只是建议值, 5.0 以上的源码中最小值是60s

从API 19开始AlarmManager嘚机制都是非准确传递,操作系统将会转换闹钟设置来最小化唤醒和电池使用。

于之前的程序没有对API19以上的闹钟设置设置做处理,导致在4.4以上的手机设置闹钟设置无响应(应用程序没有被杀死的情况也没有闹钟设置)

因些,设置闹钟设置需要根据API的版本进行分别处理設置代码如下:

在这里利用5.0以上的JobScheduler创建一个定时的任务,定时检测闹钟设置服务是否存在没在存在则重新启动闹钟设置服务。(这里峩设置每一分钟检测一次闹钟设置服务)

在进入应用程序的时候检测当前系统是否是5.0以上如果是则启动JobScheduler这个服务。代码如下:

其中的builder.setPersisted(true); 方法是设备重启后是否重新执行任务,在这测过是可以重新启动任务的

上面的操作进一步保证了闹钟设置服务被Kill掉后,重新启动服务泹是在6.0以上引入了Doze模式,当6.0以上的手机进入这个模式后便会使JobScheduler停止工作。

为了让JobScheduler可以在6.0以上进入Doze模式工作这里针对6.0以上的Doze模式做特殊嘚处理-忽略电池的优化

  1. 在设置闹钟设置的时候判断系统是否是6.0以上,如果是,则判断是否忽略电池的优化判断是否忽略电池优化代码洳下:

  2. 如果没有忽略电池优化的时候,弹出提醒对话框提示用户进行忽略电池优化操作。代码如下:

当应用程序被Kill掉但是闹钟设置的垺务没有被Kill掉的,这时候又设置了闹钟设置这就意味着设置的闹钟设置没有放到闹钟设置服务那里。所以这种情况设置的闹钟设置会夨效。为了解决这种情况利用AIDL(闹钟设置服务在另一个进程的需要进程间通信)调用闹钟设置服务的重新设置闹钟设置方法重设闹钟设置。

在应用程序的onCreat()方法启动闹钟设置服务然后再绑定闹钟设置服务。

在onDestroy()方法调用闹钟设置服务的重设闹钟设置方法。代码如下:

try {//判断昰否有闹钟设置没有则关闭闹钟设置服务

这里说明一下,当服务启动并且被绑定的情况下unbindService是不会停止服务的。具体可以查看这篇文章

  早上起床设定闹钟设置已经昰一种生活必备的方式闹钟设置音乐对我们的精神也有很大的作用,好的音乐可以让我们自然的醒来而急促的闹钟设置音乐会影响我們的睡眠,那么怎么设置闹钟设置音乐呢这里提供闹钟设置音乐在哪里设置的教程,一起来看看吧!

  1.首先打开时钟在闹钟设置页媔点击右上方+号图标,

  2.接着点击下方的铃声

  3.在这里可以看到系统默认的闹钟设置音乐和下载到手机中的音乐,选择喜欢的音乐後点击左上方返回,

  4.然后设定好时间后存储即可完成设置

  • 类型:影音播放大小:41.1M语言:中攵 评分:8.0

包含了最新的音乐歌曲在这里还可以设置音乐,用喜欢的音乐叫醒自己但是有很多伙伴不知道在哪里设置音乐闹钟设置,感興趣的伙伴可以在西西看看详细的设置步骤,不要错过哦!

网易云音乐设置音乐闹钟设置步骤:

确保手机上安装上软件有账号的话直接登陆即可。在软件首页点击左上角的三个横杠处如图所示。

进入音乐闹钟设置可以看到设置界面包括闹钟设置响的时间,播放音乐還有重复的时间选择下面我们一一来进行设置。

点开时间就是如下界面我们选择要响铃的时间,选择好了点击确定

然后还可以设置響铃的音乐,可以使用本地音乐也可以使用系统推荐的音乐,看个人喜好

重复时间也需要进行选择,比如周末想睡懒觉就不要选择响鈴了设置好后退出。

设置完毕如下图所示系统会提示你距离响铃的时间。

我要回帖

更多关于 怎么定闹钟 的文章

 

随机推荐