Commit Graph

501 Commits

Author SHA1 Message Date
Pierre Fite-georgel
19f6cbfec9 Revert "Revert "This CL introduces new member variable on android.location.Location (see api/current.txt).""
This reverts commit cef1e80327.
AND
Fixing typo that fix a failure b/127312065

Test:  atest CtsGraphicsTestCases:android.graphics.cts.BitmapFactoryTest#testDng -- --abi x86
Bug: 127312065

Change-Id: I96657adb54c33ceb92f25896bb5b6bdaa19e902c
2019-03-04 15:30:57 -08:00
Colin Cross
0e9cf5151a Merge "Revert "This CL introduces new member variable on android.location.Location (see api/current.txt)."" 2019-03-04 23:19:58 +00:00
Colin Cross
cef1e80327 Revert "This CL introduces new member variable on android.location.Location (see api/current.txt)."
This reverts commit 9e96c57083.

Reason for revert: b/127312065

Change-Id: I8e7248efd74f2a4e6b0a491e5afe03568214cd23
2019-03-04 23:17:53 +00:00
Wyatt Riley
4891313d16 Merge "SUPL ES Extension - Safer Init and Not After Boot" 2019-03-04 14:29:06 +00:00
Pierre Fite-georgel
bbc8ad9991 Merge "This CL introduces new member variable on android.location.Location (see api/current.txt). In this CL, I pushed location.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos()); (from Java)" 2019-03-02 02:36:30 +00:00
Pierre Fite-Georgel
9e96c57083 This CL introduces new member variable on android.location.Location (see api/current.txt).
In this CL, I pushed
   location.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos()); (from Java)

Test: This patchset include a CTS test for location.java changes.
Bug: 121353225
Change-Id: I606e23175e2fb6405660ed032b41c9996f1ba0c8
2019-03-01 15:20:21 -08:00
Kweku Adams
f6410681b9 Merge "Adding new Battery Saver location mode." 2019-03-01 22:17:29 +00:00
WyattRiley
d130931b0b SUPL ES Extension - Safer Init and Not After Boot
Safe order of pointer setting and background thread start
Verifying mCallEndElapsedRealtimeMillis is not the initial value

Bug: 112159033
Bug: 115361555
Bug: 125124724
Test: Verified not-after-boot with test code b/115361555#comment14
Test: Reproed NPE with test thread sleep and verify fix
Change-Id: Ic01a5d35d919ccea7934c8384253311261cd0167
2019-03-01 21:13:09 +00:00
Jeff Sharkey
9e8f83db6d All Parcelable CREATOR fields are @NonNull.
If they were null, then the Parcelable would fail to work.

Bug: 126726802
Test: manual
Change-Id: I7929ffa2f20e5de1c8e68e8263cca99496e9d014
Exempt-From-Owner-Approval: Trivial API annotations
2019-02-28 23:29:04 -07:00
Kweku Adams
4fb074e7f4 Adding new Battery Saver location mode.
When this new mode (LOCATION_MODE_THROTTLE_REQUESTS_WHEN_SCREEN_OFF) is
enabled, LocationManagerService will avoid sending almost all
LocationRequests to providers. The only requests that will continue to
be sent will be providers are the requests that ignore location
settings.

Bug: 121256487
Bug: 122849003
Bug: 119261320
Test: atest android.os.cts.batterysaving.BatterySaverLocationTest
Change-Id: Iee95a6fb5ca11d4db7a0f0661bf3cb1051a5d710
2019-02-28 14:55:39 -08:00
Andrei-Valentin Onea
5ac2de02f6 Merge "Add @UnsupportedAppUsage annotations" 2019-02-28 16:44:23 +00:00
Andrei Onea
fa152f9517 Add @UnsupportedAppUsage annotations
For packages:
  com.android.internal.app
  com.android.internal.appwidget
  com.android.internal.location
  com.android.internal.os
  com.android.internal.policy
  com.android.internal.statusbar
  com.android.internal.telecom
  com.android.internal.telephony
  com.android.internal.widget

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: 110868826
Test: m
Change-Id: I6eba34467b2492047e5264684312adfa029eb317
2019-02-27 16:42:54 +00:00
Andrei Onea
da6e570f1e Add @UnsupportedAppUsage annotations
For packages:
  android.database
  android.hardware
  android.hardware.display
  android.hardware.input
  android.hardware.location
  android.location
  android.media
  android.media.tv
  android.media.projection

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: 110868826
Test: m
Change-Id: I570c08292f8a9f512c96f9dce13f5337718f112c
2019-02-27 13:31:11 +00:00
gomo
3796ab1bf3 Bluesky API council review
Making method names clearer and adding more annotations.

Bug: 124882841
Test: Current Tests Pass.
Change-Id: Ic36f9ac6e69280f3efa9f812fee1ff6e4e4b1773
2019-02-21 15:28:25 -08:00
Soonil Nagarkar
5140e4fb86 Add API to expose ignore settings whitelist for GTS
Bug: 124517571
Test: manually
Change-Id: I846f9112c3cc3dde1466ff13e740ccf72c16b833
2019-02-15 19:29:06 +00:00
Soonil Nagarkar
509580fbdf Refactor API naming and add unbundled support
Rename APIs while there are no clients. Also prevent throttling when
location settings are being ignored.

Bug: 118883513
Test: manual
Change-Id: I225c50b152e77ab181c959ecd9dc652333f59d5e
2019-02-13 13:34:45 -08:00
Yu-Han Yang
786a2bd746 Add GnssMeasurementState::STATE_2ND_CODE_LOCK to GnssMeasurement API
- Also updates the Javadoc of getReceivedSvTimeNanos

Bug: 123297074
Test: builds and tested on cuttlefish
Change-Id: I96c828b2e66545a3615689cc299585511e13f9bf
2019-02-12 11:26:31 -08:00
TreeHugger Robot
e27f8dabbd Merge "Add CODE_TYPE_OTHER and otherCodeTypeName to GnssMeasurement API" 2019-02-07 20:27:04 +00:00
Yu-Han Yang
a3214010db Add CODE_TYPE_OTHER and otherCodeTypeName to GnssMeasurement API
Bug: 112260995
Test: atest GnssMeasurementTest
Change-Id: Ie4a7ed0a866cd93b85d2bd81fbde1f7b72760e04
2019-02-06 15:48:29 -08:00
Soonil Nagarkar
11a7994c7a Merge "Add TestApi annotations to LocationManager" 2019-02-05 21:07:52 +00:00
Soonil Nagarkar
ec2718d4e8 Remove unused API
getNetworkProviderPackage() has been replaced by isProviderPackage().

Bug: 123766886
Test: manually
Change-Id: I39eda1910af0d298beabc224ab33c35190d0e21f
2019-02-04 17:52:59 -08:00
Soonil Nagarkar
0d77ea6893 Change provider packages API to test all providers
This will replace the LocationManager.getNetworkProviderPackage() API
with LocationManager.isProviderPackage(). The network provider should
not be considered special.

In addition, providers now have the ability to specify additional
packages that may make location requests on their behalf, so that those
packages can be considered location providers as well.

Bug: 117177078
Test: manually
Change-Id: I204b56e7bb40874ac3347988474fb8afa787feb8
2019-02-04 10:58:24 -08:00
Soonil Nagarkar
ac1879ab06 Add TestApi annotations to LocationManager
Expose some APIs for CTS tests.

Bug: 123766886
Test: N/A
Change-Id: I4fe7d05cf13c3cff793803297698452c1bfc247e
2019-02-04 10:29:10 -08:00
Soonil Nagarkar
2348248e80 Merge "Fix location ignore settings bugs" 2019-01-31 01:59:20 +00:00
Soonil Nagarkar
835a0a07a7 Fix location ignore settings bugs
Whitelist not properly initialized and LocationRequest settings not
properly serialized.

Test: manually
Change-Id: I3e8a8883dcf8859e6684e092818121b3360d3f17
2019-01-30 14:58:52 -08:00
Soonil Nagarkar
5e185019f0 Location settings documentation and migration
-Add new LOCATION_MODE_ON for internal use only
-Update location docs for Q
-Fix egregious copy/pasta bug

Bug: 118883513
Test: NA
Change-Id: I5c04786f912f1b8db33930449ae2ba5854a55981
2019-01-30 14:42:04 -08:00
gomo
6ec9538233 Bluesky add position uncertainty field
Add the horizontal position uncertainty for the provided location
by Bluesky at which the corrections are computed.

Bug: 111441283
Test: Existing tests pass.
Change-Id: I396bfce10deb9561b9f4d128b1f6a9641dedc3cc
2019-01-29 16:20:13 -08:00
Soonil Nagarkar
be93e9cc5b Add location settings piercing in emergencies
Add new field to LocationRequest that allows clients to ignore location
settings, and validate this field. Support returning location to clients
with this field even when location settings are turned off.

Bug: 118883513
Test: Manual + CTS
Change-Id: Idf4449ae7c20d03f42410936c35fadc602e83d11
2019-01-22 14:29:17 -08:00
gomo
b4635ba90d Bluesky change LOS from bool to float prob
Change the field indicating that the GNSS satellite is line of sight
or not from boolean to a float representing hte probability of being
line of sight.

Bug: 111441283
Test: Existing tests pass.
Change-Id: I746d7b16dcbb7c8968163f512a70aac7511402b6
2019-01-18 11:16:01 -08:00
TreeHugger Robot
a32c79d362 Merge "Add CodeType to GnssMeasurement API" 2019-01-15 18:55:03 +00:00
Soonil Nagarkar
48273286e5 Merge "Use LOCATION_MODE to control location" 2019-01-10 22:47:48 +00:00
Soonil Nagarkar
90da1ab3d2 Use LOCATION_MODE to control location
Completely deprecate LOCATION_PROVIDERS_ALLOWED (but still support it).
Adds additional locking and @GuardedBy annotations where appropriate,
and some minor code cleanup is copied from previous CLs.

Bug: 118885128
Test: Manual + CTS
Change-Id: I3c0b4b2354a4c2b6a120fc467af60cb3409dd671
2019-01-10 14:43:43 -08:00
Anil Admal
d71cf1499b Add emergency session extension duration (framework)
Add new method in IGnssConfiguration.hal to pass emergency
session extension duration to GNSS HAL implemenation so that
network initiated emergency location requests can be served
for this extra duration post emergency call.

Bug: 121204694
Test: GNSS HAL implementation not ready. So, tested with code
      instrumentation that this configuration parameter is
      called only for GNSS HAL 2.0 implementation.

Change-Id: I845cc13412d9027b7924bfcffecbf6438f2e4be7
2019-01-09 12:16:31 -08:00
Mathew Inwood
31755f94e1 Limit access to suspected false positives.
Members modified herein are suspected to be false positives: i.e. things
that were added to the greylist in P, but subsequent data analysis
suggests that they are not, in fact, used after all.

Add a maxTargetSdk=P to these APIs. This is lower-risk that simply
removing these things from the greylist, as none of out data sources are
perfect nor complete.

For APIs that are not supported yet by annotations, move them to
hiddenapi-greylist-max-p.txt instead which has the same effect.

Exempted-From-Owner-Approval: Automatic changes to the codebase
affecting only @UnsupportedAppUsage annotations, themselves added
without requiring owners approval earlier.

Bug: 115609023
Test: m
Change-Id: I020a9c09672ebcae64c5357abc4993e07e744687
2018-12-28 11:50:04 +00:00
TreeHugger Robot
7a01a91477 Merge "Bluesky Android Q Platform Changes" 2018-12-21 06:34:19 +00:00
gomo
226b7b7775 Bluesky Android Q Platform Changes
- Changes to C++ HAL and GNSS Location Provder Code to inject
corrections to chipset
- Changes to JNI bridge to translate the Java corrections to C++
- Changes to JAVA side of the bridge: GnssLocationProvider.cpp to pipe
the corrections through the JNI
- Build the Locaiton Manager First Party APIs and methods
- Build needed Java containers: GnssMeasuremetCorrections.java,
GnssSingleSatCorrections.java and ReflectingPlane.java
- Build the Parcelables to send all our Java objects through processes
- Build piping methods in CallbackTransport.java,
LocationMangerservice.java, etc to pass the data in both direcions
- update API docs: current.txt and system-current.txt

Bug: 111441283
Test: Existing tests pass.
Change-Id: I8650fea21c69c8f31ba9cabe63d4a6676ffe38d7
2018-12-20 15:27:08 -08:00
WyattRiley
a828d1d606 Merge "Adding SUPL NI Emergency Extension Time" into pi-dev am: 73c242793f
am: ac488cd7c5

Change-Id: I9f43a4bfc4f22229b10fbc8bc061d31fc8284904
2018-12-20 11:50:50 -08:00
WyattRiley
ac488cd7c5 Merge "Adding SUPL NI Emergency Extension Time" into pi-dev
am: 73c242793f

Change-Id: I2b2c76c98ba4460fff8ccba57e7b86acc3ec6575
2018-12-20 11:42:50 -08:00
Yu-Han Yang
5400946b92 Add CodeType to GnssMeasurement API
Bug: 120277977

Test: builds and tests passed.
Change-Id: Id7f59d083b52e3179e60db560a2d84d1a94c402f
2018-12-19 14:36:13 -08:00
TreeHugger Robot
e48e378bee Merge "Add APIs to set Location History package name." 2018-12-15 05:10:30 +00:00
Wei Wang
980b7c20d6 Add APIs to set Location History package name.
The package name will be used by Permission Controller to properly
handle permissions for location history package.

Bug: 119226131

Test: manually tested on device
Change-Id: I522517272c132a054c44489d16626509cf2b42ee
2018-12-12 16:48:51 -08:00
Lifu Tang
78e0756ece Undeprecate injector API to allow change summary
Bug: 120236748
Test: build, flash, and test manually
Change-Id: I96042f51ce3fe32d15596b026f802f89dabf8405
2018-12-12 11:30:31 -08:00
Soonil Nagarkar
cae8ed62b4 Merge "Refactor how location providers are managed" 2018-12-10 22:25:21 +00:00
WyattRiley
a725dd6650 Adding SUPL NI Emergency Extension Time
Configurable by carrier config.xml resource

Bug: 118839234
Bug: 115361555
Bug: 112159033
Test: On device, see b/115361555#comment14
Change-Id: I52e61656cca8b6fa6468d32d2e69bf60f4c83c61
2018-12-10 10:51:20 -08:00
Soonil Nagarkar
1575a04e7b Refactor how location providers are managed
Put enabled/disabled state under location provider control, and use it
to represent whether a location provider may be used, not whether the
user has enabled or disabled a location provider.

Bug: 118885128
Test: manually
Change-Id: I1209c49c13ca8995b223f383ad332322fffc7a96
2018-12-10 10:29:17 -08:00
Anil Admal
75b9fd6de3 Show location icon when reporting GNSS measurements/status
GNSS measurements and status can be used to compute user location.
Hence, the location icon must be turned on in the status bar to
notify the user every time the measurements are reported to an
application. Also, check for location permission before delivery
as the application may have lost location permission.

Bug: 113332106
Test: Tested it manually using GNSS logger application.
Change-Id: I985610cab207af50a84e7e47390c51359375bb78
2018-12-05 18:15:51 +00:00
Philip P. Moltmann
c20f1b78a9 Revert "Allow location provider to deep link into permissions UI"
This reverts commit ed98828335.

Reason for revert: The exposed API is not needed anymore

Test: Built
Bug: 118437704
Change-Id: I155eb0f7241327b34ea5beaabee514ba2a018998
2018-11-27 17:03:24 -08:00
Soonil Nagarkar
94749f7ad1 Deprecate location provider status callbacks
Deprecate and remove logic around location provider status.

Bug: 118885128
Test: Tested manually on device
Change-Id: I68289cb5ed22e66532847758c36155a4ce607bbc
2018-11-26 23:19:00 +00:00
Bookatz
48d362e323 Statsd atom: GpsSignalQuality
Gps Signal Quality is used in the BatteryStats power usage calculations,
so it should also be logged to statsd.

Bug: 113524439
Test: Turned GPS on and made sure a signal level was logged
Change-Id: Id770ec549bbb47621f2585b9dbd09333f78656d1
2018-11-14 11:59:20 -08:00
TreeHugger Robot
a737061a3f Merge "Update javadoc for carrier phase alignment in getAccumulatedDeltaRangeMeters" 2018-11-09 23:47:28 +00:00