2012-05-09 4 views
1

나는 걸쇠에 부딪쳤다. 부팅 후 내 알람을 올바르게 다시 설정할 수 없다.브로드 캐스트 이벤트, 알람 기능 android

public void onReceive(Context context, Intent intent) { 

    if(Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())){ 
     if(fm.getAlarmBool()){ 
      time = fm.getAlarmTimeLong(); 
      reminder.startAlarm(time); 
     } 
    } 

이것은 부팅 한 후 실행하려는 나의 방법입니다. 안드로이드 매니페스트에서 권한을 추가했지만 제대로 작동하지 않습니다. 뭐가 문제 야?

+0

pls는 여분의 코드를 추가합니다 .fm은 ans가 불가능합니다. – Mahesh

+0

리마인더 클래스는 캘린더와 함께 작동하여 고정 시간을 설정합니다. 예를 들어 시간을 15:20으로 설정하면 그 시간에 알람 이벤트가 설정되고 fm은 문자열을 파일에 기록한 다음 파일에서 정보를 가져옵니다. 이 경우 이벤트가 발생할 시간을 기록합니다. 그게 내 opinon 에서이 문제를 해결할 필요가 없습니다. – Anticipating

답변

0

당신은 정말 여기에 귀하의 서비스 매니페스트

<receiver android:process=":remote" android:name="BootReceiver">  
     <intent-filter> 
      <action android:name="android.intent.action.BOOT_COMPLETED" /> 
      <action android:name="android.intent.action.MAIN" /> 
     </intent-filter>  
    </receiver> 

public class BootReceiver extends BroadcastReceiver { 

Context context; 
@Override 
public void onReceive(Context context, Intent intent) {   
    context.startService(new Intent(context, NotificationService.class));  
} 

}

처럼 할 모든 알림을 수집하고 일정을 조정해야한다. 이것에 대한 당신은 영구적 인 저장을 위해 공유 된 pref 나 데이터베이스에 저장할 수 있습니다.

+0

NotifactionService에 어떤 수업을해야합니까? 장치를 부팅 할 때 실행하려는 클래스? IF 문에 오류가 있습니까? 내가 당신의 코드를 보내고 전화를 걸면 즉시 알람이 작동합니다. 나는 이것을 일종의 선언문 안에 넣어야합니까? – Anticipating

관련 문제