Commit Graph

62273 Commits

Author SHA1 Message Date
Calin Juravle
eef66fd0c7 Merge "PackageManager: Clean up code related to foreign dex use" 2017-03-07 21:13:15 +00:00
Calin Juravle
4c06f55f14 PackageManager: Clean up code related to foreign dex use
We simplified the way we track whether or not a dex file is used by
other apps. DexManager in the framework keeps track of the data and we
no longer need file markers on disk.

Test: device boots, foreign dex markers are not created anymore

Bug: 32871170

(cherry picked from commit 74f0a3450c)

Change-Id: I2a9daca15e5120518852584fa17aa94012af8f1a
Merged-In: I3660e2f3913a73904181449c2d910af0a0477950
2017-03-07 11:39:24 -08:00
Treehugger Robot
d0f092af84 Merge "Framework: Ensure image heap string literals for Patterns" 2017-03-07 16:50:59 +00:00
Etan Cohen
8328f27a87 Merge "[CM] Allow timeout in request network" 2017-03-07 16:40:27 +00:00
Erik Kline
465c46d555 request{LinkProperties,NetworkCapabilities} no longer needed
Test: as follows
    - built (bullhead)
    - flashed
    - booted
    - runtest frameworks-net passes
    - manual USB tethering toggling between WiFi and mobile
Bug: 32163131
Change-Id: I57edf5114b6361f320577c7870e40f8b3cdf74ce
2017-03-07 17:18:06 +09:00
Erik Kline
c75d4fad22 Always send all available state when calling onAvailable().
The state that needs to be transferred includes:
    - NetworkCapabilities
    - LinkProperties
    - whether the network is currently suspended

Additionally:
    - Rename notifyNetworkCallback() to notifyNetworkAvailable()
      in order to clarify its real function.
    - fix previous copy/paste error in unittest

Test: as follows
    - built (bullhead)
    - flashed
    - booted
    - runtest frameworks-net passes
    - USB tethering with mobile and Wi-Fi upstream toggling
Bug: 32163131
Change-Id: Ib4460bcd5d08863a9feac9e8ab41a238897bb3ea
2017-03-07 12:57:26 +09:00
Ruchi Kandoi
2b527ac293 nfc: First chunked NDEF record of TNF doesn't contain the type field
Test: CTS test passes
Bug: 34943312
Change-Id: I08f37ee76810f642b35ae8bde05ef0e2eff921e0
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
2017-03-06 13:10:20 -08:00
Hugo Benichi
704520c392 Merge "Revert "ConnectivityManager: no double NetworkCallback registration" because oit caused regressions http://b/35955593, http://b/35921499." 2017-03-06 12:20:45 +00:00
Hugo Benichi
649e32484e Revert "ConnectivityManager: no double NetworkCallback registration" because oit caused regressions http://b/35955593, http://b/35921499.
This reverts commit faa70976b4.

Change-Id: I86c07c113f24753be7c977e6d7f570b99391e1b5
2017-03-06 06:16:51 +00:00
Andreas Gampe
7f8466fab4 Framework: Ensure image heap string literals for Patterns
Do not use Pattern.toString to construct complex patterns. Instead,
make the string literals explicit so they can be compile-time
allocated, thus ending up as clean memory in the image heap.

Bug: 34956610
Test: m
Test: Device boots
Change-Id: I20d45c31243af00168553c218f75fb0795b55149
2017-03-03 09:38:58 -08:00
Tobias Thierer
3e6c189c68 Merge "Move value for the Build.CUR_DEVELOPMENT constant into libcore" 2017-03-03 12:02:09 +00:00
Elliott Hughes
c657b769ab Merge "Remove the name length limit for system properties." 2017-03-03 00:22:31 +00:00
Calin Juravle
9e88c53337 Merge changes from topic 'secondary-dex'
* changes:
  Fix typo in dexopt.secondary system property
  Save package dex usage info after secondary dex reconciliation
  Compile secondary dex files during background dexopt job
  Add a shell command to force the background dexopt job
  A bit more refactoring in BackgroundDexOptService
  [PM] Clean up logic for secondary dex oat files
  Compile secondary dex files in DexManager
  Notify DexManager about new package installs
2017-03-02 23:54:24 +00:00
Elliott Hughes
33cc60ccc9 Remove the name length limit for system properties.
Bug: http://b/33926793
Test: builds
Change-Id: Ib89b66b7abebc9a28961a0c9032b99947e3db0d6
Merged-In: Ib89b66b7abebc9a28961a0c9032b99947e3db0d6
2017-03-02 14:17:03 -08:00
Calin Juravle
f7edab63d9 Add a shell command to force the background dexopt job
Add 'bg-dexopt-job' command to 'adb shell cmd package' which will force
the background  dexopt job to run the optimizations immediately.

Note that the command only runs the background optimizer logic. It may
overlap with the actual job but the job scheduler will not be able to
cancel it. It will also run even if the device is not in the idle
maintenance mode.

Test: adb shell cmd package bg-dexopt-job
Bug: 32871170

(cherry picked from commit cb5f41ea11)

Change-Id: I82c781d46fe16e7b7566a5b5ee91be723a2125cb

Merged-In: I8b0112074220b2e09baf13d842401ee1cf306a89
2017-03-02 13:13:12 -08:00
Calin Juravle
e69fba3f7f [PM] Clean up logic for secondary dex oat files
Add logic in DexManager to reconcile secondary dex records with the
actual files on disk. If secondary dex files are moved or removed then
DexManager will remove the generated oat files during the call to
reconcileSecondaryOdex() and update its internal state.

Add 'adb shell cmd package reconcile-secondary-dex packageName' which
will force DexManager to sync its data with the actual secondary dex
files.

Test: devices bots
      runtest -x .../PackageDexUsageTests.java
      runtest -x .../DexManagerTests.java
      adb shell cmd package reconcile-secondary-dex
com.android.google.gms (after artificially/temporarily renaming some
dex files)

Bug: 32871170

(cherry picked from commit c22c30ed1c)

Change-Id: Ied9fcbfe367ed3a8250a9ba8d202518b264c64e8

Merged-In: Id2d72dc89995f89cf1ddf79ae4e992afd3f3c127
2017-03-02 13:12:21 -08:00
Calin Juravle
7218363a92 Compile secondary dex files in DexManager
Add logic for secondary dex compilation in DexManager. Also, extend the
`cmd package compile` command with '--secondary-dex' option which will
compile all used secondary dex files for the given package.

Test: flash & boot,
      cmd package compile --secondary-dex -f -m speed
com.google.android.gms
Bug: 32871170

(cherry picked from commit c22c30ed1c)

Change-Id: I3cf26edbfb5e9f3683e608bb2a596e1ab5682bd4

Merged-In: Ia2b95cb70d26c4ead5cb650047641b0881ca84ae
2017-03-02 13:11:52 -08:00
Treehugger Robot
b8648ae07a Merge "Fix Javadoc for StrictMode#permitUnbufferdIo" 2017-03-02 17:23:45 +00:00
Etan Cohen
aebf17e7f1 [CM] Allow timeout in request network
Add (unhide) a public API which provides network requests with a
timeout. When timed-out the (newly unhidden) onUnavailable() callback
is triggered.

Note: this CL does not add a handler to the API to be consistent
with the existing APIs. There is a separate effort (b/32130437)
to update these APIs with Handlers.

Bug: 31399536
Test: unit tests and CTS (new)
Change-Id: I45ce9ada63372cb56937bb620bfbb7729e5e25d2
2017-03-02 08:06:27 -08:00
Treehugger Robot
06a192fa49 Merge "ConnectivityManager: no double NetworkCallback registration" 2017-03-02 07:56:26 +00:00
Hugo Benichi
faa70976b4 ConnectivityManager: no double NetworkCallback registration
Test: new test in ConnectivityManagerTest
Bug: 20701525
Change-Id: I205333d31d43e6e6c7fe704ce63b458065f345ce
2017-03-02 15:19:37 +09:00
Elliott Hughes
cbafc8d682 Merge "Basic javadoc for android.os.UpdateEngine." 2017-03-02 02:52:09 +00:00
Shubham Ajmera
ade21170a7 Fix Javadoc for StrictMode#permitUnbufferdIo
Bug: 35813076
Test: no tests
Change-Id: I2f71cad7a7a3f85908b322e2b83ba265c49adbad
2017-03-01 09:26:41 -08:00
Tobias Thierer
8bacd9bd02 Move value for the Build.CUR_DEVELOPMENT constant into libcore
This matches a corresponding libcore change. It is to allow
libcore to use this value as a default when no other value is
explicitly set, e.g. in the system server or during testing
with vogar.

Bug: 34072201
Test: Device boots with CLs from this CL's topic.
Change-Id: Id812339a343ecea84a08bfdf4b873f3b156a13d4
2017-03-01 12:44:01 +00:00
Nathan Harold
330e1089da Add API Surface for creating IpSec Transforms
This CL adds an API to set up an IPSec Security Association
and Security Policy to perform Transport-Mode and Tunnel-Mode encapuslation
of IP Packets.

Bug: 30984788
Bug: 34811752
Test: 34812052, 34811227
Change-Id: Ic9f63c7bb366302a24baa3e1b79020210910ac0a
2017-02-28 22:01:20 -08:00
Elliott Hughes
e3ce3e8bab Basic javadoc for android.os.UpdateEngine.
Bug: N/A
Test: N/A
Change-Id: Icb870e7720e8b50082d353e7ea08007e1f4e2fdc
2017-02-28 15:19:32 -08:00
Amin Shaikh
21496f6ee1 Setting for RecommendedNetworkEvaluator cache TTL
Bug: 19948759
Bug: 33694078
Test: runtest frameworks-core
Change-Id: Ic1820dc3d70170e6b7c740696abf87d284c6e2ea
Merged-In: Ic1820dc3d70170e6b7c740696abf87d284c6e2ea
2017-02-27 21:49:05 -08:00
Treehugger Robot
e091985bb5 Merge "Added a settings for CMAS message broadcast" 2017-02-25 01:13:29 +00:00
Chen Xu
fcb37ffc60 Merge "move ACTION_CARRIER_SETUP intent to public api" 2017-02-25 01:05:30 +00:00
Roozbeh Pournader
e626fb53e2 Load hyphenation patterns for Bulgarian and Church Slavonic
Patterns for Bulgarian (bg) and Church Slavonic (cu) are now loaded
too.

Also make changes to fontchain_lint.py, so it knows the script for Bulgarian
and Church Slavonic is Cyrillic.

Test: make -j works and creates .hyb files for bg and cu
Change-Id: I0586f6c49380279ef88fe952b5cfd2d3594c5524
2017-02-24 11:23:48 -08:00
fionaxu
6a5ac3b922 move ACTION_CARRIER_SETUP intent to public api
As per CDD: The "android.*" namespace for intent constants is reserved for public
Android API in AOSP. (Whether public to the full SDK, @SystemApi or
defined in AOSP support libraries.)
ACTION_CARRIER_SETUP intent is generally useful for carrier privileged
apps which is unbundled carrier apps, thus move to public APIs

Bug: 33679956
Test: Manual
Change-Id: I202398f868d35e7e9046e7cc41330a3c26dca0b0
Merged-in: Ie2b5d072406513f04676210d08c43d91623c3cd2
2017-02-24 10:34:07 -08:00
Jack Yu
d1d64730b9 Added a settings for CMAS message broadcast
This is for sl4a automation to receive CMAS messages
broadcasdt. The automation should inject the settings
through 'adb settings'.

Test: manual
bug: 34393649
Merged-In: Ic29be11b641f185219146d7fbb05561f5907ea76
Change-Id: Ic29be11b641f185219146d7fbb05561f5907ea76
2017-02-24 04:36:26 +00:00
Erik Kline
b583b03675 Update UpstreamNetworkMonitor to use custom Handlers
Test: as follows
    - built (bullhead)
    - flashed
    - booted
    - runtest frameworks-net passes
Bug: 32130437
Bug: 32163131

Change-Id: I2bc3f87cdf7fa6392b4750eb8adb4ea33c6a3f43
2017-02-24 13:06:51 +09:00
Dimitry Ivanov
484fbe9273 Add isBundled argument to LoadedApk.makePaths call
There is a disconnect between the way webview created
classloader and the way makePaths decides if paths are
intended for bundled app.

This change moves decision making out of makePaths method
which allows WebViewZygote to pass correct argument and
have makePath omit java.library.path for libPaths

Bug: http://b/35426785
Test: manual
Change-Id: Iab5a18c0091d0193dafa750498eb00f378411ba0
(cherry picked from commit 638d810099)
2017-02-23 14:16:45 -08:00
Hugo Benichi
2583ef0239 ConnectivityManager: allow custom Handlers
This patch adds overloaded version of registerDefaultNetworkCallback
registerNetworkCallback, and requestNetwork with an additional Handler
argument that is used for running the caller provided NetworkCallback.

It also clarifies the documentation of the existing methods that
implicitly uses the internal singleton ConnectivityThread about which
internal Handler is used for running NetworkCallbacks.

Test: build, flashed, booted device
Bug: 32130437
Change-Id: Iae15f81e47e2dc0355baf2f2c1679b77e56af299
2017-02-22 09:24:01 +09:00
Leonard Mosescu
456d5fc159 Add missing break statement.
It was caught in the code review after the merge (thanks Narayan!).
This is already fixed and tested in the internal branch (see Merged-In)

Test: manual, CTS in internal

Change-Id: I9f6f72995e9ab633564b6bc22846fbe99eb65105
Merged-In: If14126e645b2d0a1307404e2f50088b3994abce2
2017-02-17 10:10:55 -08:00
Hugo Benichi
37e3f22c2e Merge "IP connectivity metrics: delete obsolete logger service" 2017-02-16 23:52:13 +00:00
Leonard Mosescu
05dfd10254 Merge "Adding "attach-agent" to ActivityManagerShellCommand" 2017-02-16 23:12:26 +00:00
Eino-Ville Talvala
b59cd66e93 Merge "camera case fail for testSceneModes" 2017-02-16 21:35:36 +00:00
Leonard Mosescu
02758a9a80 Adding "attach-agent" to ActivityManagerShellCommand
This new command is used to attach runtime agents to a running application:

attach-agent <PROCESS> <FILE>
   Attach an agent to the specified <PROCESS>,
   which may be either a process name or a PID.

Test: m test-art-host, manual testing:
    . invalid syntax, missing arguments
    . invalid syntax, extra arguments
    . invalid numeric PID
    . invalid process name
    . valid process, not debuggable
    . valid process, missing agent
    . valid process, valid agent

Bug: 31682382

Change-Id: I61cc8bf20addb1702acc8e7aae65b2f9ed7c5ca0
Merged-In: Ife88dbf23991dde7945d9208e54cd014bb7ecdc6
2017-02-16 13:19:41 -08:00
Etan Cohen
6fb97e8fd8 Merge changes from topic 'cm_request_to'
* changes:
  [CM] Remove maximum timeout value for request network
  [CM] Remove non-functional timeout from request network
2017-02-16 14:15:44 +00:00
Etan Cohen
ba07c8c4ec [CM] Remove maximum timeout value for request network
The request network with timeout was originally created with a
check of max timeout against a constant of 100 minutes. However,
the API was not public and did not implement a timeout. Any users
were internal and never got any onUnavailable() callback (since
timeout never triggered).

There is no reason to have a max timeout so the constant is
remove.

Bug: 31399536
Test: unit tests and CTS of ConnectivityManager
Change-Id: Icbedfb4299d75b6a7e3e43720111531f1faafd06
2017-02-16 14:15:16 +00:00
Treehugger Robot
e0ba81110a Merge "Fix the "Alarm volume" icon is displayed incorrectly" 2017-02-16 12:47:43 +00:00
Hugo Benichi
d22edc28f5 IP connectivity metrics: delete obsolete logger service
Test: - runtest frameworks-net
      - manually verified $ adb shell dumpsys connmetrics
Bug: 32648597

Change-Id: I69f7dee5871508398d7f7209658a00c768e2d18e
2017-02-15 17:12:58 +09:00
Hugo Benichi
6f260f3691 ConnectivityManager: fix potential NPE
ConnectivityManager static sCallbackHandler is referenced and directly
used in a way that is not ensuring its proper initialization.

This patch fixes this potential NPE by using getHandler() instead.

Also this patch changes sendRequestForNetwork's signature to only accept
the subtype CallbackHandler instead of Handler: without using
CallbackHandler the NetworkCallbacks are not triggered properly and
bookkeeping of sCallbacks does not happen. sendRequestForNetwork's
signature now makes this explicit.

This step prepares the addition of overloaded versions of
registerNetworkCallback and cie that takes custom Handlers.

Test: build, flashed, manually checked connectivity
Change-Id: I52e8a2cb5075e7aef7b35e30c9845cacba927d13
2017-02-14 16:01:40 +09:00
Treehugger Robot
b6f7a85b85 Merge "[Debug]: Add timeout for dumpNativeBacktraceToFile." 2017-02-08 20:11:23 +00:00
songjinshi
e02e3ea7f9 [Debug]: Add timeout for dumpNativeBacktraceToFile.
If the debuggerd be blocked, the watchdog and
activitymanager thread will be blocked when the
ANR or watchdog occurs,so we needed to add
timeout for dumpNativeBacktraceToFile.

Change-Id: Iab1a64328e70257025d860638d93a4fb8eaaeea2
Signed-off-by: songjinshi <songjinshi@xiaomi.com>
2017-02-07 19:17:45 +00:00
Paul Duffin
3e5fbca0c5 Replace com.android.internal.util.Predicate with java.util.function.Predicate
Bug: 35089332
Bug: 30188076
Test: make checkbuild
Merged-In: I0a5b4bf520fc39b59d8d790b01e9cff0d54e6d21
Change-Id: I58e4e35e7b7315033d893748f7c79e1ba6732f39
2017-02-07 16:57:54 +00:00
Pavlin Radoslavov
2199339c39 Add a mechanism to configure the default A2DP codec priorities
Previously, the relative codec priorities were hard-codec internally.
The new mechanism uses the following configurable resources in
packages/apps/Bluetooth/res/values/config.xml to re-assign the
default codec priorities per device, or to explicitly disable a codec.

 - a2dp_source_codec_priority_sbc
 - a2dp_source_codec_priority_aac
 - a2dp_source_codec_priority_aptx
 - a2dp_source_codec_priority_aptx_hd
 - a2dp_source_codec_priority_ldac

Those values are assigned on startup.
Also, they can be changed per device by using an overlay:
device/<VENDOR>/<DEVICE>/overlay/packages/apps/Bluetooth/res/values/config.xml

Test: Manually streaming to a headset
Change-Id: Ic4da3a51ac73f00cbae731156cb7878c8fadee06
2017-02-06 13:07:23 -08:00
wei zheng dong
5f391188dc camera case fail for testSceneModes
add equals judgement for cts case: android.hardware.camera2.cts.CaptureRequestTest -m testSceneModes
scene-mode (auto) is not single string in some platform, the source is from getCameraCharacteristics
 which contains multiple characters. so previous code == is not correct.

Test: make
Test: run android.hardware.camera2.cts.CaptureRequestTest -m testSceneModes

Change-Id: Ie5ffeeebd0d0c237c80768a4a8217bc04e52a173
2017-02-06 14:36:48 +08:00