2014-07-16 3 views
-1

전원이 켜지거나 재부팅 된 후 전화가 켜질 때 메소드를 호출해야하는 간단한 브로드 캐스트 리시버가 있습니다. 하지만 모든 호출 브로드 캐스트 리시버가 의도를 수신하지 않습니다.

public class MyReceiver extends BroadcastReceiver { 
@Override 
public void onReceive(Context context, Intent intent) { 
    if(intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){ 
     MainActivity.activateMidnightService(true); 
     Log.e("myReceiver", "turned on"); 
    } 
} 
} 

을받지 않고 나는 수신기 태그에서

android:permission="android.permission.ACTION_BOOT_COMPLETED" 

제거하고 응용 프로그램 태그 밖에 선 아래 추가 매니페스트

<receiver 
     android:name="hasebou.karim.simplify.MyReceiver" 
     android:enabled="true" 
     android:exported="true" 
     android:permission="android.permission.ACTION_BOOT_COMPLETED" > 
     <intent-filter> 
      <action android:name="android.intent.action.BOOT_COMPLETED" /> 
     </intent-filter> 
    </receiver> 
+0

[이 답변을보십시오 (http://stackoverflow.com/a/5439320/905349). – curtisLoew

+0

''이 있습니까? 그렇다면 재부팅하기 전에 해당 활동을 실행 해 보셨습니까? Rajen의 대답은 적어도 문제의 일부이지만,'BroadcastReceiver'가 작동하기 전에 액티비티를 시작하는 등 앱의 일부 구성 요소를 수동으로 실행해야합니다. – CommonsWare

+0

재부팅하기 전에 실행되는 활동이 있습니다 – user3789434

답변

3

에 등록.

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 
+0

@RR 좋은 캐치 ... mee에서 + 1 위로 ... –

관련 문제