Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HTC Hero/Android 2.1上没有电池温度更新_Android_Htc Hero - Fatal编程技术网

HTC Hero/Android 2.1上没有电池温度更新

HTC Hero/Android 2.1上没有电池温度更新,android,htc-hero,Android,Htc Hero,我正在用旧的安卓手机编写一个安卓应用程序,专门用于温度监测。现在我遇到了一个运行安卓2.1 update-1的HTC英雄的问题。它不接收电池温度传感器的更新。它只得到一个初始值。但是,它会接收外部电源插入状态的更新。如果外部电源发生变化,则接收到新的温度 这种行为是由硬件设置的,还是我能做些什么 我正在使用广播接收器: IntentFilter filter = new IntentFilter(); filter.addAction(Intent.ACTION_BATTERY_CHANGED)

我正在用旧的安卓手机编写一个安卓应用程序,专门用于温度监测。现在我遇到了一个运行安卓2.1 update-1的HTC英雄的问题。它不接收电池温度传感器的更新。它只得到一个初始值。但是,它会接收外部电源插入状态的更新。如果外部电源发生变化,则接收到新的温度

这种行为是由硬件设置的,还是我能做些什么

我正在使用广播接收器:

IntentFilter filter = new IntentFilter();
filter.addAction(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(batteryReceiver, filter);

BroadcastReceiver batteryReceiver = new BroadcastReceiver() {

    @Override
    public void onReceive(Context context, Intent intent) {
        Log.d(LOG_TAG, "onReceive, action = " + intent.getAction());

        float temperature = intent.getIntExtra(BatteryManager.EXTRA_TEMPERATURE, 999) / 10f;
        boolean externalPower = (intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, 0) != 0);

        // ...
    }

};
这在Galaxy S4/Android 4.3上运行良好

正如我所说,如果外部电源被更换,充电器被插入或拔出,接收器总是被调用,并接收到一个新的温度

重新设定接收器的频率没有帮助

我已经尝试过在间隔时间内手动获得这样的意图,但是温度是恒定的,即使它确实发生了变化

handleBatteryIntent(registerReceiver(null, filter));
似乎只有当外部电源状态EXTRA_Pluged发生变化时,温度才会更新


我试过另外两个电池应用程序,它们也有同样的问题。

查看了它的硬件特定功能。你确定你的HTC Hero有所需的传感器吗?当外部电源改变时,我会得到正确的温度值。但是,我已经做了更多的测试,并对SensorManager.getDefaultSensorSensor.TYPE\u温度;返回null。所以我不确定。