gpt4 book ai didi

java - 如何从android中的电池管理器类获取电池温度?

转载 作者:搜寻专家 更新时间:2023-11-01 08:54:51 31 4
gpt4 key购买 nike

这是我的 BattreyInfo.java 文件。我正在尝试提取电池温度并将其显示在我的屏幕上。 Eclipse 表示 BroadcastReciever 无法解析为类型。我不明白。我已经正确导入了包。它也不识别 onRecieve 函数。我是否必须为 BroadcastReciever 创建另一个类或其他类?

package com.example.batterywidget;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.BatteryManager;
import android.widget.TextView;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.IntentFilter;
import android.graphics.Color;
import android.view.View;


public class BatteryInfo extends Activity {

private TextView BatTemp;
BroadcastReceiver mBatInfoReciever = new BroadcastReceiver(){

@Override
public void onRecieve(Context arg0, Intent intent){
int temp = intent.getIntExtra(BatteryManager.EXTRA_TEMPERATURE, 0);
BatTemp.setText(String.valueOf(temp) + "%");

}
};

//called when the activity is first created
@Override
public void onCreate(Bundle binfo){
super.onCreate(binfo);
setContentView(R.layout.batteryinfo);
BatTemp = (TextView) this.findViewById(R.id.battery_temp);


}
@Override
protected void onResume() {
super.onResume();
IntentFilter filter = new IntentFilter();

filter.addAction(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(mBatInfoReceiver, filter);
}
@Override
protected void onPause() {
super.onPause();
unregisterReceiver(mBatInfoReceiver);
}

}

最佳答案

BroadcastReceiver 是一个抽象类。这意味着您不能创建它的实例。您必须创建自己的类并扩展 BroadcastReceiver。

我认为您可以将所有现有代码复制到新类中。

您似乎有 3 个广播员。第一个应该是这样的:

public class BatInfoReceiver extends BroadcastReceiver{
@Override
public void onRecieve(Context arg0, Intent intent){
int temp = intent.getIntExtra(BatteryManager.EXTRA_TEMPERATURE, 0);
BatTemp.setText(String.valueOf(temp) + "%");

}
}

现在可以创建这个类的实例了:

BatInforeceiver mBatInfoReceiver = new BatInfoReceiver();

然后您对其他两个 BroadcastReceivers 执行相同的操作。

关于java - 如何从android中的电池管理器类获取电池温度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19954733/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com