Commit Graph

43333 Commits

Author SHA1 Message Date
Treehugger Robot
cba224e833 Merge "Add (disabled) time zone update system server impl" 2017-05-05 14:06:23 +00:00
Nicolas Geoffray
a34610cebc Merge "Handle safe mode in PackageManager." 2017-05-05 08:37:18 +00:00
Neil Fuller
68f666693a Add (disabled) time zone update system server impl
This commit builds on top of prior API commits. It
adds code to the system server, but in a disabled way.

The system server is responsible for monitoring two
(configured) package names: one for the "updater app"
(provided by the platform) and one for the "data app"
(provided by the OEM). When either package changes
the updater app is triggered via a privileged
intent.

The updater is then required to communicate with the
data app and report back to the system server.

Unit tests are included for the major components.

To run:
make -j30 FrameworksServicesTests
adb install -r -g "out/target/product/angler/data/app/FrameworksServicesTests/FrameworksServicesTests.apk"
adb shell am instrument -e package com.android.server.timezone -w com.android.frameworks.servicestests \
    "com.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner"

Test: See above.
Bug: 31008728
Merged-In: I8f82cdcc2b574778a7e0d0184270f305b69ee17b
Change-Id: I8f82cdcc2b574778a7e0d0184270f305b69ee17b
2017-05-04 19:46:47 +01:00
Nicolas Geoffray
96d12a93ae Adjust forced dexopt in case of stripped APKs.
We cannot compile from scratch for strip APK. So
if getDexOptNeeded returns NotNeeded, pretend there was
a compiler filter change, in order to pick up the vdex file.

bug: 37558732
Test: "adb shell cmd package compile" of a stripped /system apk
Change-Id: I531010e01e44adfa300872c1739c49dab7292317
2017-05-04 10:02:56 +01:00
Nicolas Geoffray
d093b203f5 Handle safe mode in PackageManager.
PackageManager side of the change.

bug:37929796
Test: manual OTA with a safemode app.
Change-Id: I98c8200d4330dc88fec7eb8ffeb27717a22a220b
2017-05-03 13:54:32 +01:00
Treehugger Robot
e6ad7a6704 Merge "Force a light to be set for the first time" 2017-05-02 12:42:14 +00:00
Oleksiy Avramchenko
4f4939fb04 Force a light to be set for the first time
The check in LightImpl::setLightLocked skips HAL call if light
parameters aren't changed. During initialization these parameters
are zeroed, thus it's not possible to turn the light off at the
startup.

As an example this fixes the issue with "stuck" battery light
in the following scenario:
1. Device has secure start-up option set (either pin or pattern).
2. Charger is connected at the startup and battery light shows the
   charging state on pin or pattern prompt.
3. Device is unlocked and charger disconnected after some time,
   e.g. after com.android.server.lights.LightsService restarted.
4. The battery light is not off and stuck in the previous state
   until charger is connected / disconnected again.

Bug: 37662368
Test: manual - follow the above step-by-step
Change-Id: I45470e945fe4d26d37a5641dfff3311968f51ee4
2017-05-02 08:12:01 +00:00
Erik Kline
256be78f7d Use ConnectivityService's NETWORK_STACK permission for SoftAp operations
Test: as follows
    - built
    - flashed
    - booted
    - "runtest frameworks-net" passes
Bug: 37647880
Bug: 37750597
Change-Id: I4fb603b7491013bc13b0c08a785eae6cd37337b9
2017-04-29 15:02:42 +09:00
Erik Kline
216af6d3fe Notify WifiManager of interface state changes
Test: as follows
    - built
    - flashed
    - booted
    - "runtest frameworks-net" passes
      (except for an unrelated IpConnectivityMetricsTest error)
Bug: 31466854
Bug: 32163131
Change-Id: I702ea79eb2c02604761e4e1ebcd5f9e445178efb
2017-04-28 13:46:41 +09:00
Ajay Panicker
37cad12cb1 Merge "Limit btsnoop file size (3/8)" 2017-04-27 17:29:37 +00:00
Hugo Benichi
fa97f11b20 Merge "NsdService: disentangle NativeDaemonConnector from ctor" 2017-04-27 12:30:21 +00:00
Nicolas Geoffray
431bc34096 Merge "Update frameworks/base to new compiler filters." 2017-04-27 11:40:07 +00:00
Hugo Benichi
1fac3191c7 NsdService: disentangle NativeDaemonConnector from ctor
This patch disentangles the creation of NativeDaemonConnector from the
creation of NsdService by introducing a wrapper type DaemonConnection.

This allows to mock this dependency in unit tests.

Test: enhanced previously introduced new tests.
Bug: 37013369, 33298084
Change-Id: I894b7cddfc509f86d0134d214c88c063b81b5e0a
2017-04-27 16:35:30 +09:00
Hugo Benichi
7ca060aa95 Merge "NsdService: bootstrap unit tests" 2017-04-27 05:22:54 +00:00
Ajay Panicker
731a26666d Limit btsnoop file size (3/8)
Limit btsnoop file size by rotating between snoop files. The rotation occurrs
when a fixed number of packets have been logged and will start overwriting
the older file.

Bug: 35998031
Test: Enable snoop logs from developer options and let logs get large
Merged-In: I40d5da4c1b1c9b45908e5790d130f1c5e804c773
Change-Id: I40d5da4c1b1c9b45908e5790d130f1c5e804c773
2017-04-27 00:05:31 +00:00
Erik Kline
ce94c07ffd Merge "Clarify some IpManager/ApfFilter debugging output." 2017-04-26 23:56:59 +00:00
Suprabh Shukla
ea86140ba4 Merge "Fix the notification issue shown on startForeground" 2017-04-26 21:56:25 +00:00
luozhanwei
279544c35a Fix the notification issue shown on startForeground
Install single APP in any user space except Owner user.
The APP will show a notification when call startForeground in Service Component with
Notification which without SmallIcon.
But when you click the notificaiton ,you can't go to the InstalledAppDetails Activity.

Bug:https://code.google.com/p/android/issues/detail?id=330486

Change-Id: I9545c37bf1a36515813cbf1124c82c1c0fc3ad21
Signed-off-by: luozhanwei <luozhanwei@xiaomi.com>
2017-04-26 19:35:05 +00:00
Nicolas Geoffray
be7b0d18a7 Update frameworks/base to new compiler filters.
Also fix a merge issue with duplicated code.

bug:34715556
Test: build and boot aosp bullhead
Change-Id: I3b913878c83f708e752ec06f79bada1873213823
2017-04-26 15:34:29 +01:00
Narayan Kamath
2529f65e87 Merge "Improvements to ActivityManagerService stack dumping" 2017-04-26 12:01:16 +00:00
Erik Kline
af579eb5b5 Clarify some IpManager/ApfFilter debugging output.
Test: as follows
    - built
    - flashed
    - booted
    - "runtest frameworks-net" passes
    - "adb shell dumpsys wifi ipmanager" shows updated output
Bug: 34793131
Change-Id: I6dec135b97343943efb421ef7b2e84c4751dd5ea
2017-04-26 17:14:47 +09:00
Brian Carlstrom
0f2c1c3f44 Improvements to ActivityManagerService stack dumping
- Deduplicate code in DumpStackFileObserver, ensure consistent behavior at addition use site
- Fix bug in DumpStackFileObserver where closed state was not reset
- Align TRACE_DUMP_TIMEOUT_MS with frameworks/native/cmds/dumpstate/utils.cpp
- Fallback to Debug.dumpNativeBacktraceToFileTimeout on timeout
- Share timeout constant with other Debug.dumpNativeBacktraceToFileTimeout caller

Test: Insert 1s sleep in system/bt/btif/src/bluetooth.cc is_profile to trigger ANR
Test: Insert hang into art/runtime/signal_catcher.cc after "reacting to signal"
Bug: 35962833

(cherry picked from commit beed965c25)

Merged-In: I6b5cc3f106f1e2b49400e382b8ad71ddbd4685f3
Change-Id: Ia2024bfa54a15a57821958d69b442d0bc9985eb6
2017-04-25 15:25:21 +01:00
Etan Cohen
2fd19ffa06 Merge "[AWARE] Add UID checking to WifiAwareNetworkSpecifier" 2017-04-25 13:21:36 +00:00
Hugo Benichi
cbb13672bc NsdService: bootstrap unit tests
Test: new tests part of $ runtest frameworks-net
Bug: 37013369, 33298084
Change-Id: Ief45f838268380b4b2a128390fbf34d55a3b922b
2017-04-25 10:42:58 +09:00
Amith Yamasani
4136b1d0aa Check Bluetooth app id instead of uid
Fixes the crash on user switches.

Change-Id: If0c003011bd014b437ef5c8bee24a27b68be88d9
Fixes: 37617840
Test: manual - add a user
2017-04-24 21:11:36 +00:00
Hugo Benichi
21b9b3a8ff Merge "Move byte logics from ApfFilter into BitsUtil" 2017-04-24 06:39:39 +00:00
Robin Lee
53a122986d Merge "Remove unused network management RPCs" 2017-04-22 21:59:57 +00:00
Hugo Benichi
495a17b332 Move byte logics from ApfFilter into BitsUtil
This patch extracts into BitUtils byte manipulation helper methods
and unsigned type manipulation helper methods from ApfFilter into
an independent and reusable structure.

Test: $ runtest frameworks-net
Change-Id: I0f33af10457a63dbde5983f14353a79b8cd877d9
2017-04-22 10:07:03 +09:00
Hugo Benichi
7781a6d4c1 Merge changes I5187d17c,I49a76582
* changes:
  ConnectivityService: regroup bool <-> int conversions
  ConnectivityService: move reportNetworkConnectivity to handler
2017-04-22 00:34:07 +00:00
Treehugger Robot
e4f56a7e44 Merge "Use Vpn rules (not firewall) for always-on VPN" 2017-04-21 21:53:15 +00:00
Etan Cohen
859748f08c [AWARE] Add UID checking to WifiAwareNetworkSpecifier
Wifi Aware networks are per app - i.e. a requestor gets
a dedicated network. Change verifies that the only the
original requestor matches the created network (using UID).

Bug: 36053921
Test: Integration (sl4a) tests
Change-Id: I4ff3994731dd7ccb88e2bea333d1e6905b136f02
2017-04-21 18:47:35 +00:00
Hugo Benichi
ab7d2e64c9 ConnectivityService: regroup bool <-> int conversions
This patch cleanups conversion of boolean values to ints when reading
configuration values or sending Messages whose arg1 or arg2 has boolean
semantics.

Test: runtest frameworks-net
Change-Id: I5187d17cd746486f63b1c410d191c30edd93ff6f
2017-04-21 15:18:51 +09:00
Hugo Benichi
1c51d7acf8 ConnectivityService: move reportNetworkConnectivity to handler
This patch moves reportNetworkConnectivity onto the handler of
ConnectivityService.

This allows:
  - to inspect NetworkAgentInfo on the ConnectivityService handler,
    which is always more correct than doing so on a Binder thread.
  - to improve locking policies around NetworkAgentInfo.

Test: $ runtest frameworks-net
Bug: 37119619, 36902662
Change-Id: I49a765826e65c29a1995242290e5e7544112c94e
2017-04-21 15:17:54 +09:00
Erik Kline
ca41be796a Clarify IControlsTethering LOCAL_ONLY state name
Test: as follows
    - build
    - flashed
    - booted
    - "runtest frameworks-net" passes
    - manually starting tethering shows Settings and icon updates
Bug: 31466854
Bug: 32163131

Change-Id: I1f45511f00aca37480f894be4a9a004f1a3b35d7
2017-04-21 11:12:24 +09:00
Stanley Tng
ad4d1d8e28 Allow the Bluetooth MAC address to be updated asynchronously (2/3)
There are intermittent issues where either the returned Bluetooth
MAC address to Java framework is uninitialized or this address update
arrives too late. This fix will do 2 things:
(1) Returns error when MAC address is unavailable in the native code.
(2) Updates the MAC address later by adding a new broadcast event.

Test: Check address for these cases: factory reset, system reboot, and
Bluetooth re-enable.
Bug: 36709382

Change-Id: I09720193e38fdf9139e1bb146f8e1847e2b65b1a
2017-04-20 23:34:20 +00:00
Treehugger Robot
275edcb940 Merge "Switch to WifiManager.{start,stop}SoftAp()" 2017-04-20 15:37:31 +00:00
Treehugger Robot
4c7a999d79 Merge "Add local-only hotspot info into tether state change broadcast" 2017-04-20 12:47:55 +00:00
Hugo Benichi
458f75ef69 Merge "ConnectivityManager: remove obsolete callback types" 2017-04-20 12:38:29 +00:00
Erik Kline
8351faa900 Add local-only hotspot info into tether state change broadcast
Test: as follows
    - build
    - flashed
    - booted
    - "runtest frameworks-net" passes
    - manually starting tethering shows Settings and icon updates
Bug: 31466854
Bug: 32163131

Change-Id: I938074587dfeec221c5cdb43a392802ad3fc3589
2017-04-20 19:44:01 +09:00
Erik Kline
fe86a197a1 Merge "Make tetherChangePermission to be secured for AppOps permission" 2017-04-20 04:28:53 +00:00
Hugo Benichi
dba33db572 ConnectivityManager: remove obsolete callback types
This patch also:
  - suppresses callback triggers from ConnectivityService for these
    obsolete callback types.
  - marginally refactors callCallbackForRequest().

Test: runtest frameworks-net
Change-Id: Idfb75640732943c599de4975f252f706d21ad594
2017-04-20 10:42:38 +09:00
Hugo Benichi
a038568676 ConnectivityManager: unify prety printing of callback types.
And also remove some small code duplication (checkNotNull).

Test: built, flashed, runtest frameworks-net
Change-Id: Id6c13bca9d12f70b88806032e0a4fa198efbedc6
2017-04-20 10:42:38 +09:00
Treehugger Robot
9487dff8ab Merge "Handle shared libraries for split apks." 2017-04-19 17:13:13 +00:00
Tetsutoki Shiozawa
335d2edee2 Make tetherChangePermission to be secured for AppOps permission
Symptom:
AppOps verified the incorrect package of calling tether state
changing API.
It threw SecurityException by mistake.

Solution:
Pass the correct package name to enforceTetherChangePermission.

Bug: 32931147
Change-Id: Ia1167f26f556678b189a24a4a716f1a7e5cb12eb
2017-04-19 16:50:33 +09:00
Jeff Hao
7da652fd43 Handle shared libraries for split apks.
As we dexopt all the code paths of a package, we now append the code
paths to the list of shared libraries. These paths are passed as
relative paths since the apks are staged during installation, and are
not where they will be at runtime.

Part of a multi-project change.

Bug: 34169257
Test: cts-tradefed run singleCommand cts -d --module
CtsAppSecurityHostTestCases -t android.appsecurity.cts.SplitTests

Merged-In: I73823ca575560cbd445d78a6cfbfc72031943265
(cherry-picked from commit 16d4843433e024100b4ecd183f827ad5bd8772a6)

Change-Id: I943bf8234899e1b25d4eb5e98af15d9150a7a842
2017-04-18 17:08:34 -07:00
Jaewan Kim
c8d846ffef Add callback for AVRCP 1.6 support
Bug: 33828042
Test: Build
Change-Id: Iaf5cecfa38065cfeed096929952559d7cb2e248b
2017-04-18 20:16:13 +00:00
Erik Kline
ceb54c63dc Switch to WifiManager.{start,stop}SoftAp()
Test: as follows
    - built
    - flashed
    - booted
    - "runtest frameworks-net" passes
Bug: 31466854

Change-Id: I730d029128a14b936c111ae159b9708d935f4656
2017-04-18 15:22:49 +09:00
Erik Kline
f79a34d85d Flatten the transitions to tethering and hotspot.
The previous version could trigger a Log.wtf() if an error occured within
ServingState.enter() that caused a transition while a tranistion was
already in flight.

Test: as follows
    - build
    - flashed
    - booted
    - "runtest frameworks-net" passes
Bug: 31466854

Change-Id: I66a47caf22e39ab4ad7f4ddd60940e9fe1580729
2017-04-17 20:19:06 +09:00
Treehugger Robot
2fe972c822 Merge "Add PID info into ANR crash log header" 2017-04-14 18:03:12 +00:00
Hugo Benichi
eef918a66c Captive portal: rotate fallback urls
This patch introduces a new settings value to specify more than one url
for the fallback http probe in addition to the existing settings value.
If more than one url exists, a network will rotate urls for the fallback
probe one by one everytime the fallback probe is sent.

(not like commit 0908daaaf0, this patch
uses a comma to separate fallback urls, which works as expected with
Java's String.split())

Test: built, flashed, tested manually with various portal networks.
Bug: 36532213
Change-Id: I3c010bfee5b99db03a500776fbf47959a29d0578
2017-04-14 08:19:39 +09:00