summaryrefslogtreecommitdiff
path: root/location/java
diff options
context:
space:
mode:
Diffstat (limited to 'location/java')
-rw-r--r--location/java/android/location/ILocationManager.aidl3
-rw-r--r--location/java/android/location/LocationManager.java16
-rw-r--r--location/java/com/android/internal/location/ILocationProviderManager.aidl2
3 files changed, 20 insertions, 1 deletions
diff --git a/location/java/android/location/ILocationManager.aidl b/location/java/android/location/ILocationManager.aidl
index e795b8119760..e91012fe0afe 100644
--- a/location/java/android/location/ILocationManager.aidl
+++ b/location/java/android/location/ILocationManager.aidl
@@ -85,12 +85,13 @@ interface ILocationManager
boolean stopGnssBatch();
boolean injectLocation(in Location location);
- // --- deprecated ---
List<String> getAllProviders();
List<String> getProviders(in Criteria criteria, boolean enabledOnly);
String getBestProvider(in Criteria criteria, boolean enabledOnly);
ProviderProperties getProviderProperties(String provider);
String getNetworkProviderPackage();
+ boolean isProviderPackage(String packageName);
+
void setLocationControllerExtraPackage(String packageName);
String getLocationControllerExtraPackage();
void setLocationControllerExtraPackageEnabled(boolean enabled);
diff --git a/location/java/android/location/LocationManager.java b/location/java/android/location/LocationManager.java
index 63b57d166f1f..5aba22f4c6b1 100644
--- a/location/java/android/location/LocationManager.java
+++ b/location/java/android/location/LocationManager.java
@@ -2425,6 +2425,22 @@ public class LocationManager {
}
/**
+ * Returns true if the given package name matches a location provider package, and false
+ * otherwise.
+ *
+ * @hide
+ */
+ @SystemApi
+ public boolean isProviderPackage(String packageName) {
+ try {
+ return mService.isProviderPackage(packageName);
+ } catch (RemoteException e) {
+ e.rethrowFromSystemServer();
+ return false;
+ }
+ }
+
+ /**
* Set the extra location controller package for location services on the device.
*
* @hide
diff --git a/location/java/com/android/internal/location/ILocationProviderManager.aidl b/location/java/com/android/internal/location/ILocationProviderManager.aidl
index b1b8f0c7c3f7..79166ae3a9b0 100644
--- a/location/java/com/android/internal/location/ILocationProviderManager.aidl
+++ b/location/java/com/android/internal/location/ILocationProviderManager.aidl
@@ -26,6 +26,8 @@ import com.android.internal.location.ProviderProperties;
*/
interface ILocationProviderManager {
+ void onSetAdditionalProviderPackages(in List<String> packageNames);
+
void onSetEnabled(boolean enabled);
void onSetProperties(in ProviderProperties properties);