Revert "Move IMS to a listener type model instead of a poll model"
Revert "Push Binder updates when ImsFeatures change"
Revert submission 1425374-ims_poll
Reason for revert: b/169729036, ANR in phone process
Reverted Changes:
I1d6dd2dfd:Move to a push model of querying ImsFeature Binder...
Ie3982c245:Move IMS to a listener type model instead of a pol...
I8b9ded0f4:Push Binder updates when ImsFeatures change
Ia9f7ae3db:Clean up IMS based interfaces to use a push model ...
Change-Id: I7ef3c07021a79e809d2c8b30ed2422372eae962d
This commit introduces the TimeManager API class. It is intended to
provide access to the time and time zone detector services, which
historically have had their own (internal) API classes to access them.
This commit contains various fixes to the listener handling logic
noticed while testing the APIs.
The first APIs on TimeManager are being exposed for use by SetUp Wizard,
which requires System APIs.
The APIs enable the calling app to determine the capabilities for /
config of the current user that affect time zone detection and then
alter them.
The primary usecase:
The rules for who can do what and when for time zone detection are
becoming more complicated, and device and user capabilities will be
affected by compile time constants, device config (resources) and device
hardware. By exposing this API, the complex logic can be encoded in one
place (the system server), rather than duplicating them in multiple
client apps.
These APIs are also intended for use by SettingsUI (and the various form
factor versions of that), but settings apps do not currently require
them to be marked with @SystemApi.
Bug: 159891384
Test: atest services/tests/servicestests/src/com/android/server/timezonedetector/
Test: atest android.app.time
Change-Id: I9b59099748e2391c180e124edf83fa521beb1b51
This commit contains refactorings intended to make the addition of a
secondary LocationTimeZoneProvider easier and clearer.
This change contains various refactorings to code and comments:
1) Start referring to the provider as the primary in some places.
2) Move the initialization timeout tracking to the
LocationTimeZoneProvider so each provider can be responsible for
tracking its own initialization timeout, giving the controller less to
do.
3) The PROVIDER_STATE_ENABLED has been split into _INITIALIZING,
_CERTAIN and _UNCERTAIN variants which are determined by the most recent
event the provider has sent. The controller therefore doesn't need
to track this either.
4) Introduction of a "single runnable" for the uncertainty timeout
managed by the ControllerImpl.
5) Many ControllerImplTest changes resulting from all the above and to
maximize tests readability.
Bug: 152744911
Bug: 149014708
Test: atest services/tests/servicestests/src/com/android/server/location/timezone/
Change-Id: I64b9cc33c5f97f2edb1063a8133434bfd8e9dda1
This reverts commit 30694a0eab.
Reason for revert: ag/12511042 is now merged
Bug: 115619667
Bug: 159995598
Bug: 159501682
Change-Id: I413ccf8c31de6525a737c8336a904456fdbeb9e1
This adds a new permission in AOSP, so it can be referenced by the Shell
command, which presubmit suggests has to be maintained in AOSP.
Bug: 159891384
Test: build only
Exempt-From-Owner-Approval: jsharkey@ approved but it appears to have reset...?
Change-Id: Ic7d403e20731e9d6bd82d5b2e2758cc61989cc59
r.android.com/1424920 changed the code but forgot to update the
unit test.
Also fix some lint errors.
Bug: 149109043
Test: atest TetheringTests TetheringPrivilegedTests
Change-Id: I53ca4b9877dcb4a759dee6ec63133653315d826f
Add the netfilter generic message header to
the netlink req. This is needed so the kernel
won't ignore the request for invalid params.
Bug: 149109043
Test: ConntrackSocketTest
Change-Id: I1757fdeb11a0cac5821021a22323cbd74fe22bdc