Android实现后台长期监听时间变化

Android实现后台长期监听时间变化
1.⾸先我们的⽬的是长期监听时间变化,其实应⽤程序退出。
通过了解我们知道注册ACTION_TIME_TICK⼴播接收器可以监听系统事件改变,但是
查看SDK发现ACTION_TIME_TICK⼴播事件只能动态注册:
电子管功放电路Broadcast Action: The current time has changed. Sent every minute. You can not receive this through components declared in manifests, only by exlicitly registering for it isterReceiver().
散堆填料所以要想实现长期监听时间变化,就需要借助后台服务的帮助了
2.解决⽅法(3步骤):
(1)在某个时间启动后台服务
ample.broadcastreceiverofdatachange;
import android.os.Bundle;
推进式搅拌桨import android.app.Activity;
t.Intent;
山体滑坡监测public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
羊毛鞋垫setContentView(R.layout.activity_main);
//启动后台服务
Intent service=new Intent(this, TimeService.class);
startService(service);
}
}
(2)在服务组件中动态注册⼴播事件
ample.broadcastreceiverofdatachange;
import android.app.Service;
t.Intent;
t.IntentFilter;
import android.os.IBinder;
import android.util.Log;
public class TimeService extends Service {
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public void onCreate() {
Log.i("liujun", "后台进程被创建。。。");
//服务启动⼴播接收器,使得⼴播接收器可以在程序退出后在后天继续执⾏,接收系统时间变更⼴播事件DataChangeReceiver receiver=new DataChangeReceiver();
registerReceiver(receiver,new IntentFilter(Intent.ACTION_TIME_TICK));
}混合辅助肢体
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
Log.i("liujun", "后台进程。。。");
StartCommand(intent, flags, startId);
}
@Override
public void onDestroy() {
Log.i("liujun", "后台进程被销毁了。。。");
}
}
(3)在⼴播接收器组件中操作
ample.broadcastreceiverofdatachange; t.BroadcastReceiver;
t.Context;
t.Intent;
import android.util.Log;
public class DataChangeReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Log.i("liujun", "时间发⽣变化。。。");
}
}
//⾄此长期实现后台监听时间变化Demo就完成了。。。

本文发布于:2024-09-22 12:34:31,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/277045.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:时间   后台   接收器   服务   变化   事件   注册   监听
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议