Commit Graph

6019 Commits

Author SHA1 Message Date
Adam Lesinski
6036449709 Merge "OMS: Only allow trusted overlays to be registered." into oc-mr1-dev
am: a06854e77a

Change-Id: I9d4f214b3911fb66fd2baa8ad83e8450246c3c80
2017-12-12 23:36:57 +00:00
TreeHugger Robot
a06854e77a Merge "OMS: Only allow trusted overlays to be registered." into oc-mr1-dev 2017-12-12 21:48:11 +00:00
Adam Lesinski
80609e584c OMS: Only allow trusted overlays to be registered.
Bug: 69383160
Test: cts-tradefed run cts -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.OverlayHostTest
Change-Id: I930c11716317cff1ec485a3943d1f22f07a423df
Merged-In: I930c11716317cff1ec485a3943d1f22f07a423df
2017-12-07 19:39:49 +00:00
Jeff Sharkey
ff8201b34b Merge changes from topic "predicates_aosp" am: 76c275e7d3
am: 28f32f26b7

Change-Id: Ic3847aeda3c4d9d62432bf5918c83174e409b871
2017-12-07 18:31:52 +00:00
Jeff Sharkey
76c275e7d3 Merge changes from topic "predicates_aosp"
* changes:
  Deeper sanity checking of emitted types.
  Emit all APIs using Predicates.
  Massage APIs for upcoming doclava change.
2017-12-07 16:39:39 +00:00
Neil Fuller
ac8f2c94fd Merge "Fix doc typo. Improve class javadoc..." am: e08f918a6e
am: 26d28ef826

Change-Id: I7db3a33c933142806cbae90423044ccbac061868
2017-12-07 14:28:32 +00:00
Neil Fuller
e08f918a6e Merge "Fix doc typo. Improve class javadoc..." 2017-12-07 11:02:52 +00:00
Jeff Sharkey
2337aec921 Deeper sanity checking of emitted types.
When emitting a method or field, verify that we're able to reference
all mentioned types.  This ensures that we don't accidentally
reference undefined classes/interfaces.

Test: manual inspection of API files
Bug: 69791141
Change-Id: I84e0c87fe83daa118661f61dbdf17b58ea5282d4
Merged-In: I84e0c87fe83daa118661f61dbdf17b58ea5282d4
2017-12-07 00:22:25 -07:00
Neil Fuller
3ee89770bf Fix doc typo. Improve class javadoc...
Fix doc typo (value -> valid). Improve class javadoc,
fix lint error in import ordering.

Test: Build
Change-Id: I8899b1f568e052a3d152e6c36fca4d6bbf9584f2
2017-12-04 15:19:28 +00:00
Jon Dormody
c0c7c3bcbb Merge "Docs: Renamed ParcelFileDescritor to ParcelFileDescriptor Test: make ds-docs Bug: 1766768" into oc-dev am: ce7f1e6601 am: 3ba37e1f53
am: 96dad7e0a3

Change-Id: Ib8bbd7fa3dfc9ee5caa3b9f7f2696c7461c3faf3
2017-12-01 16:40:51 +00:00
Jon Dormody
f506b49aa6 Merge "Docs: Added mention that the getSharedPreferences method is thread safe." into oc-dev am: fb839ce59a am: 728ca235b5
am: 37db2694eb

Change-Id: I98151cf907cd2f635c8f4a0e128ff697024b3a54
2017-12-01 16:28:29 +00:00
Jon Dormody
96dad7e0a3 Merge "Docs: Renamed ParcelFileDescritor to ParcelFileDescriptor Test: make ds-docs Bug: 1766768" into oc-dev am: ce7f1e6601
am: 3ba37e1f53

Change-Id: Ia807c8ccd0db5b37b010f64a417fc8e105c22866
2017-12-01 16:28:14 +00:00
Jon Dormody
37db2694eb Merge "Docs: Added mention that the getSharedPreferences method is thread safe." into oc-dev am: fb839ce59a
am: 728ca235b5

Change-Id: Ib6d81f2355ef9d902725e2e1ee1cd5337f4294ad
2017-12-01 16:16:53 +00:00
Jon Dormody
3ba37e1f53 Merge "Docs: Renamed ParcelFileDescritor to ParcelFileDescriptor Test: make ds-docs Bug: 1766768" into oc-dev
am: ce7f1e6601

Change-Id: If7798db1aea1f1d6cdb42a7d25509c814a31f6ca
2017-12-01 16:14:15 +00:00
Jon Dormody
728ca235b5 Merge "Docs: Added mention that the getSharedPreferences method is thread safe." into oc-dev
am: fb839ce59a

Change-Id: Ic135f510c6e5ff8a9a00f2d2be1fcc0c284dd5cf
2017-12-01 16:07:27 +00:00
Jon Dormody
ce7f1e6601 Merge "Docs: Renamed ParcelFileDescritor to ParcelFileDescriptor Test: make ds-docs Bug: 1766768" into oc-dev 2017-12-01 15:53:36 +00:00
Jonathan Dormody
1c7c4b2f14 Docs: Renamed ParcelFileDescritor to ParcelFileDescriptor
Test: make ds-docs
Bug: 1766768

Change-Id: Idfea122569bb6f80889be3f224f9629cfebc0ca3
2017-11-30 22:25:42 +00:00
Nikolas Bravo
cde72f1be7 Fixes javadoc documentation of PackageInstaller.SessionParams#setOriginatingUid(int)
am: 8aaf928fcd

Change-Id: I4a2efd6052b1bcc5344fd23722745b3532fb01c9
2017-11-27 22:29:21 +00:00
Nikolas Bravo
8aaf928fcd Fixes javadoc documentation of PackageInstaller.SessionParams#setOriginatingUid(int)
* Current "See also" link in https://developer.android.com/reference/android/content/pm/PackageInstaller.SessionParams.html#setOriginatingUid(int) is not only wrong, but also broken
* Added a missing "the"

Bug: 69799046
Fixes: 69799046
Test: make ds-docs (run by asolovay@)
Change-Id: I90410ed3393b5c37afdf0476eb70821fae9f63fd
(cherry picked from commit 6283100a87)
2017-11-27 19:50:40 +00:00
Jonathan Dormody
1bca5db0cb Docs: Added mention that the getSharedPreferences method is thread
safe.

Test: make ds-docs

Bug: 5370116
Change-Id: I5aa851db5e1dbcb3563f1ce15f96cc10c80e90ba
2017-11-16 11:25:20 -07:00
Bryce Lee
a4ceea026d DO NOT MERGE Remove orientation restriction to only fullscreen activities.
This changelist removes checks that enforce that only fullscreen,
opaque activities may request orientation changes. An application
may itself be compatible with the change and update their SDK level.
However, it is possible they use a library that has not itself been
updated and still leverages this feature for non-fullscreen
activities.

Fixes: 68684796
Test: bit FrameworksServicesTests:com.android.server.wm.AppWindowTokenTests

Change-Id: I75bbda96b132694c722b0b535e33ea5e1b9a55db
2017-11-13 21:00:17 +00:00
Calin Juravle
9aab3b513d Handle configuration splits when creating the class loader context
Configuration splits have no dependencies which can lead to exceptions
when computing their class loader context.

In general, we do not need to compute the class loader context for apks
without code.

This CL addresses the issue by ignoring "code" paths with no actual code.

(cherry picked from commit da09815e2c)

Bug: 65159159
Test: adb install-multiple config_splits
      runtest -x
services/tests/servicestests/src/com/android/server/pm/dex/DexoptUtilsTest.java

Merged-In: Ida1eb901eecba4a4266de73022f6ee4659367873
Change-Id: Ida1eb901eecba4a4266de73022f6ee4659367873
2017-11-02 09:27:59 -07:00
Sunny Goyal
ced997ec10 Preventing recursive referrence in drawables
am: 99b25d2817

Change-Id: I1c23d40e590d6d8bb21f6734a106d0ee217b6672
2017-11-02 04:46:07 +00:00
Sunny Goyal
99b25d2817 Preventing recursive referrence in drawables
Bug: 68706673
Bug: 66498711
Test: Added CTS tests
Change-Id: I8034f49d16f9a7bc1749714fd6d6231bba5088d0
2017-11-02 04:31:12 +00:00
Bryce Lee
fbddd89e93 Merge "DO NOT MERGE Remove orientation restriction to only fullscreen activities." into oc-mr1-dev
am: 0be61c662b

Change-Id: I8db0cda8ce289423b9f63d3dc1b2598e951e1e2d
2017-11-02 01:14:49 +00:00
Calin Juravle
a18e992770 Use the class loader context when optimizing secondary dex files
Record the class loader context for secondary dex loads and pass it to
dexopt during compilation.

The class loader context is passed from libcore every time a
BaseDexClassLoader is created and its recorded in the package dex usage
file.

Note that the context may be:
- unknown: if the dex file was not use after the the upgrade and its
context was not yet updated
- unsupported: if any of the class loaders from the loading context is
unsupported (only PathClassLoader and DelegateLastClassLoader are
supported).
- variable: if it changes over time, form one run to another.

In all the above cases the old compilation behavior is preserved for
now.(i.e. the dex file with be compiled with SKIP_SHARED_LIBRARY_CHECK)

(cherry picked from commit f1ff36f0f9)

Bug: 38138251
Test: runtest -x
services/tests/servicestests/src/com/android/server/pm/dex/
      adb shell cmd package compile -f -m quicken ^Csecondary-dex
com.google.android.gms

(cherry picked from commit 3bec94d78b)

Merged-In: Ie8b78c7c0d5de43733b3d116f8dcb3a65324cca8
Change-Id: Ie8b78c7c0d5de43733b3d116f8dcb3a65324cca8
2017-11-01 13:07:34 -07:00
Bryce Lee
a89b183ef9 DO NOT MERGE Remove orientation restriction to only fullscreen activities.
This changelist removes checks that enforce that only fullscreen,
opaque activities may request orientation changes. An application
may itself be compatible with the change and update their SDK level.
However, it is possible they use a library that has not itself been
updated and still leverages this feature for non-fullscreen
activities.

Fixes: 68684796
Test: bit FrameworksServicesTests:com.android.server.wm.AppWindowTokenTests

Change-Id: Ib5a60f0b660ad145d07e953e541a0a1b801aeef2
2017-10-31 18:29:34 -07:00
Calin Juravle
caed6000be Add a command line option to optimize individual splits
The new option is "--split SplitName" and applies to "adb shell cmd
package compile" command.

Usage example:
adb shell cmd package compile -m speed --split split_feature_a.apk
com.android.cts.classloadersplitapp

(cherry picked from commit b6f844d28c)

Bug: 38138251

Test: adb install-multiple CtsClassloaderSplitApp.apk
CtsClassloaderSplitAppFeatureA.apk CtsClassloaderSplitAppFeatureB.apk
      adb shell cmd package compile -m speed --split split_feature_a.apk
com.android.cts.classloadersplitapp
      check the status of split_feature_a
      runtest -x
services/tests/servicestests/src/com/android/server/pm/dex/DexoptOptionsTests.java

Merged-In: I579bb12fa6699f99cd3824f185bd9352fb8007c5
Change-Id: I579bb12fa6699f99cd3824f185bd9352fb8007c5
2017-10-31 14:51:57 -07:00
Calin Juravle
dea3fd8cf1 Refactor the arguments passed to dexopt invocations
Wrap the arguments passed to the various performDexopt calls into the
DexoptOptions object.

This will make adding extra arguments (like compile only a split) much
easier and avoid extending quite a few internal methods.

(cherry picked from commit 1d0e83d2ce)

Bug: 38138251
Test: adb shell cmd package compile ....
      adb shell cmd package bg-dexopt-job ...
      install new apps and check that they compiled
      runtest -x
services/tests/servicestests/src/com/android/server/pm/dex/DexoptOptionsTests.java

Merged-In: Ia9930edd2dceb7535d6168eceb8e3199c82b6306
Change-Id: Ia9930edd2dceb7535d6168eceb8e3199c82b6306
2017-10-31 14:51:57 -07:00
Shubham Ajmera
3aeca17aa9 Reduce app size by downgrading inactive apps
This will trigger when the device will have low space.
Active apps here refer to the apps which were either active
in foregrond or in background and also used by other packages.
Apps which are inactive for X days downgraded to verify. X is
determined by sysprop pm.dexopt.unopt_after_inactive_days

If the system properties are not set, no effect will take place.

The above operations will take place in background dexopt service.
If user uses the app again, it will again be speed-compiled when
background dexopt service starts next time.

(cherry picked from commit 246dccf932)

Bug: 36598475
Test: manual
* Remove the check in the code that allows downgrade only when
  the space is low on the device.
* adb root
* Set pm.dexopt_unopt_after_inactive_days to 600
* Make sure the current time of the device is correctly set
* Install 2 non system apps - B, C
* Downgrade B to extract
* Upgrade a system apps to speed-profile - E
* Downgrade a system app to quicken - G
* adb shell cmd package bg-dexopt-job

Expected Results:
* Extract - B
* Verify - C
* There should not be any entries for apps E an G
  in dalvik_cache

Merged-In: I68f9f617d6722a7ba8b00aa2181cb38a165cfc51
Change-Id: I68f9f617d6722a7ba8b00aa2181cb38a165cfc51
2017-10-31 14:51:57 -07:00
Svet Ganov
9a7a6e2000 Merge "Preserve ranking attrs of resolve infos for installing a feature split" into oc-mr1-dev
am: 8f231b7aa6

Change-Id: Id85257c481a7d4e387ffc6ee628bfd2986ab5b3c
2017-10-19 03:26:00 +00:00
Svet Ganov
d96953ad7a Preserve ranking attrs of resolve infos for installing a feature split
If an intent resolves to an activity in a fearture split not on the device
we create a synthetic resolve info to involve the installer that replaces
the resolve info for the missing activity. The synthetic resolve info was
not inheriting the priority/preferred order/default status resulting in a
different result ranking than what original resolve info would produce,
hence affecting resolution. Activities in a feature split should resolve
as if they are present on the device.

Also when downloading a feature split we involve the instant app installer
which resuls in a disabmiguation UI item "Instant app" with an instant app
icon despite that in this case the synthetic resolve info is for downloading
a piece of an already installed app (standard or instant). When installing
a feature spluit the user should see UI as if the piece of the app would
handle the intent.

Test: manual

bug:67710878

Change-Id: I8dd356c7b2c9742144f10e5b48daf5b28f6934ad
2017-10-18 17:29:28 -07:00
Hyunyoung Song
3702ce391d Merge "Wrap StackOverflowError in NotFoundException. Bug: 67462465 Test: builds and tested using faulty apk with recursive drawable. Change-Id: I47691343dae892beb5ed8c1c66c33edefade321e" into oc-mr1-dev
am: 384689934d

Change-Id: Id4885fe270e24d54830d6858e37487de551a3f52
2017-10-10 22:30:23 +00:00
Hyunyoung Song
dc92d925d8 Wrap StackOverflowError in NotFoundException.
Bug: 67462465
Test: builds and tested using faulty apk with recursive drawable.
Change-Id: I47691343dae892beb5ed8c1c66c33edefade321e
2017-10-10 12:41:05 -07:00
Felipe Leme
63b45a87d5 Merge "Sets AutofillClient on attachBaseContext()" into oc-mr1-dev
am: 6d17d9d0cf

Change-Id: I4b1d2a4e308a91d15282ae99ee158b7004b91211
2017-10-04 22:25:18 +00:00
Felipe Leme
bb567ae6c0 Sets AutofillClient on attachBaseContext()
When an activity overrides attachBaseContext(), the attached context must share
the same AutofillCient, otherwise it will break autofill in the activity.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.AttachedContextActivityTest
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 67350639

Change-Id: I6b0c4c2fab5fa68eb6ee0714e107ca0816efb2cb
2017-10-04 12:23:23 -07:00
nharold
80b90ed99a Merge changes from topic "re-enable-ipsec" am: 680525c742 am: 8d306cd78a
am: 80107540bb

Change-Id: I13a7134864a648aff9338fda044b3bffd653119e
2017-09-26 22:39:01 +00:00
nharold
8d306cd78a Merge changes from topic "re-enable-ipsec"
am: 680525c742

Change-Id: Ia1d1f3981a9dd1eb8f60631d318211daf135d575
2017-09-26 22:13:20 +00:00
nharold
680525c742 Merge changes from topic "re-enable-ipsec"
* changes:
  Re-Expose IpSecService API Surface
  Re-Enable Starting of the IpSecService
2017-09-26 21:46:39 +00:00
Christopher Schuster
ef34f7b35d Merge "fixed handling of data URI schemes in Intent.toUri" am: c3d3cf5666 am: 928b7cba47
am: 067cfb369d

Change-Id: I811b1b7e0b62d4143292a94fd4b5478f74cdec24
2017-09-22 20:00:45 +00:00
Christopher Schuster
928b7cba47 Merge "fixed handling of data URI schemes in Intent.toUri"
am: c3d3cf5666

Change-Id: Id4b8ef16f7a428e6c3d8b382387cf575d05926ad
2017-09-22 15:02:03 +00:00
Christopher Schuster
42c3a6e6af fixed handling of data URI schemes in Intent.toUri
Data URIs in intents can use schemes with digits and some special
characters (see RFC 2396 and 3986). This patch fixes how these
data URIs are handled by Intent.toUri to support these schemes.

Bug: 63930680
Test: run cts android.content.cts.IntentTest#testUris
Change-Id: I0dbb72325f59f372abba83be9e14c59d5665a053
Signed-off-by: Christopher Schuster <levjj@google.com>
2017-09-21 15:20:16 +00:00
Nathan Harold
d999d225a8 Re-Expose IpSecService API Surface
Note, This reverts commit bd62d6aff2.

Bug: 64800246
Test: compilation
Change-Id: I709d4c476647cfe9f6b982fc373f8d76018b3922
2017-09-12 19:25:13 -07:00
Calin Juravle
ed54b41e3c Merge "Handle configuration splits when creating the class loader context" into oc-mr1-dev 2017-09-08 21:55:28 +00:00
Calin Juravle
da09815e2c Handle configuration splits when creating the class loader context
Configuration splits have no dependencies which can lead to exceptions
when computing their class loader context.

In general, we do not need to compute the class loader context for apks
without code.

This CL addresses the issue by ignoring "code" paths with no actual code.

Bug: 65159159
Test: adb install-multiple config_splits
      runtest -x
services/tests/servicestests/src/com/android/server/pm/dex/DexoptUtilsTest.java

Change-Id: Ida1eb901eecba4a4266de73022f6ee4659367873
2017-09-06 23:31:53 -07:00
TreeHugger Robot
8bb58a145c Merge "Add internal implementation for notifyPackageUse" into oc-mr1-dev 2017-09-05 16:28:13 +00:00
Todd Kennedy
df113c36a7 Add internal implementation for notifyPackageUse
We have checks that prevent applications from modifying the usage
times of instant apps [and vice versa]. However, it's critical for
internal components such as the ActivityManager to be able to upate
this for all packages. Add an internal implementation of this
method that skips the checks.

Change-Id: Ib890296065024104cdaf7c8d64a5a7583d9062c1
Fixes: 65228752
Test: Manual. Run an application installed as an "instant app" and notice the usage time goes up
2017-08-31 16:10:29 -07:00
Yohei Yukawa
8f272178a0 Fix wrong dump output of *Info#flags
This CL follows up to a previous CL [1] that introduced an ability to
control filtering level of
 - ActivityInfo#dump()
 - ApplicationInfo#dump()
 - ComponentInfo#dump()
 - ProviderInfo#dump()
 - ResolveInfo#dump()
 - ServiceInfo#dump()
but also masked following outputs as an unexpected side effect.
 - ActivityInfo#flags
 - ApplicationInfo#flags
 - ProviderInfo#flags
 - ServiceInfo#flags

With this CL, above *Info#flags are correctly dumped again.

 [1]: I0d01565babb87e68b840c9756a2ea730d699efc7
      6ac42aeed9

Test: Manually tested as follows.
 1. make -j SoftKeyboard
 2. adb install -r $OUT/system/app/SoftKeyboard/SoftKeyboard.apk
 3. adb shell dumpsys input_method
    -> Check 'com.example.android.softkeyboard' section
      -> make sure ServiceInfo#flags=0x0
      -> make sure ApplicationInfo#flags=0x38a8be44
           FLAG_HAS_CODE (1<<2)
           FLAG_ALLOW_CLEAR_USER_DATA (1<<6)
           FLAG_SUPPORTS_SMALL_SCREENS (1<<9)
           FLAG_SUPPORTS_NORMAL_SCREENS (1<<10)
           FLAG_SUPPORTS_LARGE_SCREENS (1<<11)
           FLAG_RESIZEABLE_FOR_SCREENS (1<<12)
           FLAG_SUPPORTS_SCREEN_DENSITIES (1<<13)
           FLAG_ALLOW_BACKUP (1<<15)
           FLAG_SUPPORTS_XLARGE_SCREENS (1<<19)
           FLAG_STOPPED (1<<21)
           FLAG_SUPPORTS_RTL (1<<22)
           FLAG_INSTALLED (1<<23)
           FLAG_FULL_BACKUP_ONLY (1<<26)
           FLAG_EXTRACT_NATIVE_LIBS (1<<28)
           FLAG_HARDWARE_ACCELERATED (1<<29)
Fixes: 65057767
Change-Id: Icd1e18237e873844791ccdea7f424b6fe76137c0
2017-08-31 15:24:48 +00:00
Svetoslav Ganov
25e5a3446e Merge "Grant location to default launcher" into oc-mr1-dev 2017-08-29 00:47:25 +00:00
Svet Ganov
5bb6bc6e52 Grant location to default launcher
Test: updated DefaultPermissionGrantPolicy test which passes

bug:62959599

Change-Id: Ifaac04758348049dd170a7e7b7ac234dced5f759
2017-08-28 15:12:05 -07:00