0

NETWORKなどのロケーションプロバイダーの有効化/無効化に関するアプリケーションで情報を受け取りたいとGPS思います。私は簡単に作成しますBroadcastReceiver:

public class TestReciver extends BroadcastReceiver {
    public void onReceive(Context context, Intent intent) {

        Log.v("LOCATION_CHANGE_RECEIVER", "PROVIDER UPDATE");
    }
}

そして、それを登録しますAndroidManifest.xml

  <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
      <application
                android:label="@string/app_name"
                android:icon="@drawable/ic_launcher"
                android:allowBackup="true"
                android:debuggable="true">
        <receiver android:name=".receiver.TestReciver">
            <intent-filter>
                <action android:name="android.intent.action.PROVIDER_CHANGED"/>
            </intent-filter>
        </receiver>

しかし、GPS のオン/オフを切り替えようとするとBroadcastReceiver、何も受信しません。

4

1 に答える 1

2

インテント フィルタを次のように変更しますandroid.location.PROVIDERS_CHANGED

<receiver android:name=".receiver.TestReciver"> 
    <intent-filter> 
        <action android:name="android.location.PROVIDERS_CHANGED" /> 
    </intent-filter> 
</receiver>
于 2013-08-03T11:23:07.587 に答える