Commit Graph

16251 Commits

Author SHA1 Message Date
Neil Fuller
f60c302dad Merge "Be more defensive around invalid tzids" 2020-05-26 10:20:09 +00:00
Neil Fuller
26fe60a188 Be more defensive around invalid tzids
Add checks during boot in case the persist.sys.timezone property is set
to a bad ID.

This can happen in the rare case of a mainline rollback: i.e. if a device has
been set to a new ID and then the update is rolled back. Using GMT as a
fallback probably works without this change (it does in java.util.TimeZone),
but relies on all code, including native code that uses
persist.sys.timezone directly, knowing to interpret a bad ID as "GMT".
This commit makes that choice more explicit and defensive.

This change also removes the possibility of IOException, which is never
thrown, from some ZoneInfoDb methods.

Bug: 155738410
Test: boot with a valid id, verify persist.sys.timezone is unchanged
Test: boot with an invalid id set,  verify persist.sys.timezone is "GMT"
Merged-In: I6dc0f4f81848efbbaec6a11a62014471a0ef01fd
Change-Id: I6dc0f4f81848efbbaec6a11a62014471a0ef01fd
Exempt-From-Owner-Approval: Approved / landed internally
2020-05-26 10:19:53 +00:00
Bill Yi
4806cccece Merge "Merge android10-qpr2-s3-release to aosp/master - DO NOT MERGE" 2020-05-06 15:59:08 +00:00
Andrew Sapperstein
50dd1eaaeb Fix last broken @see links in aosp.
Seems that the doc-comment-check-docs wasn't in presubmit.

Bug: 6963924
Bug: 155825675
Test: make doc-comment-check-docs
Change-Id: I018a50cd76b0fd5f8c3642efa1374e53f1b746a6
Merged-In: Ib2e4360493275b79c72487ee1cb173bb5e0fd35f
2020-05-06 01:55:04 +00:00
Bill Yi
b61408add5 Merge android10-qpr2-s3-release to aosp/master - DO NOT MERGE
Change-Id: I7ce0992bd12158655c0f4833fd924c8012386996
Merged-In: I34d1d5f9a751c1d7680a5a5941c39b9fe33a473b
Merged-In: Icd731877c220b0e3b39258812030313cbaba90c0
2020-05-05 20:34:22 +00:00
Andrew Sapperstein
2e5f38e0bf Update inner class constructor refs to use proper syntax.
Previously, we generally required fully qualified names for referring
to inner class constructors (like #Notification.Builder()) despite that
not being valid javadoc. Now, we properly support #Builder() syntax and
the old syntax will error.

Bug: 6963924
Test: make doc-comment-check-docs
Change-Id: Ib2e4360493275b79c72487ee1cb173bb5e0fd35f
Merged-In: Ib2e4360493275b79c72487ee1cb173bb5e0fd35f
2020-05-01 00:43:54 +00:00
Andrew Sapperstein
1f6e22cbd8 Fix broken @see tags in public documentation.
These were previously being suppressed by doclava but with this change,
all failures are fixed and the suppression logic has been removed.

To fix the issues, there were a few possible changes made:
- broken reference to a public API (such as incorrect parameters): fixed
- unnecessary @link inside an @see tag: fixed
- @see referring to an @hide or @SystemApi: reference removed
- broken references to inner class constructors
 - worked around by fully qualifying the constructor

Bug: 6963924
Test: make doc-comment-check-docs
Change-Id: Ifbdce2de96cdffa560bd90f549fa7184d1f9af85
Merged-In: Ifbdce2de96cdffa560bd90f549fa7184d1f9af85
2020-05-01 00:42:22 +00:00
Malcolm Chen
1cae35384b Hide APIs exposed for Telephony mainline which is no longer needed in R.
The APIs were added in b/144351078, b/148097978 and b/148116922.
b/151665796 is used to revert them.

Bug: 151665796
Bug: 144351078
Bug: 148097978
Bug: 148116922
Test: build
Change-Id: I08db8c5c0161747a7e775a8de0daa7077b513f10
Merged-In: I08db8c5c0161747a7e775a8de0daa7077b513f10
2020-04-01 12:46:51 -07:00
Linus Tufvesson
3228152d10 RESTRICT AUTOMERGE
Revert submission 10383599-type-presentation-q

Reason for revert: Breaks apps using Presentation in combination with private virtual displays
Reverted Changes:
I2aaab1903:RESTRICT AUTOMERGE Block TYPE_PRESENTATION windows...
Ib5a24f8be:RESTRICT AUTOMERGE Add test for Presentation

Bug: 141745510

Change-Id: I0b3a332c286900952b65ece12435f981e324cb5b
(cherry picked from commit a9211d687d)
2020-04-01 00:04:13 +00:00
Tyler Gunn
f02ac9e439 Merge "Update car mode API docs." 2020-03-30 18:22:32 +00:00
Tyler Gunn
d5ee1a6325 Update car mode API docs.
1. Clarify the distinction between the prioritized and non-prioritized
intents.
2. Make the priority ordering and choice of them more clear.

Test: make -j offline; preview updated docs for formatting.
Fixes: 150685399
Change-Id: I493bca75db44f25eedb07964e3dc8c8ab38827c2
2020-03-30 09:34:11 -07:00
Treehugger Robot
13033a2612 Merge "Don't include the data dir in zygote library paths." 2020-03-26 15:03:26 +00:00
Torne (Richard Coles)
89dea60b17 Don't include the data dir in zygote library paths.
When creating a LoadedApk in a zygote context (app zygote or WebView
zygote), don't add the app's data dir to the list of paths the dynamic
linker is allowed to load libraries from, because the linker's attempt
to canonicalize the path causes SELinux access denials. The process
can't access the data directory at all, so cannot load libraries from
there in any case.

Fixes: 149481620
Test: check for avc denials from webview_zygote
Change-Id: I9aceecaf6067e748cc2251782b0f41661cbb35d8
Merged-In: I9aceecaf6067e748cc2251782b0f41661cbb35d8
2020-03-25 12:39:59 -04:00
sqian
bc1f641138 Hide several System APIs
Test: Treehugger
Bug: 151241308
Change-Id: Ie611320f4651b83e0ced6f5c8fede34a8a0a41c1
Merged-In: Ie611320f4651b83e0ced6f5c8fede34a8a0a41c1
(cherry picked from commit 1e154a345c)
2020-03-24 18:40:23 -07:00
Remi NGUYEN VAN
341fa568b9 Merge changes from topic "netstack_constant_cherrypick"
* changes:
  Remove usage of Context.NETWORK_STACK_SERVICE
  Remove NETWORK_STACK_SERVICE constant
2020-03-23 03:33:58 +00:00
Remi NGUYEN VAN
4fb0137726 Remove NETWORK_STACK_SERVICE constant
Instead, have a dedicated method in android.net.NetworkStack allowing to
fetch the stable AIDL token for the service.

This avoids returning IBinder from getSystemService, as getSystemService
should generally return manager classes.

Test: atest FrameworksNetTests NetworkStackTests
Fixes: 151243982
Merged-In: I58a6e1f27aff052050197d1901f43a98d7aa1167
(clean cherry-pick from internal branch)

Change-Id: I75aba269595f3e315dd5e0693c878b2026e8e299
2020-03-23 11:28:56 +09:00
Neil Fuller
f211324bfc Merge "Misc tidy up before adding geolocation classes" 2020-03-20 09:47:19 +00:00
Linus Tufvesson
af3eb61fed RESTRICT AUTOMERGE
Block TYPE_PRESENTATION windows on default display

... and any other display that isn't considered a public presentation
display, as per Display.isPublicPresentation()

Bug: 141745510
Test: cts-tradefed run cts -m CtsWindowManagerDeviceTestCases -t android.server.wm.PresentationTest
Change-Id: I2aaab1903dee54190338f7b6e49888aa51437108
(cherry picked from commit 60a6583adf)
2020-03-19 04:52:13 +00:00
Christopher Tate
e5a2051d2b DO NOT MERGE - Kill apps outright for API contract violations
...rather than relying on in-app code to perform the shutdown.

Bug: 128649910
Bug: 140108616
Test: manual
Test: atest OsHostTests#testForegroundServiceBadNotification
Change-Id: I94d9de50bb03c33666471e3dbd9c721e9278f7cb
Merged-In: I94d9de50bb03c33666471e3dbd9c721e9278f7cb
(cherry picked from commit 45a53e6cb8)
2020-03-19 04:52:07 +00:00
Hai Zhang
5f00139706 Merge "Add OWNERS file for role." 2020-03-16 22:55:07 +00:00
Hai Zhang
9173da8f8a Add OWNERS file for role.
Test: build
Change-Id: Ib22925c0bdb97ea97964ad9fb08222ca27facbab
2020-03-16 11:03:12 -07:00
Lucas Lin
4db4933c81 Merge "Add some comments in isAlwaysOnVpnLockdownEnabled" 2020-03-16 10:08:51 +00:00
Junyu Lai
240f5bb4e9 Merge "[SP21] Address comments for API council review about aosp/1172143" 2020-03-16 02:41:19 +00:00
lucaslin
86e560c749 Add some comments in isAlwaysOnVpnLockdownEnabled
Bug: 141621373
Test: Build pass.
Change-Id: Ib9df71192937164ff95ce564195d5d68508ec69d
2020-03-16 09:40:01 +08:00
Treehugger Robot
9a3446e067 Merge "Add @RequiresPemission compat framework APIs." 2020-03-13 19:10:21 +00:00
junyulai
393e10d4cd [SP21] Address comments for API council review about aosp/1172143
Test: atest FrameworksNetTests ImsPhoneCallTrackerTest
Test: atest TetheringTests NetworkStackTests
Test: m doc-comment-check-docs
Fix: 148552904

Change-Id: I141393f229e772d2eb9f7c156849e379bd71b845
2020-03-12 21:34:17 +08:00
Junyu Lai
0fa3b9e2e4 Merge changes from topic "sp20-stats-provider-permission"
* changes:
  [SP20] Check signature permission when accessing network stats provider
  Add permission check functions to NetworkStatsService
2020-03-12 08:19:24 +00:00
sqian
a14185aad4 Add updateMccMncConfiguration as @TestApi for CTS
Test: cts; https://paste.googleplex.com/5930499648258048
Bug: 147897445
Change-Id: I63288be1acd9e898548ced345799ac1ae69ce427
Merged-In: I63288be1acd9e898548ced345799ac1ae69ce427
(cherry picked from commit 3d873cf7d0)
2020-03-10 22:57:43 +00:00
sqian
9799e6e810 Introduce system API for ActivityManager.updateMccMncConfiguration for Mainline
Test: treehugger
Bug: 147381728
Bug: 138545688
Change-Id: Ieef1dbbab3b05fc166c3dbc53ed2507ef45d09d7
Merged-In: Ieef1dbbab3b05fc166c3dbc53ed2507ef45d09d7
(cherry picked from commit b9c9bfa6e8)
2020-03-10 21:29:32 +00:00
Bill Yi
020c84a136 Merge stage-aosp-master to aosp-master - DO NOT MERGE
Change-Id: I352ed2cba25df69594ee5861f3a64be63bc18c96
2020-03-05 10:20:17 -08:00
Neil Fuller
86fd801bff Merge "Add command line support for testing tz detection" 2020-03-05 18:07:24 +00:00
Automerger Merge Worker
627bfca085 Merge "Start process of next activity with top priority in advance" am: efbcd6752d
Change-Id: I8e8dd0f20cd3a783e49468a7657e571812bca3eb
2020-03-04 23:54:10 +00:00
Treehugger Robot
efbcd6752d Merge "Start process of next activity with top priority in advance" 2020-03-04 23:41:40 +00:00
Riddle Hsu
364f2500e5 Start process of next activity with top priority in advance
In common cases, to resume the next activity we need to wait for the
current one to be paused. Since starting a process for activity is
asynchronous, if we already know the process of next activity has not
started yet, we can start the process earlier so the time waiting for
the pause to complete can be saved.

Also if the launching activity is going to be the top app, we can set
the top schedule group right after its process is started so the start
time before actually launching the activity can be improved.

Although before the current activity is paused, the next top activity
may still change and results some empty processes. That should not be
a common case and the process is still useful when going back the stack,
and the empty background processes are easier to be reclaimed.

Bug: 123043091
Test: AppLaunchTest
Test: Launch calculator from launcher, the event log am_proc_start will
      show "pre-top-activity".
Test: Cold launch a top activity, the system log should not show
      "not expected top priority".
Test: Use startActivities to start serveral activities in a sequence.
      Check "adb shell cat /proc/$pid/task/$pid/cgroup" for each process.
      Only the last one has top-app, others are background.

Change-Id: I9601b66e7cc0855fd7c2b573ded31fcf8d0711ae
Merged-In: I9601b66e7cc0855fd7c2b573ded31fcf8d0711ae
2020-03-03 16:36:46 -08:00
Automerger Merge Worker
f6cdbeb470 Merge "Make MmsManager public and @SystemService" am: 01574a30ea
Change-Id: I6978fb1377f76308732fb241f04adcef82087b7f
2020-03-03 21:22:33 +00:00
Sarah Chin
01574a30ea Merge "Make MmsManager public and @SystemService" 2020-03-03 21:17:11 +00:00
Automerger Merge Worker
f1124753ed Merge "[API Review] Expose sendOrderedBroadcast" am: b0157c3ee3
Change-Id: I686308c2af6e31a30c211d25adea416d556e5cd1
2020-03-02 21:59:55 +00:00
atrost
e8e97c0aab Add @RequiresPemission compat framework APIs.
The permission check is already implemented server side.

Test: m
Bug: 150471082
Change-Id: I63d807be84bccb237f69562cdbce22f99a964d1a
Merged-In: I63d807be84bccb237f69562cdbce22f99a964d1a
2020-03-02 13:30:44 +00:00
Peter Wang
3e227cdfc5 [API Review] Expose sendOrderedBroadcast
with appOp as String and options as Bundle

Bug: 139077993
Bug: 146423958
Test: Build
Change-Id: I5325e08d60016741139251813a5df9b42f2efc82
Merged-In: I5325e08d60016741139251813a5df9b42f2efc82
2020-02-27 14:45:23 -08:00
Neil Fuller
4879487862 Add command line support for testing tz detection
Add support for "adb shell cmd time_zone_detector".

This allows platform developers and future host tests to simulate
clients like telephony / SettingsUI and make changes to the
TimeZoneDetectorService state to mimic various real-world situations.

Example adb shell invocations:

Withdraw a previous telephony suggestion from slot_index=0:

cmd time_zone_detector suggestTelephonyTimeZone --suggestion --slot_index 0 \
    --zone_id "_"

Make a new telephony suggestion from slot_index=0, with a quality of
TelephonyTimeZoneSuggestion.QUALITY_SINGLE_ZONE, and a matchType of
TelephonyTimeZoneSuggestion.MATCH_TYPE_NETWORK_COUNTRY_ONLY:

cmd time_zone_detector suggestTelephonyTimeZone --suggestion --slot_index 0 \
    --zone_id "Europe/London" --quality single --match_type country

Make a manual (user) suggestion as if from SettingsUI:

cmd time_zone_detector suggestManualTimeZone --suggestion --zone_id America/Los_Angeles

Bug: 140712361
Test: Various command line invocations.
Test: atest core/tests/coretests/src/android/app/timezonedetector
Change-Id: I0f16868a526d2ea4b17acbd274cb2359f93166f5
2020-02-25 17:57:42 +00:00
junyulai
ddbbe58863 [SP20] Check signature permission when accessing network stats provider
Currently, registerNetworkStatsProvider requires the
UPDATE_DEVICE_STATS permission. This is a privileged permission
so it can be granted to preinstalled apps. Thus, apps like
GmsCore, or preinstalled apps will be able to update network stats.

This change checks for a new permission that would only allow
signature apps to declare that. Also check
MAINLINE_NETWORK_STACK permission to allow NetworkStack process
to use it.

Test: adb shell dumpsys netstats
Test: atest FrameworksNetTests
Bug: 149652079
Change-Id: Idfebd0a1988c3dcfd812d87e30f6a2034d6fbf6b
2020-02-24 20:22:48 +08:00
Automerger Merge Worker
1da820d954 Merge "Revert "Cache binder calls in CompatChanges"" am: e879968fbf
Change-Id: I2fd44d5f95c66d57c8cf779a8b18a10b4e2e965c
2020-02-21 19:25:51 +00:00
Anna Trostanetski
9c6ecc90c5 Revert "Cache binder calls in CompatChanges"
Reason for revert: cache needs to be cleared on package install.
This is much simpler to do in internal master with recent changes
(ag/10172190) so I'm reverting the cache from aosp to keep it correct,
and cherrypicking this into internal master.

Change-Id: I71757a5b60fbdba3c69322b95a20527a1e3a66e9
2020-02-21 16:38:32 +00:00
Automerger Merge Worker
2cef69cb5f Merge "Revert "Revert "[DexLoadReporter] Report classloader contexts di..."" am: 1ee3e70cf3
Change-Id: I5645d6c8f666e2e29e753cad5f216f9d7ab335d2
2020-02-19 19:52:57 +00:00
Calin Juravle
1ee3e70cf3 Merge "Revert "Revert "[DexLoadReporter] Report classloader contexts di..."" 2020-02-19 19:38:35 +00:00
Calin Juravle
c78162f489 Revert "Revert "[DexLoadReporter] Report classloader contexts di..."
Original commit:
[DexLoadReporter] Report classloader contexts directly from classloader

At the moment classloader contexts are incorrectly computed in the
PackageManager for secondary dex files. There are two issues:

(1) The wrong computed classLoaderContext will be reported for a secondary
    dex file if it was loaded at the same time as a primary dex file
    - This is due to the continue statement that doesn't increment
      dexPathIndex
(2) If a secondary dex file was loaded with a shared library then that
    shared library info isn't passed through the dex load reporting
    infrastructure, and thus its classloader context is incorrectly computed
    in PackageManager.

In order to fix the issues described above & prevent further classloader
context computation divergences between the package manager and the
runtime, lets compute the classloader context in the runtime at dex load
time and report the expected classloader context directly to
DexLoadReporter (and thus the package manager).

Notes: This is mostly just a refactor (i.e. there are a lot of line
changes, but functionally speaking this set of CLs doesn't do much
except change where the classloader context is computed)

Addendum: The bugs described above could also be fixed by:
- changing DexLoadReporter to report information about shared libraries that
  the reported classloaders depend on to PackageManager
- Teach DexoptUtils.processContextForDexLoad about shared libraries
- Fix dexPathIndex calculation in DexManager

I opted for this set of changes instead because this reduces the
possibility of context computation divergence between the framework and the
runtime. Additionally it feels more "solid" that the classloader context
is now computed directly when a dex file is loaded, rather than the
context recreated later on in the PackageManager.

Test: atest com.android.server.pm.dex.DexManagerTests
Test: atest com.android.server.pm.PackageManagerServiceTest
Test: Install app depending on shared library & uses secondary dex
files; adb shell pm bg-dexopt-job; launch app and see odex file
successfully loaded (from smaps/no logcat errors)

Bug: 148494302
Exempt-From-Owner-Approval: This is a pure re-revert, previously owner approved.
Reason for revert: Re-land
Reverted Changes:
I295a6e99e:Revert "Fix shared libraries not being reported vi...
Ib58066e8f:Revert "[DexLoadReporter] Report classloader conte...

Change-Id: I8d1af791f93a3f8fa6eca78df50891cd2ebbb4a3
2020-02-19 19:37:05 +00:00
Automerger Merge Worker
1f82fbb4ac Merge "Improve BaseBundle#kindofEquals" am: 42ab50d14b
Change-Id: Ic5c2c5bcf979236c77344d0507d071bbb83f624e
2020-02-19 00:33:09 +00:00
Treehugger Robot
42ab50d14b Merge "Improve BaseBundle#kindofEquals" 2020-02-18 23:56:30 +00:00
Andrei-Valentin Onea
61e6c86f54 Merge changes from topic "add-caching-platformcompat" am: 8f269473b2
Change-Id: If1af69efe644b57c990a85bbb07ea9442edf808e
2020-02-18 17:30:44 +00:00
Daniel Colascione
7c9f1499bc Add property-invalidated cache am: 764ff47f87
Change-Id: I49849de310a637d9d407698a4a0120b5b8aa48aa
2020-02-18 17:30:40 +00:00