2012-03-21 2 views

답변

1

다음과 같이 Alarm Manager를 시도했습니다.

AlarmReceiver.class ... 나는 오전 8시를 시작하고 싶어 ...하지만 8 AM..But 모든 토스트 메시지가 표시의 응용 프로그램을 시작하지 않은

public class AlarmReceiver extends BroadcastReceiver { 

@Override 
public void onReceive(Context context, Intent intent) { 
    Toast.makeText(context, "Alarm Receiver", Toast.LENGTH_LONG).show(); 
    AlarmManager alarm=(AlarmManager)context.getSystemService(Context.ALARM_SERVICE); 
    Intent i = new Intent(context, MyService.class); 

    PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, i, 0); 
    Calendar time = Calendar.getInstance(); 
    //time.setTimeInMillis(System.currentTimeMillis()); 
    time.add(Calendar.MINUTE, 8); 
    time.add(Calendar.HOUR, 0); 
    time.add(Calendar.SECOND, 0); 
    Toast.makeText(context, "App will start shortly", Toast.LENGTH_LONG).show(); 
    Toast.makeText(context, time.toString(), Toast.LENGTH_LONG).show(); 
    alarm.set(AlarmManager.RTC_WAKEUP, time.getTimeInMillis(), pendingIntent); 
} 
} 

Manifestfile :

</application> 
<receiver android:name="AlarmReceiver"> 
      <intent-filter> 
       <action android:name="android.intent.action.BOOT_COMPLETED" /> 
      </intent-filter> 
     </receiver> 
</application> 
     <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/> 
     <uses-permission android:name="android.permission.SET_TIME"/> 
1

이 목적으로 AlarmManager 클래스를 사용해야합니다. 반복 할 알람에 활동/서비스를 등록하십시오. 알람을 시작하십시오.

관련 문제