以下のコードを書きましたが、うまくいきません。誰でも私を助けることができますか?積極的な問い合わせではなく、GPS ステータスの変化を受動的に受信したいだけです。電力を節約することが最も重要です。
メッセージ出力はありません。
package com.sharelbs.lbs.service;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
public class GPStStatusReceiver extends BroadcastReceiver {
public static final String GPS_ENABLED_CHANGE_ACTION = "android.location.GPS_ENABLED_CHANGE";
@Override
public void onReceive(Context context, Intent intent) {
Log.d("---------log--------","GPS Status onReceive");
if(intent.getAction().equals(GPS_ENABLED_CHANGE_ACTION)){
Log.d("---------log--------","GPS Status Changed");
startMyProgram();
}
}
}
ここに私のManifest.xmlがあります:
<uses-permission android:name="android.permission.ACCESS_COARSE_UPDATES" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<receiver android:name=".service.GPStStatusReceiver">
<intent-filter>
<action android:name="android.location.GPS_ENABLED_CHANGE" />
</intent-filter>
</receiver>