Commit Graph

94827 Commits

Author SHA1 Message Date
Sudheer Shanka
3f0645ba83 Bind mount pkg specific dirs in the zygote child namespaces.
- Also update vold to create sandboxes for secondary storage devices.
- Since bind mounts are created in the process specific namespaces, we
  don't need /mnt/storage anymore which we were using it to prevent
  some bind mounts from propagating onto /mnt/runtime/write.
- Create bind mounts for {media,obb} dirs similar to data dir in
  per process namespace.
- Also fix a bug where we are not passing correct packages to vold when
  a new user starts.

Bug: 111890351
Test: manual
Change-Id: I1abbafabc58993860305e5a928c980420f89f289
2018-09-27 14:43:45 -07:00
kopriva
5b866cfd2a Merge "docs: fix bug 37054309, becuase typo" into pi-dev am: 9359f3683c
am: e052af447d

Change-Id: Iac54fec0d8cd2729ea31ea1a2d139d74d1a78cb0
2018-09-27 13:34:02 -07:00
kopriva
e052af447d Merge "docs: fix bug 37054309, becuase typo" into pi-dev
am: 9359f3683c

Change-Id: I8ba3e3bd1d6aa296f216343d78cc252385ba64ba
2018-09-27 13:24:29 -07:00
TreeHugger Robot
9359f3683c Merge "docs: fix bug 37054309, becuase typo" into pi-dev 2018-09-27 20:03:29 +00:00
Haoyu Zhang
88f0f6c9b1 Merge "Synchronize attributes in TextView with TextAppearanceSpan" 2018-09-27 19:15:31 +00:00
Haoyu Zhang
445326d93d Merge "Fix equals not working correctly in SpannableString and SpannableStringBuilder" 2018-09-27 19:14:53 +00:00
kopriva
7364c11185 docs: fix bug 37054309, becuase typo
Test: make ds-docs

Bug: 37054309

Change-Id: I726ed84d62df4036cc274c48ae2f6968f2b7cc3f
Exempt-From-Owner-Approval: Docs-only change
2018-09-27 11:02:07 -07:00
John Reck
a6107c1659 Merge "De-couple RenderNode from View package" 2018-09-27 16:54:32 +00:00
TreeHugger Robot
02dd9e2556 Merge "Add pre and post callbacks to ActivityLifecycleCallbacks" 2018-09-27 16:09:00 +00:00
TreeHugger Robot
1d65ea4edd Merge "Use the background thread instead ActivityManager to update CPU stats." 2018-09-27 14:59:27 +00:00
Makoto Onuki
8426a06516 Merge "Add API surface for "keep SMS app running"." 2018-09-27 14:30:41 +00:00
Olivier Gaillard
c2d02b522c Use the background thread instead ActivityManager to update CPU stats.
Updating the CPU stats can be quite slow and blocks the ActivityManager
handler thread.

Bug: 115506775
Change-Id: I9f67acfe2724c11d117703b2c4ccdbcc1f61c5ab
Test: manual - dumpsys batterystats | grep CPU
2018-09-27 13:42:48 +00:00
Jeff Sharkey
78478b130a Merge "We still need userIds to be populated." 2018-09-27 02:16:11 +00:00
Jeff Sharkey
9144b4dd85 We still need userIds to be populated.
Fixes regression from recent security patch.

Bug: 116685315
Test: none
Change-Id: I2105d974a5a77f3a38b887c8459d893639fdffa2
2018-09-26 20:15:23 -06:00
Jeff Sharkey
7a0a11767e Merge "We still need userIds to be populated." 2018-09-27 02:14:35 +00:00
Jeff Sharkey
66768ba664 We still need userIds to be populated.
Fixes regression from recent security patch.

Bug: 116685315
Test: none
Change-Id: I2c2e3976ec7ec2b03ebee052ca8ce11b8f66495d
2018-09-26 20:13:29 -06:00
TreeHugger Robot
f5d728745d Merge "Call Scene's exit action when use TransitionManager.go() with null transition" 2018-09-27 02:04:32 +00:00
TreeHugger Robot
4bb9a2e54b Merge "Add missing TextView attributes to JavaDoc" 2018-09-27 00:36:30 +00:00
Andrey Kulikov
0a6085e87a Call Scene's exit action when use TransitionManager.go() with null transition
Bug: 65536124

When we pass null for TransitionManager.go() there is a special logic where we forgot to call previousScene.exit(), only newscene.enter() is called.

Test: added unit tests and tested manually
Change-Id: Ibd4d5a2cc17bbfe4aaa586357446da28d4b355af
2018-09-27 00:42:49 +01:00
John Reck
6b1644022b De-couple RenderNode from View package
First step of moving RenderNode to the graphics package

Test: builds
Change-Id: Ife7f5ec6698e32393d1b85ed2bad909ef0210be4
2018-09-26 16:29:32 -07:00
Wale Ogunwale
39a6834c6e Merge "Introducing PendingIntentController (17/n)" 2018-09-26 23:15:29 +00:00
Siyamed Sinir
8d14105d8c Add missing TextView attributes to JavaDoc
Test: m offline-sdk-docs
Bug: 79477441
Change-Id: I0f994008fc58ac5ddf764c286f92d20a4c4a23a4
2018-09-26 15:32:04 -07:00
Makoto Onuki
df7e481b20 Add API surface for "keep SMS app running".
Bug: 109809543
Test: build & boot
Change-Id: Ie9ebf1f34052394a92c3f260413c18596709d3a3
2018-09-26 11:51:06 -07:00
TreeHugger Robot
31fbd327de Merge "WebView: deprecate accidentally-exposed constructors" 2018-09-26 17:41:25 +00:00
TreeHugger Robot
c3c71728ce Merge "Support regular fs-verity Merkle tree" 2018-09-26 17:26:06 +00:00
Jeff Sharkey
5017286aa1 Merge "Fix ExternalStorageProvider always throw exception when rename" am: 8883851c71
am: deb51d8489

Change-Id: I4411270b371f25d7a245f163db8d1a358426b6f2
2018-09-26 09:56:21 -07:00
TreeHugger Robot
dfc12dba82 Merge "Export lib3 to AOSP (System server part)" 2018-09-26 16:53:28 +00:00
Jeff Sharkey
deb51d8489 Merge "Fix ExternalStorageProvider always throw exception when rename"
am: 8883851c71

Change-Id: I8c11434930de7f3f51fae6ca4666f1a00a265e64
2018-09-26 09:44:52 -07:00
TreeHugger Robot
cc4cb59223 Merge "add api to get sections of procstats" 2018-09-26 15:07:51 +00:00
TreeHugger Robot
dbe72a03d7 Merge "Use DisplayContext to obtain InputMethodManager in ViewRootImpl" 2018-09-26 13:12:50 +00:00
Rafal Slawik
aaf608959c Read RSS high watermark
The value is read from /proc/PID/status or memory.max_usage_in_bytes (for devices with per-app memcg enabled).

Reading the value takes about 2ms per process.
Full snapshot taken by statsd is around 300ms.

Results: https://docs.google.com/spreadsheets/d/1vG9ku8Uu8104CmKbO4cNeEKVeeByvHY--p0_dK1GAdA/edit?usp=sharing

Bug: 115477992
Test: atest FrameworksServicesTests
Change-Id: I87995cbd85085375ade685f29e986ba173f9693e
2018-09-26 09:25:01 +00:00
Wale Ogunwale
ee6eca1cf2 Introducing PendingIntentController (17/n)
Added PendingIntentController and centralize pending intent handling
in that class. Pending intents are used by activities and other components
like services and broadcasts. Since, activity handling is going to be moving
to the wm package, we need a way to access pending intents from both am and
wm packages. The PendingIntentController allows this to by not holding any
service level locks.

Bug: 80414790
Test: Existing tests pass.
Change-Id: I52f6f233b24e62839a85067556f3560dec27f0c7
2018-09-25 20:04:42 -07:00
Nate Fischer
1e13fae31c WebView: deprecate accidentally-exposed constructors
This deprecates public-exposed constructors. These constructors were
exposed by accident. These classes shouldn't be instantiated by
applications, but should only be instantiated by WebView.

In some cases, the app should get a singleton instance using
a #getInstance method. In these cases, we document this explicitly in
the deprecation note.

Bug: 110807530
Test: make docs, manually verify docs look good.
Change-Id: Ibe73b3399c9ced0cf4fbb01e1df13564476df252
2018-09-25 19:13:57 -07:00
Victor Hsieh
92513d9fea Support regular fs-verity Merkle tree
In addition to the legacy "apk-verity" Merkle tree that skips the
Signing Block, now the builder supports the regular Merkle tree.

The class and methods are made public because it will be used in
different package.

Test: atest PtsApkVerityTestCases
Test: With other changes, observe the hash matches what other tool
      generates.
Bug: 112037636
Change-Id: I3d96932cd16f4f330170547d6a7689d2997e4b85
2018-09-25 17:03:18 -07:00
Jeff Sharkey
960165c0d7 Merge "Recover shady content:// paths." 2018-09-25 23:56:56 +00:00
vnori
ac2c8a93f0 Merge "Add hidden API to return "Uploading" bit value from SDP record's MapSupportedFeatures." am: 51ec0ebbee am: 33c3ab90e0
am: 7eeb25c5fd

Change-Id: I4332451282d17e698e3f652e94f1b2463071e8a8
2018-09-25 16:47:37 -07:00
Chenjie Yu
4e028d067e add api to get sections of procstats
Add api to collect committed procstats data.
Use highwatermark from the user to filter which files to include. This
way multiple users in the system can use this api.

Also allow ProcessStats.java to dump optional ProcessStatsSectionProto
so that other users can use it.

Test: will add cts test
Change-Id: If37c0fd25814460a1c8d5996d24d138295ff6421
2018-09-25 16:41:26 -07:00
vnori
7eeb25c5fd Merge "Add hidden API to return "Uploading" bit value from SDP record's MapSupportedFeatures." am: 51ec0ebbee
am: 33c3ab90e0

Change-Id: I05c8550bfece64e52a52f580f73d873a4a9851d8
2018-09-25 16:22:08 -07:00
Tony Huang
ac45599364 Fix ExternalStorageProvider always throw exception when rename
ExternalStorageProvider always throw exception when renameDocument
because it will check file exist when getFileForDocId. However,
beforeVisibleFile is not exist after rename, it will throw
exception. Fix it by put getting beforeVisibleFile before rename.

Test: manual test rename in DocumentsUI
Test: atest RenameActualProviderUiTest
Fix: 113302685
Fix: 115304092
Change-Id: I45d60d2f940e3dbc2b121f7cd28acc3c2d085ec4
Merged-In: I45d60d2f940e3dbc2b121f7cd28acc3c2d085ec4
2018-09-25 17:20:28 -06:00
vnori
33c3ab90e0 Merge "Add hidden API to return "Uploading" bit value from SDP record's MapSupportedFeatures."
am: 51ec0ebbee

Change-Id: I9df4af670df12ac2cd379c3bbee15e63b95bbf49
2018-09-25 16:14:19 -07:00
TreeHugger Robot
e224120377 Merge "Add PermissionManager exposing SPLIT_PERMISSIONS" 2018-09-25 22:53:51 +00:00
Yohei Yukawa
bf25f9ed4e Use DisplayContext to obtain InputMethodManager in ViewRootImpl
Historically ViewRootImpl#mContext has been just pointing to the
Context instance associated with whatever first View instance that is
being added to a Window.  In other words, ViewRootImpl#mContext is not
owned by ViewRootImpl.

This can become a problem if ViewRootImpl is moved from a display to
another display with ViewRootImpl#updateInternalDisplay(), which was
added last year to support multiple displays [1], because there is no
guarantee that the target Contaxt that is pointed from
ViewRootImpl#mContext is also updated to have the new display ID.

In order to support multi-display we need to use the right Context at
least when interacting with InputMethodManager. Hence as a short term
solution this CL introduces ViewRootImpl#mDisplayContext so that the
right instance of InputMethodManager can receive callback from
ViewRootImpl. In this way, we can make sure that the behavior change
in ViewRootImple is limited to how InputMethodManager instance is
obtained.

Longer term solution will be discussed in Bug 116349163.

 [1]: I9a9501cab788623ada15a31efb53e4b2378639fe
      b047b8bd7e

Bug: 115893206
Test: atest ActivityManagerMultiDisplayTests
Test: atest CtsInputMethodTestCases CtsInputMethodServiceHostTestCases
Change-Id: Ifa0ca24e9cf764caf492ee065606680b6a06751a
2018-09-25 15:19:38 -07:00
Vasu Nori
694752d5b9 Add hidden API to return "Uploading" bit value from SDP record's MapSupportedFeatures.
Bug: 111614861
Test: tested w/ KitchenSink App
Change-Id: I43895183d7b315f57257e1d2045f17dedcb0cfcd
2018-09-25 21:39:31 +00:00
Nicole Borrelli
2bfca321cc Merge "Fix malformed Javadoc." into pi-dev am: 3ae3f252b4
am: 3d54533e52

Change-Id: I8940755ed359d4fcf6683c59c0e501c11faa4559
2018-09-25 14:24:28 -07:00
Ian Lake
b1294597c6 Add pre and post callbacks to ActivityLifecycleCallbacks
For each lifecycle event exposed in
ActivityLifecycleCallbacks, an additional pair of
methods have been added to give developers a reliable
callback before and after each lifecycle event.

The existing callbacks cannot be used for this as they
are called as part of the super implementation and
therefore can run at any point in relation to the
other code in the Activity.

Test: manual
BUG: 116118635
Change-Id: If91f3f3248f9d7cf14aac2fe24ce14d92b8d05d3
2018-09-25 14:07:26 -07:00
Nicole Borrelli
3d54533e52 Merge "Fix malformed Javadoc." into pi-dev
am: 3ae3f252b4

Change-Id: Iea60c213e70a8878baeb59b9247ae4bf0eaf5a8d
2018-09-25 14:06:49 -07:00
Philip P. Moltmann
039678e13f Add PermissionManager exposing SPLIT_PERMISSIONS
The Permission Controller app (a mainline module) needs to be able to
read the SPLIT_PERMISSIONS. Hence this array needs to be exposed at
least as system-api. We need to make sure that the PackageParser,
PackageManager and Permission Controller app agree on which permissions
are split, hence it is best to define them at a single location.

I think exposing the split permissions to developers is useless and
potentially confusing. The app should never request a permission that
was split. The app should just behave as if split permissions do not
exist. The Permission Controller / Package Manager deal with the
split permissions and add them when needed. Hence I don't think we
should expose this data to 3rd parties.

Bug: 110953302
Test: requested permissions
Change-Id: I6951c52979c89ee5c13a4a14da125e1a01f2e234
2018-09-25 13:48:11 -07:00
TreeHugger Robot
3ae3f252b4 Merge "Fix malformed Javadoc." into pi-dev 2018-09-25 20:42:50 +00:00
Jeff Sharkey
c4156e0ec4 Recover shady content:// paths.
The path-permission element offers prefix or regex style matching of
paths, but most providers internally use UriMatcher to decide what
to do with an incoming Uri.

This causes trouble because UriMatcher uses Uri.getPathSegments(),
which quietly ignores "empty" paths.  Consider this example:

    <path-permission android:pathPrefix="/private" ... />

    uriMatcher.addURI("com.example", "/private", CODE_PRIVATE);

    content://com.example//private

The Uri above will pass the security check, since it's not
technically a prefix match.  But the UriMatcher will then match it
as CODE_PRIVATE, since it ignores the "//" zero-length path.

Since we can't safely change the behavior of either path-permission
or UriMatcher, we're left with recovering these shady paths by
trimming away zero-length paths.

Bug: 112555574
Test: atest android.appsecurity.cts.AppSecurityTests
Test: atest FrameworksCoreTests:android.content.ContentProviderTest
Change-Id: Ibadbfa4fc904ec54780c8102958735b03293fb9a
2018-09-25 14:10:15 -06:00
TreeHugger Robot
d6fb462d1e Merge "Remove a special optimization for a quite rare scenario" 2018-09-25 20:09:05 +00:00