不知何故,我的思想不起作用,轻度发烧没有帮助。
我有以下代码,batteryLevel在此处显示正确的值-50。
public class AlarmEventService extends Service {
static String batteryLevel;
...
int level = intent.getIntExtra("level", 0);
batteryLevel = String.valueOf(level);
Log.i(APP_TAG, batteryLevel);
}
为什么在我的外部通话中,当我获得AlarmEventService.batteryLevel的值为null时?
public class AlarmEventReceiverWake extends BroadcastReceiver {
...
Log.i(APP_TAG, "Battery Level " + AlarmEventService.batteryLevel);
}
最佳答案
从您提供的代码来看,没有理由不能使它按预期工作。可能的是:
可以在本地声明另一个名为batteryLevel的变量,从而不将值分配给全局版本。
首次通话后,可能会重置BatteryLevel的值。
确保该语句:
batteryLevel = String.valueOf(level);
实际上是之前被调用过的
Log.i(APP_TAG, "Battery Level " + AlarmEventService.batteryLevel);