Commit Graph

9049 Commits

Author SHA1 Message Date
Automerger Merge Worker
f550750784 Merge "Fix overlaying shared libraries" into rvc-dev am: dc65c78fcf am: 4e71e80108 am: e9edcb802e am: e775d32193
Change-Id: Id5a857191c54ee0ca13f28fef067c32887c7ac23
2020-03-02 17:48:28 +00:00
Ryan Mitchell
dc65c78fcf Merge "Fix overlaying shared libraries" into rvc-dev 2020-03-02 16:51:56 +00:00
Ryan Mitchell
41b93d8caa Fix overlaying shared libraries
Overlaying shared library support accidentally got dropped while
refactoring internal PMS structure.getAllOverlayPaths includes shared
library overlay paths.

Bug: 150446147
Test: OverlayRemountedTest
Change-Id: I5eed0f219c85156c753df6ff829970e1c4e4c4de
2020-02-28 11:40:44 -08:00
Peter Wang
879f32b1cc Merge "[API Review] Expose sendOrderedBroadcast" into rvc-dev 2020-02-28 19:05:26 +00:00
Automerger Merge Worker
d8b147c05d Merge "Skip no-state checkUseInstalled check inside PackageInfoUtils" into rvc-dev am: a57109b660 am: c5fa94559c am: bd300dec2f am: 3d8a9126a6
Change-Id: Icc5d32df319d653183b834d7408943b89eafa832
2020-02-28 07:34:09 +00:00
Winson
d2732995bb Skip no-state checkUseInstalled check inside PackageInfoUtils
PackageInfoWithoutStateUtils is designed for use in core when
the caller doesn't have a PackageSeting.

Because its generic generateApplicationInfo method does a simplified
checkUseInstalled check without the PackageSetting, this fails whenever
state must be taken into account.

This introduces method variants which skips the checks and defers to
PackageInfoUtils's own check.

Bug: 150328400

Test: manual verify call into PackageManager#setSystemAppState with
    SYSTEM_APP_STATE_UNINSTALLED and verify
    PackageManager#getApplicationInfo throws NameNotFoundException
    without fix and succeeds with fix
Test: atest com.android.server.pm.parsing
Test: TODO PackageInfo(WithoutState)Utils test in follow up change

Change-Id: Ie00984c2e1b80d2a3948923dc1293fbfddf01037
2020-02-27 17:07:51 -08:00
Automerger Merge Worker
e41d775033 Merge "Merge changes from topic "actor-signature-policy-rvc-dev" into rvc-dev am: b0c5105b2d am: e6df1e9de3 am: 01fdeba08b" into rvc-qpr-dev-plus-aosp am: 9b362ff9b7
Change-Id: Ia5869204383ae3fb270723874c468fb7a6205d0b
2020-02-27 19:17:45 +00:00
Automerger Merge Worker
5caf1948e8 Merge "Include pending media as well when deleting mediastore entries." into rvc-dev am: 442399b1c1 am: 377d13b37e am: 49cf50aef9 am: f5f2b98b63
Change-Id: I504020913aca72138b00dd2e04553e974e007adf
2020-02-27 18:33:29 +00:00
Winson Chiu
b0c5105b2d Merge changes from topic "actor-signature-policy-rvc-dev" into rvc-dev
* changes:
  Actor signature overlayable policy
  Refactor overlayable policy
2020-02-27 18:27:53 +00:00
Sudheer Shanka
442399b1c1 Merge "Include pending media as well when deleting mediastore entries." into rvc-dev 2020-02-27 17:49:53 +00:00
Winson
f56ade365a Actor signature overlayable policy
There are cases where an app can ship overlays for itself,
but the "signature" policy as described would open up
a vulnerability by allowing the system actor to create
and sign any arbitrary overlay that will apply to the target.

To prevent this, redefine "signature" as target package only,
and introduce "actor" for checking against the actor signature.
Any app that wishes to use both can include both policies.

Bug: 130563563

Test: m aapt2_tests idmapt2_tests and run from host test output
Test: atest libandroidfw_tests

Change-Id: I1c583a5b37f4abbeb18fc6a35c502377d8977a41
2020-02-26 15:59:44 -08:00
Peter Wang
2361687bec [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-26 15:58:33 -08:00
Peter Wang
8c36fd1057 Merge "[API Review] Expose sendOrderedBroadcast" 2020-02-26 21:26:39 +00:00
Automerger Merge Worker
1551fb7ac8 Merge "Restore UnsupportedAppUsage method call" into rvc-dev am: da043aee24 am: 0233f238db am: 9315a51ac6 am: 9c4af35003
Change-Id: I52f17a082c8eb6bf845ee3fbda1c8b51d50d17c9
2020-02-26 03:49:12 +00:00
Peter Wang
f1fcb9e6a8 [API Review] Expose sendOrderedBroadcast
with appOp as String and options as Bundle

Bug: 139077993
Bug: 146423958
Test: Build
Change-Id: I5325e08d60016741139251813a5df9b42f2efc82
2020-02-25 14:40:47 -08:00
Ryan Mitchell
93f2b3f9a2 Restore UnsupportedAppUsage method call
4579c0aea2 changed the method signature
of the constructor of ResourcesKey, which is marked
UnsupportedappUsage. Restore the previous signature and provide a new
constructor that is hidden.

Bug: 147359613
Test: none
Change-Id: I391167e9064b1d88f4ad75200a190e5e3b0968cf
2020-02-25 22:10:22 +00:00
Automerger Merge Worker
05e70b1ed6 Merge "Updating documentation for isDefaultApplicationIcon API" into rvc-dev am: 9962f03b77 am: e2de88b6a4 am: b8655e302a am: ada481dcf9
Change-Id: I4a60085142513a1602429c9058b78beaa6cfc98b
2020-02-25 18:46:35 +00:00
Sunny Goyal
9962f03b77 Merge "Updating documentation for isDefaultApplicationIcon API" into rvc-dev 2020-02-25 17:46:23 +00:00
Makoto Onuki
9577cd78ff Merge "Squash same ApplicationInfo's in Parcel" into rvc-dev 2020-02-25 15:17:14 +00:00
Galia Peycheva
641e2e6361 Create DreamManager System Server TestApi
Bug: 141771803
Bug: 133216167

Test: atest DreamManagerServiceTests
Test: make checkbuild

Merged-In: I937061138bc8ccaf4475674f00331c3fe1c5a495
Change-Id: I937061138bc8ccaf4475674f00331c3fe1c5a495
(cherry picked from commit 4467c53c11)
2020-02-25 12:32:02 +00:00
Sunny Goyal
c25c4bb378 Updating documentation for isDefaultApplicationIcon API
Bug: 149758817
Test: N/A
Change-Id: Iaa9b29f55087204f4af849a384cb6c9b01df4465
2020-02-24 15:16:08 -08:00
Makoto Onuki
2d80ca09fc Squash same ApplicationInfo's in Parcel
ApplicationInfo now automatically tries to "squash" the same instances in a
Parcel.

NOTE: This CL still does *not* optimize the package manager APIs that return a
list. e.g. PM.queryContentProviders() still return duplicate AppInfo's.
We can optimize them by making ParcelableListSlice call "allowSquashing",
but that *could* have negative side effects, so I'm not doing it in this CL.
I think we can do that for S.

Bug: 148588589
Test: atest CtsContentTestCases # except for two preexsiting failures:
- android.content.pm.cts.PackageManagerTest#testGetIcon
- android.content.pm.cts.PackageManagerTest#testGetPreferredActivities

Test: Use the debugger and make sure bindApplication() is not receiving
duplicate AppInfo's in the provider list.

Change-Id: I3ba2c047a469169340c0f75c36bdfd394bc5d627
(cherry picked from commit 7d09275d70)
2020-02-24 22:22:13 +00:00
Sudheer Shanka
7d28b5bf81 Include pending media as well when deleting mediastore entries.
Bug: 146914674
Bug: 140565622
Bug: 137381621
Test: manual
Change-Id: I903a13deb467b45839a7d03b60754c8fc464456c
2020-02-24 05:50:33 +00:00
Eugene Susla
1db6750121 Merge "Introduce a manifest flag for auto-revoke exemption request" 2020-02-22 03:14:38 +00:00
Makoto Onuki
dd70ba27c1 Merge "Squash same ApplicationInfo's in Parcel" 2020-02-22 01:58:36 +00:00
Robin Lee
05b1a38f20 Merge changes from topic "cts_dream"
* changes:
  Create DreamManager System Server TestApi
  Add startDreamActivity request verification
  Make DreamService use an Activity
  Clean up dreamland
2020-02-22 01:06:25 +00:00
Eugene Susla
76badfcf14 Introduce a manifest flag for auto-revoke exemption request
The implementation will filter apps eligible to receive exemption from
permission auto-revoke to just the apps that declare feature usage.

Having the manifest declaration is important for us to be able to
implement a whitelist policy.

Bug: 146513245
Test: lint/presubmit
Change-Id: I87652c276568bf2dd1c48f7cacebbc930334a7c4
2020-02-21 15:52:24 -08:00
Evan Severson
2aa3230ca0 Merge "Add method to give a permission revoke a reason" 2020-02-21 23:16:09 +00:00
Julius D'souza
4358010076 Merge "Add background thread notes for package restriction serialisation." 2020-02-21 23:08:52 +00:00
Makoto Onuki
7d09275d70 Squash same ApplicationInfo's in Parcel
ApplicationInfo now automatically tries to "squash" the same instances in a
Parcel.

NOTE: This CL still does *not* optimize the package manager APIs that return a
list. e.g. PM.queryContentProviders() still return duplicate AppInfo's.
We can optimize them by making ParcelableListSlice call "allowSquashing",
but that *could* have negative side effects, so I'm not doing it in this CL.
I think we can do that for S.

Bug: 148588589
Test: atest CtsContentTestCases # except for two preexsiting failures:
- android.content.pm.cts.PackageManagerTest#testGetIcon
- android.content.pm.cts.PackageManagerTest#testGetPreferredActivities

Test: Use the debugger and make sure bindApplication() is not receiving
duplicate AppInfo's in the provider list.

Change-Id: I3ba2c047a469169340c0f75c36bdfd394bc5d627
2020-02-21 14:19:43 -08:00
Julius D'souza
5745b057ec Add background thread notes for package restriction serialisation.
Serialising package restrictions uses synchronous disk access; callers
of these methods should probably use background threads for this.

Bug: 149216360
Test: TreeHugger
Change-Id: I6607a7225bf7daaad8a78e4d1e4c585ba5ac3efc
Signed-off-by: Julius D'souza <jdsouza@google.com>
2020-02-21 12:49:40 -08:00
Tim Murray
8a9c5795e0 Merge "Cache package and permission information" 2020-02-21 20:22:19 +00:00
Galia Peycheva
4467c53c11 Create DreamManager System Server TestApi
Bug: 141771803
Bug: 133216167

Test: atest DreamManagerServiceTests
Test: make checkbuild

Change-Id: I937061138bc8ccaf4475674f00331c3fe1c5a495
2020-02-21 19:29:05 +00:00
Danning Chen
876a4ab9c0 Merge "Adds ShortcutChangeCallback in LauncherApps - Service side" 2020-02-20 20:28:08 +00:00
Mehdi Alizadeh
b754b7ac7a Adds ShortcutChangeCallback in LauncherApps - Service side
Bug: 148615405
Test: atest com.android.server.pm.ShortcutManagerTest1 \
            com.android.server.pm.ShortcutManagerTest2 \
            com.android.server.pm.ShortcutManagerTest3 \
            com.android.server.pm.ShortcutManagerTest4 \
            com.android.server.pm.ShortcutManagerTest5 \
            com.android.server.pm.ShortcutManagerTest6 \
            com.android.server.pm.ShortcutManagerTest7 \
            com.android.server.pm.ShortcutManagerTest8 \
            com.android.server.pm.ShortcutManagerTest9 \
            com.android.server.pm.ShortcutManagerTest10

Change-Id: Ida60b2d0b3d5792e7013ffa703b2f3b45361a4db
2020-02-20 10:05:54 -08:00
Dmitri Plotnikov
23132a29eb Merge "Add async version of "canonicalize"" 2020-02-20 17:42:52 +00:00
Daniel Colascione
a46b7b3f5e Cache package and permission information
We use the package settings class as a central point for invalidating
on package information changes; for permission changes, we invalidate
from inside the individual permission data objects.

Bug: 140788621
Test: boots, package tests (pending)
Change-Id: Iec14d4ec872124e7ef4612c72d94c89a7319ace0
2020-02-20 09:24:32 -08:00
Charles Chen
c56ce6fd08 Merge "Exempt-From-Owner-Approval: Report non-visual Context misuse" 2020-02-20 12:30:06 +00:00
Alex Kershaw
f0f598a711 Merge "Enforce the cross-profile intent check." 2020-02-20 11:40:54 +00:00
Mehdi Alizadeh
f1bdf99b89 Merge "Adds ShortcutManager#pushDynamicShortcut(ShortcutInfo)" 2020-02-20 03:06:28 +00:00
Andrii Kulian
5877c7d6c0 Exempt-From-Owner-Approval: Report non-visual Context misuse
Make obtaining a visual service from non-visual Context instance
report a strict mode violation and print the stacktrace.

Make calling getDisplay() throw an exception if called on an instance
that is not associated with a display. For existing usages introduce
a new internal method that does not perform the verification until
the usages are properly fixed.

Bug: 128338354
Test: StrictModeTest#testIncorrectContextUse_GetSystemService
Test: StrictModeTest#testIncorrectContextUse_GetDisplay
Change-Id: Id25d590eca6e10066e55d7ed6436d3bc9e433beb
2020-02-20 01:29:25 +00:00
Automerger Merge Worker
cc5a5939a0 Merge "Revert "Revert "[DexLoadReporter] Report classloader contexts di..."" am: 1ee3e70cf3 am: 2cef69cb5f am: a2c3c9fe10
Change-Id: I6d7ba01f4083ed01eea0ec0dda0b69f27a4b1346
2020-02-19 23:19:40 +00:00
Khaled Abdelmohsen
41456aa99c Create rule atom for source stamp
Bug: 149200249
Test: atest FrameworksCoreTests:IntegrityFormulaTest
Change-Id: I8a5ca33e8b2b125a8b7bc178557b7689c0eab50d
2020-02-19 22:41:16 +00:00
Evan Severson
43b2a199ab Add method to give a permission revoke a reason
Test: Compile
Bug: 149861310
Change-Id: I865a300a9795550a2549f928f4e967b2b695439e
2020-02-19 14:23:56 -08:00
Winson Chiu
633cd037f7 Merge changes from topics "package-parsing-v2.1", "parsing-parsed-package-split"
* changes:
  Remove AndroidPackageWrite
  Migrate to new ParsedComponents and ParseResult
  Split ParsedComponents
  Add ParseResult infrastructure
  ParsingPackage/ParsedPackage test code migration
  ParsingPackage/ParsedPackage split source migration
  Important migration for new ParsingPackage/ParsedPackage split
  Separate ParsingPackage into core and ParsedPackage into server
2020-02-19 22:16:15 +00:00
Automerger Merge Worker
a2c3c9fe10 Merge "Revert "Revert "[DexLoadReporter] Report classloader contexts di..."" am: 1ee3e70cf3 am: 2cef69cb5f
Change-Id: I6146cfbbd0a8214e476e50b359ce5474e6d5070c
2020-02-19 20:12:07 +00:00
Dmitri Plotnikov
7a223fbcf1 Add async version of "canonicalize"
Fixes: b/147699082
Test: atest FrameworksCoreTests:android.content.ContentResolverTest
Change-Id: I2e851839a454ad5eabc981c76774d03b57a1aa09
2020-02-19 11:58:26 -08:00
Mehdi Alizadeh
413e8fa698 Adds ShortcutManager#pushDynamicShortcut(ShortcutInfo)
Bug: 137397357
Bug: 148561453
Test: atest com.android.server.pm.ShortcutManagerTest1 \
            com.android.server.pm.ShortcutManagerTest2 \
            com.android.server.pm.ShortcutManagerTest3 \
            com.android.server.pm.ShortcutManagerTest4 \
            com.android.server.pm.ShortcutManagerTest5 \
            com.android.server.pm.ShortcutManagerTest6 \
            com.android.server.pm.ShortcutManagerTest7 \
            com.android.server.pm.ShortcutManagerTest8 \
            com.android.server.pm.ShortcutManagerTest9 \
            com.android.server.pm.ShortcutManagerTest10

Change-Id: I20585a978bfee961df3326f38b11766ea403a5cd
2020-02-19 11:57:21 -08: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