ユーザーが20MPH以上の速度で運転しているときに、デバイスユーザーがデバイスのどこからでもGPS設定を変更/編集できないようにするAndroidアプリを構築しようとしています。
ユーザーが 20MPH を超えると、ユーザーは通知バーまたは内部設定から GPS 設定を無効にすることができなくなります。
システムのスーパー管理者/管理者権限を使用してこれを適用し、Android アプリで GPS の有効化/無効化イベントを処理するにはどうすればよいですか? 助けてください。
前もって感謝します。
ユーザーが20MPH以上の速度で運転しているときに、デバイスユーザーがデバイスのどこからでもGPS設定を変更/編集できないようにするAndroidアプリを構築しようとしています。
ユーザーが 20MPH を超えると、ユーザーは通知バーまたは内部設定から GPS 設定を無効にすることができなくなります。
システムのスーパー管理者/管理者権限を使用してこれを適用し、Android アプリで GPS の有効化/無効化イベントを処理するにはどうすればよいですか? 助けてください。
前もって感謝します。
これらのアクセス許可をマニフェスト ファイルで使用する
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
または、独自のアプリケーションでのみ使用できる GPS 用のある種のロックを実装する独自の ROM を設計する必要があります。
上記のすべてのサンプルとして、https: //github.com/sms2000/GPSToggler から私の GPSToggler を取得できます。多かれ少なかれ機能し、ニーズに合わせて採用できます。
GPS enable または disable のリスナーを 1 つ登録します。
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
}
public void onProviderEnabled(String provider) {
Toast.makeText(this, "Enabled new provider " + provider,
Toast.LENGTH_LONG).show();
}
public void onProviderDisabled(String provider) {
Toast.makeText(this, "GPS disconnected", Toast.LENGTH_LONG);
Toast.makeText(getApplicationContext(), "Connected",
Toast.LENGTH_LONG);
Toast.makeText(this, "Please Switch on GPS." + provider,
Toast.LENGTH_LONG).show();
}
これを追加して、GPSステータスの変化をリッスンします
locationManager.addGpsStatusListener(gpsStatusListener)
USER によって GPS が無効にされている場合は、コードで有効にします。GPSを有効にするコードは
Settings.Secure.setLocationProviderEnabled(contentResolver, LocationManager.GPS_PROVIDER,true);
これを行うには、適切な権限を使用してください。