Commit Graph

5851 Commits

Author SHA1 Message Date
Calin Juravle
b6f844d28c 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

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

Change-Id: I579bb12fa6699f99cd3824f185bd9352fb8007c5
2017-07-19 15:04:48 -07:00
Calin Juravle
1d0e83d2ce 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.

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

Change-Id: Ia9930edd2dceb7535d6168eceb8e3199c82b6306
2017-07-19 14:58:27 -07:00
Rob Carr
e75643d542 Merge "Fix rotation animation selection." into oc-dr1-dev am: cee8098178
am: 228571391e

Change-Id: Idd2a3c23233f0758cc96a55da97b99c6ee8a7c94
2017-07-18 20:01:05 +00:00
Rob Carr
cee8098178 Merge "Fix rotation animation selection." into oc-dr1-dev 2017-07-18 19:31:00 +00:00
Shubham Ajmera
0b1a7a35b5 Merge "Reduce app size by downgrading inactive apps" 2017-07-18 17:09:06 +00:00
Paul Duffin
e60bef0924 Merge "Separate android.test.mock classes from android.test.runner" 2017-07-18 13:11:18 +00:00
Robert Carr
427ba4ff55 Fix rotation animation selection.
The default manifest value needs to be unspecified, not rotate,
as rotate overrides the LayoutParams specified value.

Bug: 63151981
Test: Manual from bug. go/wm-smoke.
Change-Id: I2ad6e3fdd06eeef0166bbe09d07b57cc45ed6e50
2017-07-17 18:37:06 -07:00
Shubham Ajmera
246dccf932 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.

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

Change-Id: I68f9f617d6722a7ba8b00aa2181cb38a165cfc51
2017-07-17 17:55:16 -07:00
Benjamin Miller
c956914d09 Merge "Docs-change: clarification of LauncherApps.getApplicationInfo()" into oc-dev am: d726ff988c am: 8322920a7c
am: eb3926819a

Change-Id: Ie1b099141194525571553f46f12d7fa0e305779d
2017-07-17 22:53:30 +00:00
Benjamin Miller
8322920a7c Merge "Docs-change: clarification of LauncherApps.getApplicationInfo()" into oc-dev
am: d726ff988c

Change-Id: I42a62feffca60e8beb75e991ea0b6545a2813233
2017-07-17 22:37:35 +00:00
Benjamin Miller
7afa84c373 Docs-change: clarification of LauncherApps.getApplicationInfo()
Staged at: go/dac-stage/reference/android/content/pm/LauncherApps.html#getApplicationInfo(java.lang.String, int, android.os.UserHandle)

Test: make ds-docs and output staged
Bug: 38024981
Change-Id: I9f256d675433457b7c85fa111ed87d1147f1f2bc
2017-07-17 18:35:38 +00:00
Paul Duffin
855d702cb7 Separate android.test.mock classes from android.test.runner
The android.test.runner library contained classes in the
android.test.mock. Those classes have been extracted into a separate
android.test.mock library but are still part of the android.test.runner
library. This change removes them from the android.test.runner library.

The PackageParser change ensures that applications which specify
<uses-library android:name="android.test.runner"/> still see the same
set of classes at runtime as they did before this change.

The logic for updating the Package to maintain backwards compatibility
was extracted into its own class for a number of reasons:
* PackageParser is already huge.
* It is easier to test in separate class.
* It reduces potential for conflicts.

Bug: 30188076
Test: cts/tests/signature/runSignatureTests.sh CtsAndroidTestRunnerCurrentApiSignatureTestCases
Change-Id: I19042b3f9ffff8bf0f8437db7bb8341c703e4244

Remove android.test.mock classes from android.test.runner

Bug: 30188076
Test: cts/tests/signature/runSignatureTests.sh CtsAndroidTestRunnerCurrentApiSignatureTestCases
Change-Id: I8ddbdb0bda7bef8858202bc085881af14d7f0c92
2017-07-17 15:25:04 +01:00
Makoto Onuki
aa6560c148 Two more numbers in the preload log
Bug 63136392
Test: Manual

Change-Id: I0fa1dffa80d4d06cbfc41e0b40ddce5d324052ec
2017-07-14 14:05:18 -07:00
Makoto Onuki
1480b67635 Better preload drawable logging
Bug 63136392
Test: Manual test

Change-Id: I8753b36f632cf2ff57a5ef28df29f3fc5657f607
2017-07-14 11:40:29 -07:00
Tomasz Wasilczyk
e83dbb90fa Merge "Publish new Broadcast Radio APIs." 2017-07-13 20:50:10 +00:00
Bryce Lee
8f18579afe Merge "Do not use rotation as indicator to relaunch from config change." into oc-dr1-dev am: fa62d79a02
am: b3d51770d1

Change-Id: I267b6be7a95c19b927e8ecb01e597342e6bee1d3
2017-07-13 18:47:11 +00:00
Bryce Lee
fa62d79a02 Merge "Do not use rotation as indicator to relaunch from config change." into oc-dr1-dev 2017-07-13 18:28:09 +00:00
Bryce Lee
90ab6ba03f Merge "Allow max aspect ratio to be specified by meta-data tag." into oc-dr1-dev am: a926dbf5d2
am: d0bc21efd5

Change-Id: Idf2bfb1d6c2b70a53ebe46df300be6fe3fce3258
2017-07-13 17:55:05 +00:00
Tenghui Zhu
cd2d38d65e Merge "Update the annotation for getAnimation" 2017-07-13 16:46:35 +00:00
Tomasz Wasilczyk
05392d6360 Publish new Broadcast Radio APIs.
Also, rename FEATURE_RADIO to FEATURE_BROADCASTRADIO.

Bug: b/34348946
Bug: b/63405337
Test: instrumentalization
Change-Id: Ibf5851a10b94f9e82db85f740fde6f28efe48666
2017-07-13 07:46:25 -07:00
ztenghui
b529256264 Update the annotation for getAnimation
b/63584307
Test: None
Change-Id: If0581ec3302956735bc4cc549a70c5a5ab9b4e2a
2017-07-12 16:08:40 -07:00
Bryce Lee
22571db5a6 Allow max aspect ratio to be specified by meta-data tag.
This changelist identifies aspect ratios set via meta-data tags on
the activity or application and applies them to the proper scope.
Values specified via styled attribute take precedence, and values
specified by the activity take priority over values in at the
application level.

Fixes: 63386222
Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test CtsAppTestCases android.app.cts.AspectRatioTests
Test: go/wm-smoke
Change-Id: I0d8d6b2778e7fc12bb9feb85c651e5ec22927f5f
2017-07-12 10:16:50 -07:00
Bryce Lee
248fbb180d Do not use rotation as indicator to relaunch from config change.
Rotation is a hidden member inside configuration that should not
influence configuration related logic. This CL ensures that we do
not consider changes to the rotation as grounds for relaunching an
activity.

Change-Id: I9e6d4a1a75fd3ee3beb63f307433e9c3fcfd6dd4
Fixes: 63533208
Test: go/wm-smoke
Test:cts/hostsidetests/services/activityandwindowmanager/util/run-test CtsServicesHostTestCases android.server.cts.ActivityManagerConfigChangeTests
2017-07-10 16:33:52 -07:00
TreeHugger Robot
547964fc43 Merge "SystemServer: Support for LowpanService" 2017-07-10 20:20:18 +00:00
Tor Norbye
2b8286d218 Merge "Add COMPANION_DEVICE_SERVICE to @ServiceName" 2017-07-10 19:43:12 +00:00
Robert Quattlebaum
87a7104ae9 SystemServer: Support for LowpanService
The LowpanService implementation can be found at:

    platform/frameworks/opt/net/lowpan/service

Bug: b/33073713
Change-Id: Ibca9c452492bf171bd2c30efdb44ddb472494c3b
2017-07-10 10:16:43 -07:00
TreeHugger Robot
b2f9ab3347 Merge "Allow splits to declare a classloader type." 2017-07-10 15:01:52 +00:00
Bryce Lee
76f4782227 Merge "Add app bounds to Configuration#compareTo." into oc-dr1-dev am: 649053810f
am: 31bf99946c

Change-Id: I502d823cb4f9089a1c460d8a810381fef7333b2d
2017-07-10 14:37:56 +00:00
Bryce Lee
649053810f Merge "Add app bounds to Configuration#compareTo." into oc-dr1-dev 2017-07-10 14:21:37 +00:00
Tor Norbye
8246c07fa2 Add COMPANION_DEVICE_SERVICE to @ServiceName
This constant is now supported by Context#getSystemService
but was not added to the @ServiceName typedef.

Test: Manual (after metadata update in the tools, checked
code completion for getSystemService() call)

Change-Id: If1916726b57c8f187ecc8401dd7fafaa9ba216d0
2017-07-07 10:21:09 -07:00
Adam Lesinski
4eb4129c29 Fix Configuration#updateFrom() when assetsSeq doesn't change
Compare the value of assetsSeq when updating Configuration from
a delta.

Bug: 63352177
Test: manual
Change-Id: I9e1205cd64c4a1e0192b7049c82d36d53fb4af36
(cherry picked from commit 2123c415bf)
2017-07-06 21:56:46 +00:00
TreeHugger Robot
fbfe2177da Merge "Fix Configuration#updateFrom() when assetsSeq doesn't change" 2017-07-06 21:50:54 +00:00
Adam Lesinski
2123c415bf Fix Configuration#updateFrom() when assetsSeq doesn't change
Compare the value of assetsSeq when updating Configuration from
a delta.

Bug: 63352177
Test: manual
Change-Id: I9e1205cd64c4a1e0192b7049c82d36d53fb4af36
2017-07-06 12:06:13 -07:00
Bryce Lee
c5fe0eedb6 Add app bounds to Configuration#compareTo.
This CL takes app bounds into consideration when comparing two
Configurations with compareTo.

Change-Id: I9894f312429626975a2651b837cae8d80548c271
Fixes: 63160229
Test: go/wm-smoke
Test: bit FrameworksServicesTests:com.android.server.wm.AppBoundsTests#testConfigurationCompareTo
2017-07-06 08:03:28 -07:00
Narayan Kamath
f9419f0f85 Allow splits to declare a classloader type.
Add an attribute android:classLoader which can be set to the name
of the classloader the base or split wishes to use. For now, this can
only be set to "dalvik.system.PathClassLoader" or
"dalvik.system.DelegateLastClassLoader". The current implementation
only allows the classloader to exist in the boot classpath but that
restriction can be loosened in a future change if necessary.

Test: cts-tradefed run cts-dev -m CtsAppSecurityHostTestCases
Bug: 36044779

Change-Id: I5a51f7aa0c8c4c398d2f46129eb06785cc8e3c3f
2017-07-06 11:57:36 +01:00
Philip P. Moltmann
eb0a0ae7ae Expose TestApi needed by PermissionTests
Test: No code change
Bug: 32898128
Change-Id: Iab5a20e253d34bdd763aef82db5aad15f4ccff31
2017-06-30 13:15:19 -07:00
Bryce Lee
bb7965ed90 Merge "Add rotation to configuration." into oc-dr1-dev am: 2050dc66e2
am: 2004fc1387

Change-Id: If3a3975a2e07a96de1120b1a0744eab466284764
2017-06-30 16:40:58 +00:00
Bryce Lee
c1f2f2a9d3 Add rotation to configuration.
Certain activities are dependent on the rotation of the device to
determine layout. In these cases, orientation does not provide enough
details.

This CL adds the field (hidden) to the configuration.

Change-Id: Idb3ba10cb4de8838737c25e92264e6cee224e264
Fixes: 32839232
Test: go/wm-smoke
2017-06-29 17:40:23 -07:00
chaviw
59b9885bc8 Added Activity flags to show on lock screen.
Added two new flags to the Activity to turn the screen on and
show on the lock screen. These can be used instead of the Window flags
LayouParams.FLAG_TURN_SCREEN_ON and LayoutParams.FLAG_SHOW_WHEN_LOCKED
to prevent the double onStart/onResume lifecycle events.

The flags can be set as an attr for the Activity in the AndroidManifest
using android:showWhenLocked="true" and android:turnScreenOn="true".
They can also be set through methods in the Activity class using
setShowWhenLocked(true) and setTurnScreen(true).

Fixes: 36850100
Test: Created sample application, tests/ShowWhenLockedApp, that set the
      flags in the manifest and code. Tested multiple scenarios to
      launch the Activity with the flags set and unset.
Test: cts-tradefed run commandAndExit cts-dev --module CtsServicesHostTestCases -t android.server.cts.KeyguardTransitionTests
Test: cts-tradefed run commandAndExit cts-dev --module CtsServicesHostTestCases -t android.server.cts.ActivityManagerActivityVisibilityTests
Test: cts-tradefed run commandAndExit cts-dev --module CtsServicesHostTestCases -t android.server.cts.KeyguardTests

Change-Id: I44f0e313df4531d49c7ac56108b6bf80e41fefc1
2017-06-29 13:33:43 -07:00
Lei Yu
32fcad6b29 Merge "Add API to RuntimePermissionPresenter" into oc-dr1-dev am: a023184bbc
am: eba86e5147

Change-Id: I537c1fd6b4fbf3e00269c50aebb23e9fd7fa3ad6
2017-06-28 18:13:02 +00:00
Lei Yu
a023184bbc Merge "Add API to RuntimePermissionPresenter" into oc-dr1-dev 2017-06-28 17:55:04 +00:00
TreeHugger Robot
26426a7f64 Merge changes Ie5c878d3,I33d9be04
* changes:
  Remove forward-lock install tests
  Use PackageInstaller
2017-06-27 19:50:42 +00:00
Makoto Onuki
11e9ed87f7 Merge "Fix activity icon badging for non-bitmap icons" into oc-dev am: 9f607f4c0b am: eb63919bc4
am: 9b723d886e

Change-Id: If824cafb12f37555fc433512d1fd02ab107f4355
2017-06-27 00:35:31 +00:00
TreeHugger Robot
c4ccefc7fd Merge "Whitelist ACTION_QUICK_CONTACT from StrictMode.onFileUriExposed" into oc-dr1-dev 2017-06-26 23:49:07 +00:00
Makoto Onuki
eb63919bc4 Merge "Fix activity icon badging for non-bitmap icons" into oc-dev
am: 9f607f4c0b

Change-Id: Ie8b426c14fa30b7c2f5eadc5818e1dfd16f8c0a5
2017-06-26 23:31:59 +00:00
jackqdyulei
a90bfb5f80 Add API to RuntimePermissionPresenter
Add API to reovke runtime permission in RuntimePermissionPresenter

Bug: 36921532
Test: runtest -x LocationCheckActionTest(in settings)
Change-Id: I51d43d6372fffcd260d7053cb89f2a00d3b07468
2017-06-26 13:44:10 -07:00
Jeff Sharkey
adcd1fe0f6 Merge "Progress towards FBE and adoptable storage." 2017-06-26 17:41:47 +00:00
Jeff Sharkey
a65e6491e4 Progress towards FBE and adoptable storage.
Offer to adopt storage devices on FBE devices, but keep it guarded
behind a system property for now, since we still need to work out key
storage details.

Verify that all users are unlocked before moving apps or shared
storage.  We only need them to be unlocked; we don't need them to
be actually running.

Have PackageManager dump the set of volumes that it's finished
scanning and loading, since otherwise CTS can get excited and race
too far ahead of it.  Add a specific error code to communicate
that users are locked.

Test: cts-tradefed run commandAndExit cts-dev --abi armeabi-v7a -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.AdoptableHostTest
Bug: 37436961, 29923055, 25861755, 30230655
Change-Id: I749dc3d8148e1a95d8bc4be56665253ef826d3fe
2017-06-23 16:35:15 -06:00
Makoto Onuki
8f2a478d9d Fix activity icon badging for non-bitmap icons
Bug 62930145
Test: Manual test with development/samples/ShortcutDemo/launcher/

Change-Id: I8d0eed2e1f93a3b04a6a078c25cefbfc47c528a4
2017-06-23 13:10:41 -07:00
Makoto Onuki
fb2d50e891 Whitelist ACTION_QUICK_CONTACT from StrictMode.onFileUriExposed
Bug 38428650
Test: Manual test on an eng build + logcat + contacts app

Change-Id: I1b6c99b8f42443511baddd8574955a17342b2ac9
(cherry picked from commit 7d1911f264)
2017-06-23 17:52:10 +00:00