リッスンするサービスがACTION_BATTERY_CHANGED
あり、この受信データを (アクティビティに) 渡すか、(後でアクティビティで使用するために) 保存できるようにしたいと考えています。Shared Preferences を試しましたが、役に立ちませんでした。
受信したデータを保存または渡すことができるかもしれません。
編集済み
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
appPrefs = new AppPreferences(getApplicationContext());
// /* Broadcast Receiver for battery stats */
IntentFilter batteryLevelFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
BroadcastReceiver batteryLevelReceiver = new BroadcastReceiver(){
@Override
public void onReceive(Context context, Intent intent){
int level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
int scale = intent.getIntExtra(BatteryManager.EXTRA_SCALE, -1);
int isCharging = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
if (isCharging==0){
}
else{
appPrefs.setIsCharging(isCharging);
Log.e("inFFFF","FFFF "+appPrefs.getIsCharging()); // here I get my default value, not isCharging value
}
}
};
registerReceiver(batteryLevelReceiver, batteryLevelFilter);
return Service.START_STICKY;
}
AppPrefs ファイル内:
public void setIsCharging(int text){
prefsEditor.putInt("isCharging", text);
}
public int getIsCharging(){
return appSharedPrefs.getInt("isCharging", 9);
}