2014-10-08 5 views
0

저는 BroadcastReceiver를 사용하여 전화가 충전되는 동안 일부 작업을 수행하는 Android 애플리케이션을 개발 중입니다. Android 4.4.4 KitKat을 실행하는 Nexus 5에서 예상대로 작동하지만 내 친구가 Android 2.3.6 Gingerbread를 실행하는 Samsung Galaxy S에서이 앱을 테스트했으며 앱이 정상적으로 작동했지만 BroadcastReceiver가 작동하지 않았습니다.브로드 캐스트 수신기가 Android 진저 브레드에서 작동하지 않습니다.

public class PowerConnectionReceiver extends WakefulBroadcastReceiver { 

    @Override 
    public void onReceive(Context context, Intent intent) { 

     Intent serviceIntent = new Intent(context, MyService.class); 
     startWakefulService(context, serviceIntent); 
    } 
} 

을 그리고 내가 AndroidManifest를 내 브로드 캐스트 리시버를 선언 :

<receiver 
     android:name=".activities.PowerConnectionReceiver" 
     android:enabled="true"> 
     <intent-filter> 
      <action android:name="android.intent.action.ACTION_POWER_CONNECTED" /> 
     </intent-filter> 
</receiver> 

어떤 아이디어를 다음과 같이

내 코드는?

미리 감사드립니다. http://developer.android.com/training/monitoring-device-state/battery-monitoring.html

+0

는 내가 삼성 휴대폰에 유사한 문제를 읽고 기억 생각, 빠른 구글이 가진 가치와 아무것도 – apmartin1991

+0

유무을 뜨면 볼 수 있습니다 : –

답변

0

는 다음 링크를 보여 당신이 정기적으로 방송 수신기 시도 되세요 당신은 안드로이드 개발자에 표시된대로 일반 방송 수신기를 사용하여 고려 : http://developer.android.com/training/monitoring-device-state/battery-monitoring.html
+0

내 BroadcastReceiver 등록하면 그게 내 마지막 옵션이 될 것입니다 물론, 저는 항상 서비스를 계속 실행해야합니다. 물론, 제가 원하는 것은 아닙니다. 그러나이 접근법을 구현하는 방법에 대한 샘플 코드를 제공하면 정말 감사하겠습니다. 감사! – fergaral

관련 문제