안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
화면없이 백그라운드에서 폰에 있는 파일을 크라우드 서버에 백업하는 앱을 만들고 있습니다.
폰이 부팅될때 BR을 받아서 12시에 알람을 맞춰서 실행하는 것까지는 되는데요
백업을 하기전에 폰 사용여부와 베터리 상태등을 체크를 합니다.
폰 사용여부는 PowerManager.isScreenOn을 이용해서 확인을 하는데 베터리가 문제입니다.
베터리 상태는 화면상태처럼 메소드 제공이 안되는 것 같더군요. (제가 못 찾은걸지도 ㅠ.ㅠ)
해서 베터리 상태를 BR로 체크를 해야하는데
폰 부팅될때 받은 BR의 context로 베터리 상태를 체크하는 BR을 띄우려니까 안되네요.
질문의 요지는 BR에서 BR을 호출 할수있냐는 겁니다.
context.registerReceiver(..........) 요렇게 말이죠.
위의 context는 폰 부팅때 받은 BR의 context입니다.
지금 현상은 registerReceiver를 호출하는 곳에서 멈춰버립니다.
혹시 해결 방법이 있을까요?
좋은 밤되세요~
===========================================
public class BackupInitReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
context.registerReceiver(new Battery(), new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
}
}
Battery extends BroadcastReceiver{
public void onReceive(Context context, Intent intent) {
..................
}
}