Loading core/res/res/values/config.xml +8 −1 Original line number Diff line number Diff line Loading @@ -636,12 +636,19 @@ of new location providers at run-time. The new package does not have to be explicitly listed here, however it must have a signature that matches the signature of at least one package on this list. Platforms should overlay additional packages in config_overlay_locationProviderPackageNames, instead of overlaying this config, if they only want to append packages and not replace the entire array. --> <string-array name="config_locationProviderPackageNames" translatable="false"> <!-- The standard AOSP fused location provider --> <item>com.android.location.fused</item> </string-array> <!-- Pacakge name(s) supplied by overlay, and appended to config_locationProviderPackageNames. --> <string-array name="config_overlay_locationProviderPackageNames" translatable="false" /> <!-- Boolean indicating if current platform supports bluetooth SCO for off call use cases --> <bool name="config_bluetooth_sco_off_call">true</bool> Loading core/res/res/values/symbols.xml +1 −0 Original line number Diff line number Diff line Loading @@ -1467,6 +1467,7 @@ <java-symbol type="array" name="radioAttributes" /> <java-symbol type="array" name="config_oemUsbModeOverride" /> <java-symbol type="array" name="config_locationProviderPackageNames" /> <java-symbol type="array" name="config_overlay_locationProviderPackageNames" /> <java-symbol type="bool" name="config_animateScreenLights" /> <java-symbol type="bool" name="config_automatic_brightness_available" /> <java-symbol type="bool" name="config_sf_limitedAlpha" /> Loading packages/FusedLocation/AndroidManifest.xml +1 −1 Original line number Diff line number Diff line Loading @@ -39,7 +39,7 @@ <intent-filter> <action android:name="com.android.location.service.FusedLocationProvider" /> </intent-filter> <meta-data android:name="serviceVersion" android:value="1" /> <meta-data android:name="version" android:value="1" /> </service> </application> </manifest> packages/FusedLocation/src/com/android/location/fused/FusionEngine.java +2 −7 Original line number Diff line number Diff line Loading @@ -247,7 +247,7 @@ public class FusionEngine implements LocationListener { mNetworkWeight /= totalWeight; mGpsWeight /= totalWeight; Location fused = new Location(/* LocationManager.FUSED_PROVIDER */ "fused"); Location fused = new Location(LocationManager.FUSED_PROVIDER); // fuse lat/long // assumes the two locations are close enough that earth curvature doesn't matter fused.setLatitude(weigh(mGpsLocation.getLatitude(), mNetworkLocation.getLatitude())); Loading Loading @@ -303,12 +303,7 @@ public class FusionEngine implements LocationListener { } if (mNetworkLocation != null) { // Manually set the extras for the "no gps" location, pointing at the NLP Bundle extras = new Bundle(); extras.putParcelable("noGPSLocation", mNetworkLocation); fused.setExtras(extras); // Done inline above to compile against SDK 17 //fused.setExtraLocation(Location.EXTRA_NO_GPS_LOCATION, mNetworkLocation); fused.setExtraLocation(Location.EXTRA_NO_GPS_LOCATION, mNetworkLocation); } mFusedLocation = fused; Loading services/java/com/android/server/LocationManagerService.java +7 −3 Original line number Diff line number Diff line Loading @@ -275,10 +275,14 @@ public class LocationManagerService extends ILocationManager.Stub implements Run */ Resources resources = mContext.getResources(); ArrayList<String> providerPackageNames = new ArrayList<String>(); String[] pkgs = resources.getStringArray( String[] pkgs1 = resources.getStringArray( com.android.internal.R.array.config_locationProviderPackageNames); if (D) Log.d(TAG, "built-in location providers: " + Arrays.toString(pkgs)); if (pkgs != null) providerPackageNames.addAll(Arrays.asList(pkgs)); String[] pkgs2 = resources.getStringArray( com.android.internal.R.array.config_overlay_locationProviderPackageNames); if (D) Log.d(TAG, "built-in location providers: " + Arrays.toString(pkgs1)); if (D) Log.d(TAG, "overlay location providers: " + Arrays.toString(pkgs2)); if (pkgs1 != null) providerPackageNames.addAll(Arrays.asList(pkgs1)); if (pkgs2 != null) providerPackageNames.addAll(Arrays.asList(pkgs2)); // bind to network provider LocationProviderProxy networkProvider = LocationProviderProxy.createAndBind( Loading Loading
core/res/res/values/config.xml +8 −1 Original line number Diff line number Diff line Loading @@ -636,12 +636,19 @@ of new location providers at run-time. The new package does not have to be explicitly listed here, however it must have a signature that matches the signature of at least one package on this list. Platforms should overlay additional packages in config_overlay_locationProviderPackageNames, instead of overlaying this config, if they only want to append packages and not replace the entire array. --> <string-array name="config_locationProviderPackageNames" translatable="false"> <!-- The standard AOSP fused location provider --> <item>com.android.location.fused</item> </string-array> <!-- Pacakge name(s) supplied by overlay, and appended to config_locationProviderPackageNames. --> <string-array name="config_overlay_locationProviderPackageNames" translatable="false" /> <!-- Boolean indicating if current platform supports bluetooth SCO for off call use cases --> <bool name="config_bluetooth_sco_off_call">true</bool> Loading
core/res/res/values/symbols.xml +1 −0 Original line number Diff line number Diff line Loading @@ -1467,6 +1467,7 @@ <java-symbol type="array" name="radioAttributes" /> <java-symbol type="array" name="config_oemUsbModeOverride" /> <java-symbol type="array" name="config_locationProviderPackageNames" /> <java-symbol type="array" name="config_overlay_locationProviderPackageNames" /> <java-symbol type="bool" name="config_animateScreenLights" /> <java-symbol type="bool" name="config_automatic_brightness_available" /> <java-symbol type="bool" name="config_sf_limitedAlpha" /> Loading
packages/FusedLocation/AndroidManifest.xml +1 −1 Original line number Diff line number Diff line Loading @@ -39,7 +39,7 @@ <intent-filter> <action android:name="com.android.location.service.FusedLocationProvider" /> </intent-filter> <meta-data android:name="serviceVersion" android:value="1" /> <meta-data android:name="version" android:value="1" /> </service> </application> </manifest>
packages/FusedLocation/src/com/android/location/fused/FusionEngine.java +2 −7 Original line number Diff line number Diff line Loading @@ -247,7 +247,7 @@ public class FusionEngine implements LocationListener { mNetworkWeight /= totalWeight; mGpsWeight /= totalWeight; Location fused = new Location(/* LocationManager.FUSED_PROVIDER */ "fused"); Location fused = new Location(LocationManager.FUSED_PROVIDER); // fuse lat/long // assumes the two locations are close enough that earth curvature doesn't matter fused.setLatitude(weigh(mGpsLocation.getLatitude(), mNetworkLocation.getLatitude())); Loading Loading @@ -303,12 +303,7 @@ public class FusionEngine implements LocationListener { } if (mNetworkLocation != null) { // Manually set the extras for the "no gps" location, pointing at the NLP Bundle extras = new Bundle(); extras.putParcelable("noGPSLocation", mNetworkLocation); fused.setExtras(extras); // Done inline above to compile against SDK 17 //fused.setExtraLocation(Location.EXTRA_NO_GPS_LOCATION, mNetworkLocation); fused.setExtraLocation(Location.EXTRA_NO_GPS_LOCATION, mNetworkLocation); } mFusedLocation = fused; Loading
services/java/com/android/server/LocationManagerService.java +7 −3 Original line number Diff line number Diff line Loading @@ -275,10 +275,14 @@ public class LocationManagerService extends ILocationManager.Stub implements Run */ Resources resources = mContext.getResources(); ArrayList<String> providerPackageNames = new ArrayList<String>(); String[] pkgs = resources.getStringArray( String[] pkgs1 = resources.getStringArray( com.android.internal.R.array.config_locationProviderPackageNames); if (D) Log.d(TAG, "built-in location providers: " + Arrays.toString(pkgs)); if (pkgs != null) providerPackageNames.addAll(Arrays.asList(pkgs)); String[] pkgs2 = resources.getStringArray( com.android.internal.R.array.config_overlay_locationProviderPackageNames); if (D) Log.d(TAG, "built-in location providers: " + Arrays.toString(pkgs1)); if (D) Log.d(TAG, "overlay location providers: " + Arrays.toString(pkgs2)); if (pkgs1 != null) providerPackageNames.addAll(Arrays.asList(pkgs1)); if (pkgs2 != null) providerPackageNames.addAll(Arrays.asList(pkgs2)); // bind to network provider LocationProviderProxy networkProvider = LocationProviderProxy.createAndBind( Loading