서비스에서 배터리 잔량을 모니터링해야하는 앱을 개발 중입니다. 아무도 나 한테 어떻게하는지 말해 줄 수 없어? 서비스가 아닌 활동에서 배터리 상태를 가져 오는 샘플 코드를 발견했습니다.Android의 서비스에서 배터리 상태 가져 오기
감사합니다. http://developer.android.com/training/monitoring-device-state/battery-monitoring.html
서비스에서 배터리 잔량을 모니터링해야하는 앱을 개발 중입니다. 아무도 나 한테 어떻게하는지 말해 줄 수 없어? 서비스가 아닌 활동에서 배터리 상태를 가져 오는 샘플 코드를 발견했습니다.Android의 서비스에서 배터리 상태 가져 오기
감사합니다. http://developer.android.com/training/monitoring-device-state/battery-monitoring.html
는 브로드 캐스트 리시버를 통해 필요가 무엇인가? 활동과 마찬가지로 배터리 이벤트 수신자를 서비스에 등록 할 수 있어야합니다. 예를 들어 :
private final BroadcastReceiver mBatInfoReceiver = new BroadcastReceiver(){
@Override
public void onReceive(Context arg0, Intent intent) {
int rawLevel = intent.getIntExtra("level", -1);
int scale = intent.getIntExtra("scale", -1);
int status = intent.getIntExtra("status", -1);
// Do something
}
};
public void onCreate() {
registerReceiver(this.mBatInfoReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
}
public void onDestroy() {
unregisterReceiver(this.mBatInfoReceiver);
}
의 차이점은 무엇입니까 : 여기
사용 ACTION_BATTERY_CHANGED. 배터리 값이 변경 될 때마다 호출됩니다. 가 수행하는 방법을 보려면 아래 코드를 참조하십시오 : 당신이 ACTION_BATTERY_CHANGED를 사용해야합니다 생각
public void onCreate()
{
this.registerReceiver(this.mBatInfoReceiver,
new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
}
private BroadcastReceiver mBatInfoReceiver = new BroadcastReceiver(){
@Override
public void onReceive(Context arg0, Intent intent) {
int level = intent.getIntExtra("level", 0);
Log.e("test", String.valueOf(level) + "%");
}
};
public void onDestroy(){
// unregister receiver
this.unregisterReceiver(this.mBatInfoReceiver);
}
합니다. 끈적한 인 텐트이므로 브로드 캐스트 리시버에서 직접 모니터링 할 필요가 없습니다. 액티비티에서 직접 참조를 얻을 수 있습니다.
는, 당신은 단순히 다음 코드에서와 같이 registerReceiver 수신기로 null을 전달 호출하여 브로드 캐스트 리시버-A를 등록 할 필요가 없습니다 끈적 의도이기 때문에, 현재의 배터리 상태 : 안드로이드 문서에서
인 텐트가 반환됩니다.
http://developer.android.com/training/monitoring-device-state/battery-monitoring.html
당신은 방송 수신기를 통해 그것을 확실히 할 수 있습니다 http://developer.android.com/training/monitoring-device-state/battery-monitoring.html – Christopher
마크 받아 들여지는 등의 답변 PLZ – tobias