Allow LocationManagerService to reuse the same listener transports, and
fix memory leak in event of RemoteException during registration.
Bug: 142024887
Test: manual
Change-Id: Ida25fe08c30e5936680c95c23cd03fbaf09ff574
-Go through major javadocs for location APIs and update and normalize
them, inserting additional information where necessary.
-Deprecated requestSingleUpdate APIs as they are dangerous (may be
adding a more direct replacement getCurrentLocation() later in R).
-Drop support for GpsStatusListener APIs (deprecated many years ago) for
apps targeting R and above.
-Drop permissions check from location provider properties APIs, there
doesn't seem to be any reason for these to be secured.
Bug: 141774342
Test: manual
Change-Id: I847f395e1e869eec991613b9b1b7e94a655446cc
Add executor support for all LM APIs and consolidate various GNSS
listeners. Also fixes some edge cases around multithreaded listener
callback delivery.
Bug: 136212299
Test: Manual
Change-Id: I2e863e41de846e739654362e859b58a5ed45c673
Added L5 metrics to determine if L5 should be enabled or not.
Test: On device
adb shell dumpsys location
Output:
Number of CN0 reports: 149
Top 4 Avg CN0 mean (dB-Hz): 26.100838872410307
Top 4 Avg CN0 standard deviation (dB-Hz): 1.7702387090734562
Total number of sv status messages processed: 4202
Total number of L5 sv status messages processed: 703
Total number of sv status messages processed, where sv is used in fix: 1979
Total number of L5 sv status messages processed, where sv is used in fix: 46
Number of L5 CN0 reports: 97
L5 Top 4 Avg CN0 mean (dB-Hz): 20.273711379041377
L5 Top 4 Avg CN0 standard deviation (dB-Hz): 2.632911219511556
Used-in-fix constellation types: GPS GLONASS GALILEO
Output Logs: https://drive.google.com/drive/folders/1tGEolHWtF92UkJ8lxgFihIzfWLl8ChZK?usp=sharing
Bug: 137575988
Change-Id: Id306d7cc27c9410a5ad73f5a0940c25f8d795686
To prepare for enabling MissingNullability Metalava check this CL
works on adding missing nullability issues that metalava flags if
we tell it to flag new things since API 29.
This is not a complete CL, mostly addresses public api and
toString/equals for @SystemApi
Exempt-From-Owner-Approval: Large scale nullability clean up
Bug: 124515653
Test: make -j checkapi
Change-Id: I109260842cfc25f06e40694997fcbb4afa02c867
This is an automatically generated CL. See go/UnsupportedAppUsage
for more details.
Exempted-From-Owner-Approval: Mechanical changes to the codebase
which have been approved by Android API council and announced on
android-eng@
Bug: 137350495
Test: m
Change-Id: I55c7845cb7c22808a85dd5185eccfe93c2064b76
Allow providers to see the identity of the caller of sendExtraCommand
and update documentation.
Bug: 116799964
Test: Presubmits
Change-Id: Ibb63dc3ce223bc1e3ae89e65cf2973a3619c057f
- Incorporate notification text feedback in b/116328114 so that
it translates well in different locales.
- Implement PWG recommendation to always notify user of non-framework
location requests and not make it configurable. Remove es_notify_int
configuration parameter.
Bug: 116328114
Bug: 130892418
Test: Manual plus existing tests pass.
Change-Id: Iad972eb1a6fe6c6ed5646edb00c1ea483a077553
Add READ_DEVICE_CONFIG permission requirement for using
isProviderPackage(). Now with more correctness.
Bug: 126614252
Test: manual
Change-Id: I38108a971e0f1dadc8fca8373c80d5d38099f161
This reverts commit 24136098c0.
Reason for revert: b/131637158. For some reason the Android system doesn't seem to have this permission.
Bug: 131637158
Change-Id: I7fd1e25a1bbb57f98a6ee0d07b8954c1cbcf08c2
Implement the getGnssCapabilities() method in LocationManagerService
class to return the capabilities exposed through the GnssCapabilities
class. This part 2 is a follow up to CL ag/6776830.
Bug: 128913861
Test: Tested with cuttlefish and blueline device.
Change-Id: I766e8dc841b5f329d1773e5b37076ed99c55ebf6
Rename the setters and getter for location package extra. The getter is
not used by prebuilt apps, so they are renamed directly. The setter is
used by GmsCore, so mark as @removed for now.
Bug: 123587501
Test: Manual
Change-Id: Ia5167d20aff92242036e3642a176fe2ab03d8a52
This provides a permissionless way to use the location (e.g. GNSS)
provided time data for more accurate time keeping.
Test: atest LocationManagerTest#testGnssProvidedClock
Bug: 123530510
Change-Id: Ifbc45997868040abbb3e1399a8649911afb0af05
When location SUPL request comes in for GPS NI handler,
also check emergency SMS mode in telephony, which
is true for a carrier defined amount of time after an
emergency SMS is sent.
Bug: 126091115
Test: manual - send fake emergency sms, check api is true.
Change-Id: I34d26d2940af5b0c412e20ce3668344da8656339
The GNSS capabilities in the gnss@2.0 HAL have been refactored
(b/128028791, b/127434062, b/128309220). The sub-HAL capabilities
in the top level IGnssCallback.hal have been moved into their
respective sub-HALs. Consequently, the getGnssCapabilities()
method in LocationManagerService is hereby modified to include
the capabilities from all sub-HALs and the top level HAL.
A new GnssCapabilities class needs to be added so that we don't
expose the implementation details of the capabilities (a Java
int bitmask of capability flags) to the LocationManager client.
Bug: 128913861
Test: TBD
Change-Id: I5ed90332c7c0e783de771f573a58f79d1d6d89ff
Give clients a way to know which providers have changed state, useful
since LOCATION_PROVIDERS_ALLOWED will be removed in the future.
Bug: 127372321
Test: manual
Change-Id: I16c0acbaad97930bea23084b50193582cc918fa2
- Add comment to clarify that onGetSummary() is only called on K and Q
- Annotate context parameter as @NonNull
Bug: 123222995
Test: Build and flash
Change-Id: I18ea3c80031a344be03307ca7fc26beb76288698