Android ACCESS_LOCATION_EXTRA_COMMANDS permission

2019-02-02 09:37发布

问题:

Android contains a permission called 'ACCESS_LOCATION_EXTRA_COMMANDS'. Normal location commands would involve accessing coarse/fine location. Does anyone know what kind of extra commands this permission allows the app to access ?

Thanks.

回答1:

According to a rough search in Android source code, it indicate that LocationManager.sendExtraCommand() need this permission exactly.

Documentation: sendExtraCommand(java.lang.String, java.lang.String, android.os.Bundle)



回答2:

I only know of 1 command which can be uses when you have a slow GPS fix:

((LocationManager)YourActivity.this.getSystemService("location")).sendExtraCommand("gps", "delete_aiding_data", null);

and in the Manifest:

<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />


回答3:

you can find additional information about 3 commands at google group discussions there were three command under discuss:

locationManager.sendExtraCommand("gps", "delete_aiding_data", null);
Bundle bundle = new Bundle();
locationManager.sendExtraCommand("gps", "force_xtra_injection", bundle);
locationManager.sendExtraCommand("gps", "force_time_injection", bundle);

it would be grate if anyone can say more about each extra