2035 Commits

Author SHA1 Message Date
David Brazdil
7d69d3a855 Merge "Droidfood only: Move private APIs to dark greylist by default" 2018-02-01 11:07:39 +00:00
David Brazdil
b43351f84a Droidfood only: Move private APIs to dark greylist by default
In order to tune the API lists, we initialize the light greylist with
APIs we know are used by popular apps. All the other private APIs are
moved into dark greylist. Light greylist will be set to not warn at
all, while dark greylist will produce warnings. This will allow us to
collect logs and tune the lists without breaking all of our dogfooders.

Bug: 64382372
Bug: 72793280
Test: make
Change-Id: Ice6c487eeca8900e6a70abe1b87e8c211ef1066e
2018-02-01 09:47:59 +00:00
Andreas Gampe
93b64c9a62 Frameworks: Disable Errorprone warnings for platformprotoslite
Protos are very noisy with MissingOverride and other warnings.

Bug: 72714520
Test: m javac-check-platformprotoslite RUN_ERROR_PRONE=true
Change-Id: I91cf96df12e82866dde36ab4f58b6ba7be9f2c4e
2018-01-30 18:50:34 -08:00
David Brazdil
a85b43b80b Merge "Copy hidden API blacklist/dark greylist into build folder" am: 656096516c am: 47f632d48f
am: 43f511a928

Change-Id: Ibf3581193d88df1916b1c2d57c94d01095cdac97
2018-01-26 19:51:11 +00:00
David Brazdil
f16ac00fe8 Copy hidden API blacklist/dark greylist into build folder
This change is meant for ART buildbots which build against a pinned
commit of the framework and thus do not have the commit which
introduced hidden API lists. Normal builds will now copy the blacklist
and dark greylist into the build folder first, and then generate the
light greylist as usual. If a buildbot does not have the framework
changes, it can create dummy API lists in the build folder before
starting the build and avoid the issue.

Test: make
Bug: 64382372
Change-Id: Ib6e53a45bcc917abb4ba67fdcbf01d4a19c2d56f
2018-01-26 11:49:54 +00:00
David Brazdil
e87f629e8c Merge "Create hidden API lists" am: b6a5c92b50 am: 265863f9d9
am: a5cc0bb027

Change-Id: I6e85de117103f62cea394f7d00478ffba3ea0622
2018-01-25 15:57:31 +00:00
David Brazdil
0649c8d5b3 Create hidden API lists
Android is beginning to put restrictions on the usage of private APIs.
In order to facilitate a transitionary period, some APIs will remain
accessible but issue a warning (greylist), other will see restrictions
right away (blacklist).

This patch create two new text files which will be used to store manual
lists of dex signatures of hidden APIs. These are the blacklist and
dark greylist. They should be mutually exclusive and both be subsets of
INTERNAL_PLATFORM_PRIVATE_DEX_API_FILE. The last list, light greylist,
is generated as INTERNAL_PLATFORM_PRIVATE_DEX_API_FILE minus the two
manual lists.

Bug: 64382372
Test: m
Change-Id: Ia694ef79bece819c87db853ccaea5e95f38d3e84
2018-01-24 20:48:37 +00:00
TreeHugger Robot
b5253b65a4 Merge "Add more information to incident header. Especially add config keys to check if the report is uploadable." 2018-01-22 09:20:52 +00:00
Yi Jin
437aa6e8ad Add more information to incident header. Especially add config keys
to check if the report is uploadable.

Move incidentheader.proto to libincident so statds is able to include a lite
proto class for incident header.

Change IncidentReportArgs to add the proto object instead of serialized
bytes to prevent caller gives meaningless data.

Bug: 70241842
Test: push config to statsd and verify incidentd generate the report
with correct header.

Change-Id: If95b655be71047b019b229e5903a08f3c21a1f29
2018-01-21 22:36:01 -08:00
David Brazdil
ae5ba1e5cd Merge "Generate new API signatures from doclava" am: fa208b4226 am: 72b7f03179
am: ccc31988ee

Change-Id: Ibc40df91d9aa4f1258856ddcd85204ce62297bf1
2018-01-20 11:43:40 +00:00
Primiano Tucci
e4d44919aa Statsd -> Perfetto integration
This CL invokes the perfetto client utility to start the
collection of a trace when an anomaly that subscribed to
Perfetto is detected. The code simply spawns the
/system/bin/perfetto client and passes the trace config via
stdin. The client takes care of the dropbox upload.
The CollectPerfettoTraceAndUploadToDropbox() function does
NOT wait for the full trace collection (in order to avoid
blocking statsd) and instead returns immediately after having
spawned perfetto.

Change-Id: I4f02067bad7a46ede7b6e4841cdcf381c1a4e2a7
Bug: 71795552
2018-01-19 23:50:07 +00:00
Paul Duffin
fb48139a41 Remove junit classes from android.jar
Bug: 30188076
Test: make checkbuild
Change-Id: Ia90b8a81495299165d6f8d373ab8c5937e2a5290
2018-01-19 08:16:36 +00:00
David Brazdil
a793f3ff52 Generate new API signatures from doclava
Doclava now generates API signatures of classes and their members
which are not part of the public SDK. Adjust the arguments passed
to Doclava to enable that feature.

Bug: 64382372
Test: m
Change-Id: I47de683dd2b00fce73b82581a13fbe1013ef625f
2018-01-18 10:40:11 +00:00
Holly Jiuyu Sun
5736685560 Merge "Add APIs to EuiccCardManager." am: a5bc474e2c am: f07319a6df
am: beacd5e4fa

Change-Id: I7aa42d89c69911137a86b86ee59463efe46a81c3
2018-01-18 04:28:28 +00:00
Holly Jiuyu Sun
bbc858006f Add APIs to EuiccCardManager.
The CL contains parts of the EuiccCard APIs. getEid() is sync. All the
other APIs are async.
Move ResetOptions from EuiccCard to EuiccCardManager.
The other APIs will be added in a follow-up CL.

Bug: 38206971
Test: test on phone
Change-Id: Iba098ee779b8ea4e244e0e4cf7318139666cc94b
2018-01-17 16:38:42 -08:00
Paul Duffin
2141827700 Move legacy-test to test-base
Make it consistent with the test-mock and test-runner directories.
Also renames the files in api/ subdirectory.

(cherry picked from commit f779efd62cd579f67bd3b387d59fda11ee0cbe90)

Bug: 30188076
Test: make checkbuild
Change-Id: Ied3621e6201d8717223fe1ccd4ea77d458126b25
Merged-In: If4f99a65fcca416ede5b3e63481398f0b451bcb7
2018-01-12 15:52:39 +00:00
yuemingw
8e62041b84 Merge "Add public ApnSetting in android.telephony." am: f9063b378b am: f68992a6a7
am: e3d4b7d3d2

Change-Id: Ia4100787507887692c6aa5df4e331fba59993255
2018-01-11 05:21:32 +00:00
yuemingw
9361a1394c Add public ApnSetting in android.telephony.
Bug: 68208293
Test: manual

Add public ApnSetting class in android.telephony. Move APN TYPE constants out from
PhoneConstants into public ApnTypeConstants.

Design doc: https://docs.google.com/document/d/1UEYjhRGSEwwccPLs_FzFD-IeOsVq63gxmAHNtDfnzAY/edit?pli=1#

Change-Id: I74d23644a872df0abc19730285ae196b6e3e39dd
2018-01-10 03:17:05 +00:00
Colin Cross
c9f25c4ee5 Remove obsolete aidl list
Remove the obsolete aidl list, framework.aidl is now generated
from the stubs jars.

Bug: 70046217
Test: m checkbuild
Change-Id: I2417f0a8f193bd4db4058f6f0bb05c147e18de25
Merged-In: I2417f0a8f193bd4db4058f6f0bb05c147e18de25
(cherry picked from commit fac48f998e763060dfdfb6e76927ec85aa63e1eb)
2018-01-05 17:40:27 -08:00
Colin Cross
fac48f998e Remove obsolete aidl list
Remove the obsolete aidl list, framework.aidl is now generated
from the stubs jars.

Bug: 70046217
Test: m checkbuild
Change-Id: I2417f0a8f193bd4db4058f6f0bb05c147e18de25
2018-01-04 14:59:10 -08:00
Colin Cross
e9727164cb Merge changes I9de0ffe9,Idc804896 am: 153fb1c6e0 am: 99161bc1c7
am: 52d4011195

Change-Id: Ia3b7f49d4dbd38660570c7c84991a69f86bf24e4
2018-01-04 01:17:42 +00:00
Colin Cross
153fb1c6e0 Merge changes I9de0ffe9,Idc804896
* changes:
  Use sdkparcelables to generate framework.aidl
  Initial sdkparcelables
2018-01-04 00:48:50 +00:00
Jack Yu
23192ff57f Added AIDL for cell identity
Added AIDL for CellIdentityCdma, CellIdentityGsm, CellIdentityLte
and CellIdentityWcdma. This is the preliminary change for IWLAN
refactoring as network registration state will be moving into
system API.

Test: Build
bug: 64132030
Merged-In: I6763d4b6e51cf354b01ee5bfb5d37114394f3063
Change-Id: I6763d4b6e51cf354b01ee5bfb5d37114394f3063
(cherry picked from commit 31db18a4c078b77f011170a27eb95c94398efde6)
2017-12-27 23:29:49 -08:00
Jack Yu
31db18a4c0 Added AIDL for cell identity
Added AIDL for CellIdentityCdma, CellIdentityGsm, CellIdentityLte
and CellIdentityWcdma. This is the preliminary change for IWLAN
refactoring as network registration state will be moving into
system API.

Test: Build
bug: 64132030
Change-Id: I6763d4b6e51cf354b01ee5bfb5d37114394f3063
2017-12-27 16:19:20 -08:00
Paul Duffin
9f6282d0ab Remove android.test.mock classes from android.jar
This removes all android.test.mock from the main android.jar.

This change is being done now rather than wait until they can all be
removed together because the code base is a moving target. Doing this
change minimizes the window during which other developers could either
revert the previous changes that make this possible or add new code that
relies on the android.test.mock classes being in android.jar and so
would require yet more changes.

Bug: 30188076
Test: make checkbuild
Change-Id: I3d31e4528c99e2e297aaec9c4b657bdd305bd464
2017-12-21 10:58:35 +00:00
TreeHugger Robot
107f7cc4c4 Merge "Remove stream.proto and cpp-streaming-proto generates field name to id mapping by default" 2017-12-19 19:07:53 +00:00
Paul Duffin
187a48de62 Remove non-junit android.test.base classes from android.jar
This removes those android.test.** classes which are part of the
android.test.base stubs jar from the main android.jar.

The junit classes will be removed at a later date. It cannot be done at
the moment because it requires a lot of changes to the build files.

This change is being done now rather than wait until they can all be
removed together because the code base is a moving target. Doing this
change minimizes the window during which other developers could either
revert the previous changes that make this possible or add new code that
relies on the android.test.base classes being in android.jar and so
would require yet more changes.

Bug: 30188076
Test: make checkbuild
Change-Id: I9a4df968835166cc3d30c076ef3036711dfe5b7f
2017-12-19 10:42:28 +00:00
Yi Jin
f68e747e05 Remove stream.proto and cpp-streaming-proto generates field name to id
mapping by default

Test: atest incident_helper_test
Change-Id: Iab04973ea78b942e44503fcd6ae60808caf3b9e0
2017-12-18 17:37:50 -08:00
Colin Cross
77ebd08d17 Use sdkparcelables to generate framework.aidl
Use sdkparcelables to extract public parcelables from the
public, test, and system stubs jars, and combine them into
framework.aidl.

Bug: 70046217
Test: m checkbuild
Change-Id: I9de0ffe9dffbd80c8cb785b0624959c52c3200a1
2017-12-16 20:43:50 -08:00
Paul Duffin
1895f2e5bb Remove non-junit android.test.runner classes from android.jar
This removes those android.test.** classes which are part of the
android.test.runner stubs jar from the main android.jar.

The junit classes will be removed at a later date. It cannot be done at
the moment because it requires a lot of changes to the build files.

This change is being done now rather than wait until they can all be
removed together because the code base is a moving target. Doing this
change minimizes the window during which other developers could either
revert the previous changes that make this possible or add new code that
relies on the android.test.runner classes being in android.jar and so
would require yet more changes.

Bug: 30188076
Test: make checkbuild
Change-Id: I4e3c3bfea77ce15ca7a9ba7d36aee5396f67affb
2017-12-15 07:34:47 +00:00
Joe Onorato
c9f1a9e3dd Merge "Fix how we build the statsd protos." 2017-12-14 05:33:33 +00:00
TreeHugger Robot
4b1557d3a0 Merge "Give SliceManagerService a concept of pinned slices." 2017-12-14 04:09:55 +00:00
Joe Onorato
62c220b20b Fix how we build the statsd protos.
This lets us include frameworks protos, and use the constants
and messages from them.

Change-Id: I609d6e524f780e6a5beea543a68561bede47813e
Test: make
2017-12-13 18:26:45 -08:00
Jason Monk
74f5e36f49 Give SliceManagerService a concept of pinned slices.
Allow launcher/assistant to pin slices. Also allow other apps
with access to a slice to pin it dynamically by adding a listener
to it. Dynamic pinnings can expire when the host app dies because
the binder will no longer be alive.

Public docs and unhiding will come in a later CL with CTS tests.

Bug: 68378571
Test: runtest --path frameworks/base/services/tests/uiservicestests
Change-Id: I1dd9a839f547fc949922b766ba4b54e6d50f3125
2017-12-13 14:28:09 -05:00
Paul Duffin
e25cedd64d Remove unnecessary filtering of android.test.mock files
Previously the android.test.mock files were in the test-runner/src
directory so had to be filtered out of the android.test.runner source
files but the android.test.mock files are now in their own test-mock/src
directory so the filtering is no longer required.

Bug: 30188076
Test: make checkbuild
Change-Id: I1f28fc0735e16fa166663e5797af641b08a4926c
2017-12-13 07:37:49 +00:00
Colin Cross
d330eeeeda Merge "Separate android.test.mock from test-runner source" 2017-12-12 23:25:48 +00:00
Paul Duffin
69516f4df7 Separate android.test.mock from test-runner source
Extracts the source for the android.test.mock library from the
frameworks/base/test-runner directory into its own
frameworks/base/test-mock directory. They are already treated separately
at runtime and compile time so this just makes the separation complete.

Bug: 30188076
Test: make checkbuild
Change-Id: I20e5b06ba79677e76117c82e9f9e2ecd15e5fed6
Merged-In: I20e5b06ba79677e76117c82e9f9e2ecd15e5fed6
(cherry picked from commit e254526f0fe5d22681555bd4a00b7ee96fee1dc1)
2017-12-12 23:23:31 +00:00
Yigit Boyar
193ee545ed Remove data binding from platform docs
They are build in gradle now w/ tools.

Bug: 69160652
Test: n/a
Change-Id: I550f73f64238d6c46c8285a1d0c5523d42c6513e
2017-12-11 13:01:31 -08:00
Jeff Sharkey
c8dc254b94 Another attempt at diffs in offline SDK docs.
We already generate offline SDK docs as part of "docs" build, and
this change simply adds the "-diff" targets so they're also included.

Test: make -j48 docs dist
Bug: 69115817
Change-Id: Iecd3f070280b078fbdca91fdc1a6b8d65b8df863
2017-12-08 14:52:40 -07:00
Jack Yu
b592e29f28 Moved data connection response into system api.
This is a preliminary step for IWLAN refactoring, where data response
will be one of the parameter in data service callback.

Test: Telephony sanity tests
bug: 64132030
Merged-In: I7eb5318cd75ca3b7a29d5bf0da18d6b29a228ee1
Change-Id: I7eb5318cd75ca3b7a29d5bf0da18d6b29a228ee1
(cherry picked from commit e44609b15866d080e0f8813b99d04b51a6f32929)
2017-12-08 13:28:07 -08:00
Jeff Sharkey
e33a972e3f Emit diffs into offline SDK docs.
We already generate offline SDK docs as part of "docs" build, and
this change simply adds the "-diff" targets so they're also included.

Test: make -j48 docs dist
Bug: 69115817
Change-Id: Ic8b29b32c46feabf1951125edebe60ab8069e844
2017-12-07 16:29:27 -07:00
Jack Yu
c7efe16191 Merge "Moved data connection response into system api." 2017-12-07 19:01:29 +00:00
Jack Yu
e44609b158 Moved data connection response into system api.
This is a preliminary step for IWLAN refactoring, where data response
will be one of the parameter in data service callback.

Test: Telephony sanity tests
bug: 64132030
Change-Id: I7eb5318cd75ca3b7a29d5bf0da18d6b29a228ee1
2017-12-07 00:27:17 -08: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
Jeff Sharkey
bc4f48b21d Emit all APIs using Predicates.
Generate APIs using updated doclava.

Test: manual inspection of API text files
Bug: 69505783
Change-Id: I2efd22998a64ebb57588b073c4a591242f4aef91
Merged-In: I2efd22998a64ebb57588b073c4a591242f4aef91
2017-12-06 21:56:12 -07:00
Jason Monk
8f5f7ff5fa Add system service for slices
Will be used to manage permissions and possibly pinned state for slices.

Test: manual
Change-Id: Ie53f4988f817ac5b920087567dbac751e2857dbf
2017-12-05 13:37:37 -05:00
Colin Cross
b42cfb691d Merge "Fix droiddoc when OUT_DIR is an absolute path"
am: 85f095e246

Change-Id: I5a91ba906958777944fc25fb5de281e4c8beebe7
2017-12-05 01:29:12 +00:00
Colin Cross
0c7609553d Fix droiddoc when OUT_DIR is an absolute path
The droiddoc rules were passing the sources in through
LOCAL_SRC_FILES, which gets prefixed with $(LOCAL_PATH).  They
were prefixing ../.. to try to counter frameworks/base in
$(LOCAL_PATH), but that doesn't work for absolute paths to
generated files in an absolute $(OUT_DIR).

Use $(LOCAL_GENERATED_SOURCES) for anything that is in $(OUT_DIR)
instead, which takes paths that are relative to the top of the tree
or absolute.

Bug: 70166718
Test: m OUT_DIR=/tmp/out docs
Change-Id: I93b743607c2b8ce05512ecd4bbe860747cb48428
Merged-In: I93b743607c2b8ce05512ecd4bbe860747cb48428
(cherry-picked from commit bd200ce7d4ebe31ad4327683e59af269420b0ef5)
2017-12-05 01:07:53 +00:00
Colin Cross
bd200ce7d4 Fix droiddoc when OUT_DIR is an absolute path
The droiddoc rules were passing the sources in through
LOCAL_SRC_FILES, which gets prefixed with $(LOCAL_PATH).  They
were prefixing ../.. to try to counter frameworks/base in
$(LOCAL_PATH), but that doesn't work for absolute paths to
generated files in an absolute $(OUT_DIR).

Use $(LOCAL_GENERATED_SOURCES) for anything that is in $(OUT_DIR)
instead, which takes paths that are relative to the top of the tree
or absolute.

Bug: 70166718
Test: m OUT_DIR=/tmp/out docs
Change-Id: I93b743607c2b8ce05512ecd4bbe860747cb48428
2017-12-04 14:29:20 -08:00
Colin Cross
943e2aa7ef Convert framework.jar to Android.bp
Use Soong to build framework-res.apk and framework.jar.
See build/soong/README.md for more information.

Bug: 69917341
Test: m checkbuild tests docs
Test: manually compare framework.jar and framework-res.apk
Test: manually compare out/target/common/docs
Change-Id: Ibdfe1cbf34d97c43f4857c2c5d7604fa72d5b5a4
Merged-In: Ibdfe1cbf34d97c43f4857c2c5d7604fa72d5b5a4
(cherry picked from commit cf3a0b5355c6138538f9f3d4b369a875814bc01c)
2017-12-03 20:23:43 -08:00