Currently listeners that expire (either because of expireAt or
numUpdates) will never be removed from the client listener list. Fix
this by adding a new ILocationListener callback.
Also remove old status callback that isn't being used anymore.
Test: atest CtsLocationFineTestCases
Change-Id: I3f8a5058988c8257f25fe63a0c62e9d26ed2cf00
GNSS APIs may crash when invoked on devices without GNSS, fix this
implementation.
Bug: 143591625
Test: manual
Change-Id: I6de563df96bc4605852989243c38e5d5278cbda0
Use direct executor for backwards compatibility when
addGpsStatusListener is invoked not on a handler.
Bug: 143544726
Test: manual
Change-Id: I594e302962737154e29d8226d0c19dbdebd18cbb
-Ensure deprecated GNSS APIs run on binder threads for backcompat.
-Normalize exception thrown on null criteria to
IllegalArgumentException.
Bug: 143110531
Test: atest LocationManagerTest
Change-Id: I962234913857cb0c5bfdf46653986ab2a55bd5ee
This pipes through the calling context's featureId for the
AppOpsManager#noteOp calls in the LocationManagerService.
Test: atest CtsAppOpsTestCases
Bug: 136595429
Change-Id: I754378b2c9e1740103e3441212ff11622b29a9d7
Clients should no longer need to reset expireIn every time they make a
location request. Also allow clients of getCurrentLocation() to set
their own timeout if desired, and enforce a timeout for
requestSingleUpdate().
Bug: 133356925
Bug: 142956404
Test: atest LocationManagerTest
Change-Id: I1b3a4d8d6ef249a2395b0d30bf7b92a8d4cfe933
Add new API to replace requestSingleUpdate() which is safer and more
convenient for clients to use.
Bug: 133356925
Test: manual (CTS tests coming in separate patch)
Change-Id: Ib7f76bcbff0cd010a479bb7a02e2f7e51e65525c
Previously some GNSS APIs would fail with NPE instead of
IllegalArgumentException. Also update JavaDocs to make behavior clear.
Bug: 142736900
Test: coming soon
Change-Id: If3228ff4f00629dd9eb099b8da8d8eea5d8852ad
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
Merged-In: Id306d7cc27c9410a5ad73f5a0940c25f8d795686
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
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
Merged-In: I109260842cfc25f06e40694997fcbb4afa02c867
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