获取手机充电状态

如果您想在安卓设备上查看手机的充电状态,可以使用 Android 的 BatteryManager API。您可以使用以下代码来获取当前设备的充电状态:

import android.os.PowerManager;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 获取当前设备的电源管理器
        PowerManager powerManager = (PowerManager) getSystemService(Context.POWER_SERVICE);

        // 获取当前设备的充电状态
        boolean isCharging = powerManager.isCharging();

        // 打印充电状态
        if (isCharging) {
            Toast.makeText(this, "Device is charging", Toast.LENGTH_SHORT).show();
        } else {
            Toast.makeText(this, "Device is not charging", Toast.LENGTH_SHORT).show();
        }
    }
}

这个代码将打印当前设备是否正在充电。请注意,您需要在 AndroidManifest.xml 文件中添加以下权限:

<uses-permission android:name="android.permission.WAKE_LOCK" />

这样您的应用才能够获取当前设备的充电状态。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在 Unity 中,可以使用 AndroidJavaObject 和 AndroidJavaClass 类来获取安卓系统的充电事件。下面是一个简单的示例代码: ```csharp using UnityEngine; public class ChargeController : MonoBehaviour { private AndroidJavaObject batteryStatus; private AndroidJavaObject context; private bool isCharging; void Start() { // 获取当前的上下文环境 context = new AndroidJavaClass("com.unity3d.player.UnityPlayer").GetStatic<AndroidJavaObject>("currentActivity"); // 获取电池状态对象 batteryStatus = context.Call<AndroidJavaObject>("registerReceiver", null, new AndroidJavaObject("android.content.IntentFilter", "android.intent.action.BATTERY_CHANGED")); // 判断是否正在充电 int status = batteryStatus.Call<int>("getIntExtra", "status", -1); isCharging = status == 2 || status == 5 || status == 6 || status == 7; } void Update() { // 检测充电状态是否改变 int status = batteryStatus.Call<int>("getIntExtra", "status", -1); bool chargingNow = status == 2 || status == 5 || status == 6 || status == 7; if (chargingNow != isCharging) { if (chargingNow) { Debug.Log("手机开始充电"); } else { Debug.Log("手机停止充电"); } isCharging = chargingNow; } } } ``` 在 Start() 方法中,我们首先获取当前的上下文环境,然后使用 AndroidJavaClass 类获取电池状态对象,并判断当前是否正在充电。在 Update() 方法中,我们每帧都检测一次充电状态是否改变,如果改变了就输出相应的日志信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值