私は現在アプリケーションを開発しており、この郵便番号を使用してGPSロックを取得しています。 Androidでユーザーの現在地を取得するための最も簡単で堅牢な方法は何ですか?
それは魅力のように機能します!それは私の要件に非常に適しています。私が今やろうとしているのは、このメソッドを10分ごとにトリガーして、gpsシグナルを取得し、それをtxtファイルに保存することです。私の問題は、AlarmManagerがアクティビティのonCreate()メソッドをAFAIKと呼ぶときに、どのように機能するかを理解できなかったことです。電話がスリープ状態の場合でも、バックグラウンドで10分ごとにAlarmManagerに特定のメソッドを呼び出させるにはどうすればよいですか?
編集2:A--Cによって提供されたコードを使用しましたが、何らかの理由で、アラームがクラスAlarmBroadcastReceiverのメソッドを呼び出していません。これは、MainActivityの私のメソッドです。
Intent intent = new Intent (this, AlarmBroadcastReceiver.class);
PendingIntent pendIntent = PendingIntent.getBroadcast(this, 1, intent, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager = (AlarmManager) getSystemService (Context.ALARM_SERVICE);
alarmManager.cancel(pendIntent); //cancel if active already
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, Calendar.getInstance().getTimeInMillis()+4000,
4000, pendIntent);
およびAlarmBroadcastReceiverクラス。
public class AlarmBroadcastReceiver extends BroadcastReceiver{
public float accuracy;
public double latitude;
public double longitud;
public static boolean Activado=false;
public void onReceive(Context context, Intent intent) {
Log.d("AlarmManager", "Method onReceiveCalled");
}
私が間違っているのは何ですか?