2013-08-07 1 views
0

5 분마다 알림을 표시해야하는 응용 프로그램을 만들고 있습니다. 상기시켜주는 대신 5 분마다 경도와 위도를 보여줘야합니다. 두 가지 활동이 있습니다 : 하나는 AlarmManager이고 다른 하나는 AlarmManagerBroadcastReceiver입니다. 어떻게해야합니까?안드로이드의 알람 관리자를 사용하여 5 초마다 위도와 경도를 표시하는 방법은 무엇입니까?

public class AlarmManagerBroadcastReceiver extends BroadcastReceiver 
{ 

    String gps; 

    final public static String ONE_TIME = "onetime"; 
    @Override 
    public void onReceive(Context context, Intent intent) 
    { 

    PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE); 
    PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "YOUR TAG"); 
    wl.acquire(); 

    Bundle extras = intent.getExtras(); 
    StringBuilder msgStr = new StringBuilder(); 

    if(extras != null && extras.getBoolean(ONE_TIME, Boolean.FALSE)){ 
     msgStr.append("Reminder"); 
    } 
    Format formatter = new SimpleDateFormat("hh:mm:ss a"); 
    msgStr.append(formatter.format(new Date())); 

    Toast.makeText(context, "Reminder", Toast.LENGTH_LONG).show(); 

    wl.release();   

} 
public void SetAlarm(Context context) 
{ 
    AlarmManager am=(AlarmManager)context.getSystemService(Context.ALARM_SERVICE); 
    Intent intent = new Intent(context, AlarmManagerBroadcastReceiver.class); 
    intent.putExtra(ONE_TIME, Boolean.FALSE); 
    PendingIntent pi = PendingIntent.getBroadcast(context, 0, intent, 0); 

    am.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), 1000 * 5 , pi); 
} 

public void CancelAlarm(Context context) 
{ 
    Intent intent = new Intent(context, AlarmManagerBroadcastReceiver.class); 
    PendingIntent sender = PendingIntent.getBroadcast(context, 0, intent, 0); 
    AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); 
    alarmManager.cancel(sender); 
} 
public void setOnetime(Context context){ 
    AlarmManager am=(AlarmManager)context.getSystemService(Context.ALARM_SERVICE); 
    Intent intent = new Intent(context, AlarmManagerBroadcastReceiver.class); 
    intent.putExtra(ONE_TIME, Boolean.TRUE); 
    PendingIntent pi = PendingIntent.getBroadcast(context, 0, intent, 0); 
    am.set(AlarmManager 
+0

음에 위치를 얻기 위해, 당신은'떠나 뒤에 AlarmManager'와'LocationManager'를 사용합니다. –

+0

어디서 LocationManager를 사용해야합니까? – user2637529

답변

0

사용이 방법은 각 오초

private final FIVE_SECONDS = 5000; 
public void scheduleSendLocation() { 
    handler.postDelayed(new Runnable() { 
     public void run() { 
      sendLocation();   // this method will contain your almost-finished HTTP calls 
      handler.postDelayed(this, FIVE_SECONDS); 
     } 
    }, FIVE_SECONDS); 
} 
+0

나는 네가 형제를 못 얻었 어 .... – user2637529

+0

상수에 데이터 유형이 없다 ... – Katana24

관련 문제