Commit Graph

65618 Commits

Author SHA1 Message Date
TreeHugger Robot
ebb96c0fa9 Merge "Fix ScanResult array parceling." 2016-12-17 07:52:36 +00:00
TreeHugger Robot
7062f3be35 Merge changes I8e2ed73d,I42aeb522
* changes:
  Implement the request and recommend calls.
  Implement the discovery of a network recommendation provider.
2016-12-17 02:17:46 +00:00
Jeremy Joslin
c28e6fcf94 Fix ScanResult array parceling.
readParcelableArray() wasn't working as expected so I just parceled
the array myself.

Test: adb shell am instrument -e class android.net.RecommendationRequestTest  -w com.android.frameworks.coretests/android.support.test.runner.AndroidJUnitRunner
Change-Id: I47bc31adbedea817feaa5953cb6ee48506f9c6d6
2016-12-16 17:55:12 -08:00
TreeHugger Robot
10ec36772f Merge "Implicitly expose activities" 2016-12-17 00:19:19 +00:00
Todd Kennedy
388eb8c4a2 Implicitly expose activities
Activities that have a browsable web intent filter [action.VIEW,
category.BROWSABLE and http(s) scheme] are implicitly exposed to
instant apps. Authors can explicitly hide these activities by
using the attribute android:visibleToInstantApp="false".

Bug: 25119046
Test: cts-tradefed run commandAndExit cts-dev -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.EphemeralTest
Change-Id: I88b277a719e7ecd5631f8cbd281757eb3e3d2ce6
2016-12-16 14:55:06 -08:00
TreeHugger Robot
9e84b5db01 Merge "Restricting navigation into and from clusters." 2016-12-16 22:44:12 +00:00
Jeremy Joslin
145c343166 Implement the request and recommend calls.
Implemented requestRecommendation() and requestScores() to call
through to the bound network recommendation provider if available.

BUG: 33593157
BUG: 33668692
Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
Change-Id: I8e2ed73dc6876deb1a8bd47bcaeaca8db68f3a44
2016-12-16 13:30:16 -08:00
Jeremy Joslin
fa4f08ecee Implement the discovery of a network recommendation provider.
Updated the NetworkScorerAppManager to examine the list of configured
network recommendation providers and to select the first valid
provider.

As part of this update the old logic of looking for a valid network
scorer has been removed. Scorers/recommendation providers are only
selected from the configured list now. The setActiveScorer() method
has been deprecated as a result.

The NetworkScoreService has been updated to monitor the list of
potential recommendation providers and to reevaluate the binding
whenever they change. It also monitors the new setting for
NETWORK_RECOMMENDATIONS_ENABLED to connect or disconnect from the
provider as needed.

Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
BUG: 33158362
Change-Id: I42aeb5223da794f71f7e58cb1bdf18817200cbf2
2016-12-16 13:30:03 -08:00
Tamas Berghammer
f4b0962cac Enable logwrapper functionality on user builds am: 0ca16fa584 am: db05d4b4ed am: ed8757a761
am: f00963c71f

Change-Id: I10b9a367a1c2477683dbb404ebb8bfdd41d92263
2016-12-16 20:03:36 +00:00
Tamas Berghammer
a5a598c969 Zygote: Add invoke-with to zygote protocol am: b8f7c351b9 am: 45c2fffc52 am: d71bb300e6
am: b8d0e4d9fc

Change-Id: I7d962109d6fae5e0a359cb3fe04b1fc191e545de
2016-12-16 20:02:41 +00:00
Tamas Berghammer
f00963c71f Enable logwrapper functionality on user builds am: 0ca16fa584 am: db05d4b4ed
am: ed8757a761

Change-Id: I0f27f6aeb58690addb1c5f7978047ccb8d73ab84
2016-12-16 19:54:58 +00:00
Tamas Berghammer
b8d0e4d9fc Zygote: Add invoke-with to zygote protocol am: b8f7c351b9 am: 45c2fffc52
am: d71bb300e6

Change-Id: Ied54640c44ade52abd6a905526ba7789be14a332
2016-12-16 19:54:11 +00:00
Tamas Berghammer
ed8757a761 Enable logwrapper functionality on user builds am: 0ca16fa584
am: db05d4b4ed

Change-Id: Ic6c3395f9965657a7f9abe580867eeb81b59ed88
2016-12-16 19:46:55 +00:00
Tamas Berghammer
d71bb300e6 Zygote: Add invoke-with to zygote protocol am: b8f7c351b9
am: 45c2fffc52

Change-Id: I90999d84c9694bfeebea8d2c2d95d1d545bac7e8
2016-12-16 19:46:03 +00:00
Tamas Berghammer
db05d4b4ed Enable logwrapper functionality on user builds
am: 0ca16fa584

Change-Id: Ic18991f9a59f05356fcbcc65acc79be43fc68542
2016-12-16 19:38:38 +00:00
Tamas Berghammer
45c2fffc52 Zygote: Add invoke-with to zygote protocol
am: b8f7c351b9

Change-Id: I79db6f759b02ef612364fc857102615d51900cd9
2016-12-16 19:37:57 +00:00
Vadim Tryshev
418b1fc512 Restricting navigation into and from clusters.
Tabbing loops inside cluster. Tabbing outside of clusters (i.e. in
the default cluster) won’t enter clusters. Initial focus won’t go
into a cluster.

Arrows work like before.

Bug: 32151632
Test: Manual checks. CTS test will be added after feature freeze.
Change-Id: Icecbd75394e2dd4afe2e1c4e6bc9ac64f6785699
2016-12-16 10:41:44 -08:00
Roozbeh Pournader
d681725437 Merge "Switch Chronometer to use ICU instead of duration_hours etc" 2016-12-16 18:39:06 +00:00
Joe Onorato
10e237e5c8 Merge changes from topic 'incident_1'
* changes:
  First checkin of incident reporting.
  Add a native class to interact with DropBoxManager.
2016-12-16 18:19:50 +00:00
Tamas Berghammer
0ca16fa584 Enable logwrapper functionality on user builds
When an app is debuggable, check whether a script called "wrap.sh" exists
in the app's native library directory. If so, start the app using the
invoke-with functionality over the script. Weaken the invoke-with check
on the zygote side to allow the functionality for debuggable apps.

The goal of the functionality is to make malloc debug, strace and other
similar tools available for NDK based application developers.

Bug: 33668201
Test: manual - debug malloc can be enabled using the new feature
Change-Id: Ia4bec0854cf4dc08446f1671494200f54ef366ee
2016-12-16 09:03:06 -08:00
Tamas Berghammer
b8f7c351b9 Zygote: Add invoke-with to zygote protocol
Add "--invoke-with" to the zygote connection protocol. It was
already understood as an argument by the zygote.

Bug: 33668201
Test: m
Change-Id: I59095f2ac542aadff78a7ff1dded86cf5f192707
2016-12-16 09:03:01 -08:00
Makoto Onuki
de315b99dc Merge "ShortcutManagre: foreground check, more tests." 2016-12-16 17:01:35 +00:00
TreeHugger Robot
f6bd92e0dc Merge "Includes key/value on exception thrown when they're too large." 2016-12-16 05:34:09 +00:00
Mark Lu
bce1e456dc docs: changes to broadcast documentation am: 33ec106d22 am: 377dab8ab3 am: fd737791e8
am: 45d6ba7b98

Change-Id: I2dcb6bc7f8ebf385bc7d6a571a760c140a65e9fb
2016-12-16 05:30:20 +00:00
Mark Lu
45d6ba7b98 docs: changes to broadcast documentation am: 33ec106d22 am: 377dab8ab3
am: fd737791e8

Change-Id: I18b47ba01b0af8882c25526d8823f263f456aae2
2016-12-16 05:14:34 +00:00
Mark Lu
fd737791e8 docs: changes to broadcast documentation am: 33ec106d22
am: 377dab8ab3

Change-Id: I2e8377b188ce6a10ea633e089c3a20f9ef7908fd
2016-12-16 05:06:42 +00:00
Mark Lu
377dab8ab3 docs: changes to broadcast documentation
am: 33ec106d22

Change-Id: I673efc100756ee6d6ef0d2afa99d48d471ce0987
2016-12-16 04:59:08 +00:00
TreeHugger Robot
c3138934c9 Merge "Use local locks in SharedPreferencesImpl." 2016-12-16 04:01:34 +00:00
TreeHugger Robot
624a821c8d Merge "Fix IntentFilter#getAutoVerify()" 2016-12-16 03:58:27 +00:00
Tamas Berghammer
2688cfcc4a Merge "Install all files from the lib directory for debuggable apps" am: c0cc7c646c am: 736852e2c4 am: db274f7859
am: 362775ee20

Change-Id: I9194b856610e7b102bc46705fb2cb6937def7023
2016-12-16 03:50:40 +00:00
Tamas Berghammer
362775ee20 Merge "Install all files from the lib directory for debuggable apps" am: c0cc7c646c am: 736852e2c4
am: db274f7859

Change-Id: I4bd6e3da9c41fcfb9a5d8f39c63da446515fc9ff
2016-12-16 01:46:39 +00:00
Tamas Berghammer
db274f7859 Merge "Install all files from the lib directory for debuggable apps" am: c0cc7c646c
am: 736852e2c4

Change-Id: I0faa3ab541ca8d1400719653171b4bcafceada81
2016-12-16 01:21:31 +00:00
Tamas Berghammer
736852e2c4 Merge "Install all files from the lib directory for debuggable apps"
am: c0cc7c646c

Change-Id: Idc3b17fa4044ab0dd50fa141f1ec5ec8a47810b0
2016-12-16 00:48:21 +00:00
Treehugger Robot
c0cc7c646c Merge "Install all files from the lib directory for debuggable apps" 2016-12-16 00:35:55 +00:00
Roozbeh Pournader
241872a93b Switch Chronometer to use ICU instead of duration_hours etc
The data in ICU has higher quality and is more comprehensive.
(Additionally, the old code was using spaces to separate hours,
minutes, and seconds, which was not correct for some locales.)

Finally, remove duration_hours etc, since there is no longer any user
of it.

Bug: 33670388
Bug: 19418509
Test: manual and CTS (cts-tradefed run cts-dev --module CtsWidgetTestCases --test android.widget.cts.ChronometerTest)
Change-Id: I97efa62186b94ed444fff90fa26bf71ac1599261
2016-12-15 16:00:45 -08:00
Makoto Onuki
a01f4f03e9 ShortcutManagre: foreground check, more tests.
Test: Manual test and all the unit tests:
adb shell am instrument -e class com.android.server.pm.ShortcutManagerTest1 -w com.android.frameworks.servicestests
... to test8

Bug 32908854

Change-Id: I30ba421e9730741776c1936e40ccf7b7431289da
2016-12-15 15:58:41 -08:00
TreeHugger Robot
5fb5881dbd Merge "Adding support for PIP actions." 2016-12-15 22:52:30 +00:00
Philip P. Moltmann
ac6f7e412f Use local locks in SharedPreferencesImpl.
Fixes: 33430093
Test: SharedPreferences CTS tests
Change-Id: Ia2ac48a0273608d5be6a227dc6669cea9d44bc1d
2016-12-15 14:44:50 -08:00
Christopher Tate
3decab60ac Fix IntentFilter#getAutoVerify()
Also fix the verification result display in dumpsys.

Bug 21490494

Change-Id: I043bd9a7cc0dc6bf4490b5501682aef63cbe5c72
2016-12-15 14:41:57 -08:00
Roozbeh Pournader
ff53f923e9 Merge "Use TextDirectionHeuristics to detect text direction in Html" 2016-12-15 22:00:38 +00:00
Roozbeh Pournader
2beaa2e45e Merge "Use ICU for formatting in DateUtils.formatDuration" 2016-12-15 21:59:46 +00:00
Chris Craik
9180f64186 Merge "CriticalNative for RenderNode and DisplayListCanvas" 2016-12-15 21:48:17 +00:00
TreeHugger Robot
8102d91377 Merge "Teleportation between clusters." 2016-12-15 21:40:12 +00:00
Victor Chang
ab10237900 Merge "Add EXTRA_PROVISIONING_DISCLAIMERS" 2016-12-15 20:34:31 +00:00
Felipe Leme
c23397a647 Includes key/value on exception thrown when they're too large.
Bug: 33662416

Test: manual verification
Change-Id: I11436a8454cef5f63b0fb58919f2f02de6234f6b
2016-12-15 12:25:51 -08:00
Vadim Tryshev
01b0c9ed4e Teleportation between clusters.
Per the UX spec, key combos for quickly jumping between clusters are
Meta+Right and Meta+Left. However, these events don’t get delivered
to the app, and I’ll have to implement this plumbing after the
feature freeze. For now, the temporary combos are Ctrl-Shift-”-”
and Ctrl-Shift-”+”.

In addition to the key combo processing, the CL adds public APIs for
teleportation; they are similar to the API for moving the focus.

Bug: 32151632
Test: Manually checking that teleportation works. CTS test will be
added after the feature freeze.

Change-Id: I622156b9e4cc7c44e61623081d6d079bbe04fd02
2016-12-15 11:51:27 -08:00
Chris Craik
fc29424a3c CriticalNative for RenderNode and DisplayListCanvas
Bug: 33460152
Test:  adb shell am instrument -w -e class android.view.ViewShowHidePerfTest com.android.perftests.core/android.support.test.runner.AndroidJUnitRunner

- Also FastNative for setDisplayList, simplifying upcall into field setter.

- Also removes depth sweep parameter for ViewShowHideTests for now, they're not
providing much extra info.

Together with Outline/Path CL, about 25% faster visibility toggles

960MHz Bullhead Before (prior to Outline/Path CL):

$ adb shell am instrument -w -e class android.view.ViewShowHidePerfTest com.android.perftests.core/android.support.test.runner.AndroidJUnitRunner | grep min
INSTRUMENTATION_STATUS: add[Factory:NestedLinearLayoutTree,depth:6]_min=743505
INSTRUMENTATION_STATUS: goneToVisible[Factory:NestedLinearLayoutTree,depth:6]_min=332420
INSTRUMENTATION_STATUS: invisibleToVisible[Factory:NestedLinearLayoutTree,depth:6]_min=354154
INSTRUMENTATION_STATUS: recordAfterAdd[Factory:NestedLinearLayoutTree,depth:6]_min=1106095
INSTRUMENTATION_STATUS: remove[Factory:NestedLinearLayoutTree,depth:6]_min=1261290
INSTRUMENTATION_STATUS: visibleToGone[Factory:NestedLinearLayoutTree,depth:6]_min=356153
INSTRUMENTATION_STATUS: visibleToInvisible[Factory:NestedLinearLayoutTree,depth:6]_min=362149

After (this CL + Outline/Path CL):

$ adb shell am instrument -w -e class android.view.ViewShowHidePerfTest com.android.perftests.core/android.support.test.runner.AndroidJUnitRunner | grep min
INSTRUMENTATION_STATUS: add[Factory:NestedLinearLayoutTree,depth:6]_min=636061
INSTRUMENTATION_STATUS: goneToVisible[Factory:NestedLinearLayoutTree,depth:6]_min=267481
INSTRUMENTATION_STATUS: invisibleToVisible[Factory:NestedLinearLayoutTree,depth:6]_min=289433
INSTRUMENTATION_STATUS: recordAfterAdd[Factory:NestedLinearLayoutTree,depth:6]_min=976827
INSTRUMENTATION_STATUS: remove[Factory:NestedLinearLayoutTree,depth:6]_min=1207286
INSTRUMENTATION_STATUS: visibleToGone[Factory:NestedLinearLayoutTree,depth:6]_min=286148
INSTRUMENTATION_STATUS: visibleToInvisible[Factory:NestedLinearLayoutTree,depth:6]_min=292834

Change-Id: Iaddfa9550bdbab807c662595d005126d98cdc277
2016-12-15 11:30:08 -08:00
Joe Onorato
1754d744a7 First checkin of incident reporting.
There are a few major pieces here:

incidentd
---------
This daemon (started by init) runs and accepts incoming requests to take
incident reports.  When prompted, it calls into various system services
and fills in an IncidentProto data structure, and then writes the report
into dropbox.

The next steps for incidentd:
    - Security review of SELinux policies. These will be a subset of
      the dumpstate permissions.  Until this is done, incidentd is
      not started at boot time.

incident
--------
This shell command calls into incidentd, and can initiate an incident
report and either capture the output or leave for dropbox.

incident_report
---------------
This host side tool can call adb shell with the correct parameters
and also format the incident report as text.  This formatting code
was left of the device on purpose.  Right now it's pretty small, but
as the number of fields increases, the metadata and code to do the
formatting will start to grow.

The incident_report command also contains a workaround to let it
work before incidentd is turned on by default.  Right now, it is
implemented to call adb shell dumpsys <service> --proto directly,
whereas in the future it will go through the full incidentd flow.

incident_section_gen
--------------------
A build-time tool that generates a stripped down set of information
about the fields that are available.

libincident
-----------
This library contains the code to connect to incidentd, and the
meta proto definitions that are used by the framework protos.
The basics are here now, but they are not fully fleshed out yet.
The privacy.proto file contains annotations that can go in the
proto file that we will later use to filter which fields are
uploaded, and which are used by local sources.  For example, a
device in a test lab is safe to upload much much more information
than a real user.  These will share the same mechanism, but the
user's output will be filtered according to these annotations.

frameworks/core/proto
---------------------
These .proto files contain the definitions of the system's
output.  There is one master android.os.IncidentProto file that
is the top level of an incident report, but some other services
(notification, fingerprint, batterystats, etc) will have others
that are used directly by the logging mechanism.

Other files which are shared by several of the services also go
here, such as ComponentName, Locale, Configuration, etc.  There
will be many more.

There is also a first iplementation of a dump method handling
--proto in the fingerprint service.

IncidentManager
---------------
The java API to trigger an incident report.

Test: Not written yet
Change-Id: I59568b115ac7fcf73af70c946c95752bf33ae67f
2016-12-15 11:23:05 -08:00
Joe Onorato
de5b027d2c Add a native class to interact with DropBoxManager.
Test: Not written yet
Change-Id: I63ed888bd76f75c78a244a1bffae2d26f3b5f055
2016-12-15 11:23:05 -08:00
Phil Weaver
037692d5ab Add null check to a11y interrupt. am: 74f9e1b867
am: 718f403b50

Change-Id: I9d70640813bd91e035f9614f0403e18b7706e53f
2016-12-15 19:12:02 +00:00