BroadcastReceiver-监听电量变化的广播
BroadcastReceiver ,也就是广播接收器,可以让我们的 APP监听系统或其他应用的广播。
今天学习了一下如何使用BroadcastReceiver 监听系统的电量变化。
单纯只是实现这个功能还是很简单的,看一下代码
我们需要创建一个广播接收者,继承自 BroadcastReceiver
在其中的onReceive方法中,可以设置监听成功后执行的操作
同时我们需要注册广播
而监听电量变化用的是
ACTION_BATTERY_CHANGED这里
详情可以看下面的注释
package com.example.broadcastapplication; import androidx.appcompat.app.AppCompatActivity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.Bundle; import android.util.Log; public class MainActivity extends AppCompatActivity { private static final String TAG = "MainActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //收听电量变化 IntentFilter intentFilter = new IntentFilter(); intentFilter.addAction(Intent.ACTION_BATTERY_CHANGED); // BatteryLevelReceiver batteryLevelReceiver = new BatteryLevelReceiver(); //注册广播 this.registerReceiver(batteryLevelReceiver,intentFilter); } //首先创建一个广播接收者,继承自 BroadcastReceiver private class BatteryLevelReceiver extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); Log.d(TAG,"收到了电量变化的广播 action is =="+ action); } } }
同时,我们不要忘记在Manifest中加入这样一句,这样我们才能监听电量
<uses-permission android:name="android.permission.BATTERY_STATS" tools:ignore="ProtectedPermissions" />
看一下效果,可以看到,在拉动电量条时,控制台输出的文字:“收到了电量变化的广播”
作者:冰稀饭Aurora
出处:https://www.cnblogs.com/rsy-bxf150/p/17205075.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
分类:
Android学习
, 我的学习笔记-日常学习总结
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端