Commit Graph

70 Commits

Author SHA1 Message Date
David Brazdil
6f6a126b9c Build dark greylist from public + light grey API
The dark greylist is meant to contain non-SDK APIs which are "related"
to APIs accessible to apps without restrictions. The list used to be
built as all non-SDK APIs in the same package as those on the light
greylist. That is not sufficient and should include the public SDK API
packages too.

This patch modifies the makefile to generate a list of public API DEX
signatures with Doclava and then use that as a basis for the dark
greylist generation.

Bug: 80461842
Bug: 64382372
Test: make out/target/common/obj/PACKAGING/hiddenapi-blacklist.txt
Change-Id: I4b1588013f26661207126b4006cdef0a0fc8ae2c
2018-06-07 09:45:01 +00:00
Nan Zhang
4212eb1bef Add metalava based api-stubs modules in Android.bp
Test: m clean && m metalava-api-stubs-docs
Bug: b/78245848
Change-Id: Ie0943d306af4176d965425ec85236cd173c1e870
2018-06-05 17:00:52 -07:00
Jiyong Park
fa15a99fe9 Remove FlpHardwareProvider
After Treble's FLP merge into GNSS HAL, the FlpHardwareProvider is just
an empty shell. Removing FusedLocation and/or Flp + Hardware classes
altogether.

Bug: 35726697
Test: m -j
Test: Open Google Map and then walk around. The dot moves as I walk.

Merged-In: I7f413e38b57424e8ebb9d7d14d94f145a48d10f8
Change-Id: I7f413e38b57424e8ebb9d7d14d94f145a48d10f8
(cherry picked from commit 4cc3a1c056)
2018-05-25 16:38:52 +09:00
Nan Zhang
39d2d18b80 Update Android.bp for api-stubs in order to do api-check.
Bug: b/78034256
Test: m clean && m checkapi

Change-Id: Ifbda8825f95e26bb79aac9b1bb73c5e43f12d1fb
Merged-In: Ifbda8825f95e26bb79aac9b1bb73c5e43f12d1fb
2018-05-15 15:47:01 -07:00
David Brazdil
96c9cbc1a1 Build same hidden API lists as in pi-dev
P branch builds hidden API lists in a separate invocation of droiddoc
which includes @SystemApi and @TestApi annotated class members in the
public API. This patch creates the same build rule in the master branch,
only with Soong instead of Makefile.

Test: make out/soong/.intermediates/frameworks/base/hiddenapi-lists/android_common/private-dex.txt
Merged-In: Ifa912f8751025b7de24a982a1a227a9c27d18267
Change-Id: I80860c2b9f7213db65d0a9ca65bd645187aa0ce0
2018-05-02 08:54:02 +00:00
David Brazdil
df41728b85 Generate @removed DEX API signatures
CL I8fe27e8c03334f9c90204db1e69447de65a06a38 adds support to generate
a list of all @removed DEX API signatures. Amend the public API build
rule to produce this file.

Bug: 78182899
Test: make
Change-Id: Iba8869ce6e4f401a8e420ad83ab459d25bbbaae0
2018-04-24 16:27:53 +01:00
Anton Hansson
e5bf20608a Move frameworks/base off the SRC_API_DIR variable.
This directory is going away. Migrate to the new paths, and replace the
long list of "since" arguments with a loop in the makefile. Also fix the
soong buildfile to use the new path and the 28 prebuilts.

This removes the need to update it every time an API is finalized (in make,
I don't know how to make loops in soong).

Bug: 77525052
Test: Verified variable is the same before & after, except for path change
Change-Id: I1d4e87e7840e979b83779a2aefe176e7c1ed1527
Merged-In: I1d4e87e7840e979b83779a2aefe176e7c1ed1527
2018-04-23 15:46:19 +01:00
Nan Zhang
99ce5c7090 Add filegroup for supporting apache-http stubs generation.
Bug: b/70351683
Test: m clean && m check-apache-http-legacy-api,
and compare the old and new stubs.jar using md5sum.

Change-Id: I0035837aef48a76e40a2c723c2adce3ff129ad28
Merged-In: I0035837aef48a76e40a2c723c2adce3ff129ad28
2018-04-11 14:57:28 -07:00
Colin Cross
a2b78a7ed2 Add a droiddoc generator for hwbinder.stubs
hwbinder.stubs provides stubs for @SystemAPI hwbinder classes
that doesn't depend on framework, used to break a dependency cycle
between hidl interfaces and android_system_stubs_current while
satisifying the link type checks.

Bug: 77285514
Test: m checkbuild
Change-Id: Id4093e19f607dc5b0c663e1b637012799ab110c3
2018-03-29 22:41:40 -07:00
Steven Moreland
4dde8a113b Allow HIDL to be used in priv-apps.
Marking HIDL as SystemApi to allow vendor apps to talk to their own
native HIDL services. This includes implementing HIDL callback objects.

HIDL (HAL interface design language) is a language that is used to
facilitate vendor<->system communication which provides guarantees
of ABI stability. For system and vendor services alike, this can also
be used for internal communication.

Bug: 67725182
Test: boot device, hidl_test_java
Change-Id: I9d028cc43ce6f81ea619f01e18f1cd772e17cbfa
Merged-In: I9d028cc43ce6f81ea619f01e18f1cd772e17cbfa
(cherry picked from commit e8e63aae6f)
2018-03-29 15:03:59 -07:00
Treehugger Robot
aa8f09d41a Merge "Split the DownloadStateCallback class into two" 2018-03-26 23:53:40 +00:00
Hall Liu
49d1cb4770 Split the DownloadStateCallback class into two
Use individually-registered DownloadStatusListener and
DownloadProgressListener instead to listen for download status and
progress, respectively.

Bug: 74409377
Test: cts
Change-Id: Ifd5289038ffd66eef8bd7916f5256205b49be5f9
Merged-In: Ifd5289038ffd66eef8bd7916f5256205b49be5f9
2018-03-26 21:45:21 +00:00
Nan Zhang
54963cba91 Remove Make side (system/test-)api-stubs droiddoc targets
Remove old droiddoc targets for api-stubs, system-api-stubs, and test-api-stubs.

And also set api_tag_name, api_filename, private_api_filename, and etc.
properties in Android.bp for new droiddoc.
Test: manually compare if dependencies change after Soong based droiddoc runs.
Bug: b/70351683

Change-Id: I8d944c83de120ec8148276adc1c9872113d9d29b
Merged-In: I8d944c83de120ec8148276adc1c9872113d9d29b
2018-03-20 11:43:51 -07:00
Nan Zhang
172875bdd2 Convert api-stubs, system-api-stubs, and test-api-stubs target
The output generate a .srcsjar instead of a directory of java files.

Bug: b/70351683
Test: compare source-file-list, and ninja rule.

Change-Id: I987601c4baa6f94b5208d3d4106cf60323329af8
2018-03-05 16:23:50 -08:00
Calin Juravle
1d875ad3ae Add SystemApis to expose runtime profile information
The API allows a system apps which acquired
{@code android.permission.READ_RUNTIME_PROFILE} to snapshot the runtime
profiles of installed packages.

The API is implemented in a new service class (AndroidRuntimeManager)
accessible from the context using
context().getPackageManager().getAndroidRuntimeManager().

The main functionality is exposed as a one way call into the
AndroidRuntimeManager with the result being posted on a callback. The
profile is available to the caller as a read-only ParcelFileDescriptor.

This CL only adds the API interfaces and validation. It does not fully
implement the functionality.

oneway void snapshotRuntimeProfile(in String packageName,
  in String codePath, in ISnapshotRuntimeProfileCallback callback)

(cherry picked from commit 45f8b29ce0)

Bug: 30934496
Test: gts-tradefed -m GtsAndroidRuntimeManagerHostTestCases

Merged-In: Iaa6be4715840f24508acba3162ea9c1ab725bd38
Change-Id: Iaa6be4715840f24508acba3162ea9c1ab725bd38
2018-02-14 08:00:56 -08:00
Brad Ebinger
5b1883b5f1 Integrate new MMTel APIs into the framework
Performs the bulk of the work of:
1) Moving the old MMTel APIs to a hidden
.compat namespace to support older vendor
versions of the code.

2) Replace the compat MMTel APIs with the
new ImsService APIs and integrate them
into existing code.

This is one of two CLs, this CL
integrates the new APIs, the next CL
creates the compat layer in telephony
to translate the .compat APIs to the new
APIs to allow Telephony to work with
older versions of the API.

Before commit, the corresponding vendor
changes will have to be submitted as well.

Bug: 63987047
Test: Telephony Unit tests
Merged-In: Icc9ecfdad000f42399beeac142083e62962c12d3
Change-Id: Icc9ecfdad000f42399beeac142083e62962c12d3
2018-02-01 15:45:29 -08:00
Brad Ebinger
6ed4ee6847 Integrate ImsCallSessionListener API changes
Integrates the ImsCallSessionListener API changes.
This involves:

1) Moving the ImsCallSessionListener to the
android.telephony.ims namespace.
2) Creating a compat layer between the old
IImsCallSessionListener AIDL and the new one
for vendors using the old implementation.
3) Modify ImsCallSession to only use
setListener to set ImsCallSessionListener
(other method was never used in our code).

Test: Telephony Unit Tests, Manual IMS Tests
Bug: 63987047
Merged-In: I4378c0b1d68ff4f5f21815c81af52c03a66f81c5
Change-Id: Id0cc43e9c97abb6f2776d8ad1cf599353b71e4b7
2018-02-01 15:45:28 -08:00
Mohamed Abdalkader
7073c075fb Remove internal version of SMS apis
Test: manual
BUG=69846044
Merged-In: Ie084ea67c460c686bd587e4b36f8c1579517ea7f
Change-Id: Ie084ea67c460c686bd587e4b36f8c1579517ea7f
2018-01-31 11:55:39 -08:00
Mohamed Abdalkader
6e545d5892 Move Sms API to proper MMTelFeature class
- while here remove unnecessary call to ackSms from
  SmsImplBase as this is handled by ImsSmsDispatcher

Test: None, APIs not exercised yet.
BUG=69846044
Merged-In: Iec4bbd07a67502dbbfb2142a7bc95f51be0cb377
Change-Id: Iec4bbd07a67502dbbfb2142a7bc95f51be0cb377
2018-01-31 11:24:31 -08:00
Ruchi Kandoi
a1f9401a22 Open Mobile API for frameworks/base
This contribution is an implementation of the GlobalPlatform
Open Mobile API for Android with some modifications to
namespaces and packages to make it suitable as a core
Android component.

This contribution is based on
0001-Open-Source-Contribution-of-Smartcard-Service-for-fr.patch
which can be found in
https://portland.source.codeaurora.org/patches/quic/la/PATCH_217881_OpenMobileAPI_20171206.tar.gz

The submitted patch was derived from
https://source.codeaurora.org/quic/la/platform/packages/apps/SmartCardService/commit/?h=LA.BF64.1.2.1&id=06ecea9abb8264049f52c7e31c0bc13330a425d5.

Test: Sample Application; open Channels and transmit APDUs

Change-Id: Iac5206bd84798ca0fcdb504c89e1da5383012a5a
Signed-off-by: Jeremy O'Donoghue <jodonogh@codeaurora.org>
2018-01-25 18:04:17 +00:00
Jack Yu
d5f1de19f4 Added network service interface
The interface for mobile network service. This is the base class
for vendor or first party data service provider to implement
the network service for cellular or IWLAN network support.

Test: Manual
bug: 64132030
Change-Id: Ia358cbb18fc6d15dcc45c75f14b7c952f899e101
2018-01-24 19:13:45 +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
Holly Jiuyu Sun
0797f4be58 Merge "Add APIs to EuiccCardManager and EuiccCardController." 2018-01-17 22:26:58 +00:00
Jack Yu
3965e3bbc6 Merge "Added data service interface" 2018-01-17 22:12:29 +00:00
Brad Ebinger
1f00565433 Merge "Integrate IMS Registration API" 2018-01-17 20:29:54 +00:00
Holly Jiuyu Sun
fb1c78405e Add APIs to EuiccCardManager and EuiccCardController.
Move CancelReason from EuiccCard to EuiccCardManager.
part 2.

Bug: 38206971
Test: test on phone
Change-Id: Iab61be59b7130a5336dffbc965eefefcfa3eccf6
2018-01-17 10:38:15 -08:00
Jack Yu
ffcda5c10b Added data service interface
The interface for mobile data service. This is the base class
for vendor or first party data service provider to implement
the data service for cellular or IWLAN data support.

Test: Manual
bug: 64132030
Change-Id: I3e5f48b88905f4533cac60975802d4da3746e7f8
2018-01-17 09:51:30 -08:00
Brad Ebinger
f0bc082a2c Integrate IMS Registration API
Integrates the new IMS Registration API into the framework
and add two APIs for feature parity.

1) Moves ImsRegistrationImplBase to the android.telephony.ims
namespace
2) Expose ImsRegistration AIDL in TelephonyManager as hidden
API.
3) Adds onVoicemailCountUpdate and
onSubscriberAssociatedUriChanged APIs for feature parity.

Bug: 63987047
Test: Telephony unit tests, manual IMS tests
Merged-In: I51a8ae5cf58b81708c21adc1b26a9eb59f6280fd
Change-Id: I51a8ae5cf58b81708c21adc1b26a9eb59f6280fd
2018-01-16 09:43:47 -08:00
Holly Jiuyu Sun
3d6b53c075 Add EuiccCardManager and EuiccCardController.
EuiccCardManager is in the same path with EuiccManager.
EuiccCardController is in the same path with EuiccController.
Use getAllProfiles() as an example interface.
The implementation of EuiccCard and its content will be added in a
follow up CL.
The new API is marked as @hide and TODO for @SystemApi.

Bug: 38206971
Test: test on phone
Change-Id: I153937c0f79bdd1a00b06b234a6e254a3f43072c
Merged-In: I153937c0f79bdd1a00b06b234a6e254a3f43072c
2018-01-11 10:30:43 -08:00
Treehugger Robot
f9063b378b Merge "Add public ApnSetting in android.telephony." 2018-01-11 04:01:32 +00:00
Qingxi Li
8314fa72f2 Add API EuiccController#startOtaUpdatingIfNecessary
This function requests calling app has WRITE_EMBEDDED_SUBSCRIPTIONS
permission. It will check whether the OTA update needed to be done
first. If current eUICC OS isn't latest one and OTA needed to be
performed, it will update eUICC OS. When the OS update is started or
finished, a broadcast will be sent.

Bug: 37279356
Test: E2E
Merged-In: Iea86add4bdc01c79a8714af4b3a89735ba78ee74
Change-Id: Iea86add4bdc01c79a8714af4b3a89735ba78ee74
2018-01-10 12:01:13 -08: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
Qingxi Li
cc6ad8cab7 Add API to get eUICC's OTA status
The function will return current eUICC's OTA status and requests calling
app has WRITE_EMBEDDED_SUBSCRIPTIONS.

Test: E2E
Bug: 37279356
Change-Id: I823ed7aa9d86530c4bebd4c0b1a00f0c607105ed
2018-01-03 12:42:01 -08:00
Brad Ebinger
b2a83cfcfc SMS over IMS APIs revision
- Move from being a feature to being a capability
- Move format to the constructor and make final
- Initial hooking up of APIs provided by platform for ims providers.
- Add constants for send status result
- Rename SmsListener callbacks.
- Split acknowledgeSms for sms and sms reports.
- Add reason for onSendSmsResult
Bug: 69846044

Test: None
Change-Id: I861664264a117d5483e392d4aabff59bfaf4373e
2017-12-20 17:18:50 -08:00
Brad Ebinger
4e54d6092b Merge "Adds MMTel APIs in temporary namespace" 2017-12-15 17:53:16 +00:00
Colin Cross
4eb0784df4 Export aidl files for framework
Export the aidl files for framework so that anything building
against the framework automatically gets the default aidl
includes.

Test: m checkbuild
Change-Id: I26c599c79babd8ac91340a4e9d2c75d3f211f776
2017-12-14 15:25:33 -08:00
Brad Ebinger
ea8fd1bd0a Adds MMTel APIs in temporary namespace
This change adds the new MMTel APIs in a
temporary android.telephony.ims.internal
namespace so that integration work can start
from the ImsService side.

Once the APIs are finalized further and integrated
into the platform, the namespace will be moved
back to android.telephony.ims.

Tests and integration CLs to follow in
separate CLs. Anything that is not implemented
yet has a TODO.

Test: Manual
Bug: 63987047
Change-Id: Iec5e15438f6259c6edd9a308e66bebc92685c578
2017-12-14 14:51:12 -08:00
Siyuan Zhou
070e318501 BootReceiver: Added an event log after the dropbox file copy is successful.
The log can be used to test if LAST KMSG or other items are copied
to dropbox successfully, especially in user builds without root
privilege.

BUG: 69685635

Test: manually verified the desired log from bugreport on user
and userdebug builds.

Change-Id: I6570d95538d678c98d261690ca3c20416d7a31c6
Merged-In: Ie6033bf04c7f79fc596761ab751aa5fcea2c1130
(cherry-picked from commit bafcd7b595)
2017-12-08 22:51:23 +00:00
Colin Cross
af4e47892d Remove logtags property
logtags previously needed to be listed in logtags and srcs, now
they only need to be listed in logtags.

Test: m checkbuild
Change-Id: I7750116675d9497782642a9b8c86288d42bf0a54
2017-12-07 17:56:12 -08:00
Colin Cross
1c578e8032 Merge "Don't use path to find protoc-gen-javastream"
am: 1a2a45667b

Change-Id: Idf4e12d812cf9108f8c3b22057e0bcbd90c14807
2017-12-05 05:33:47 +00:00
Colin Cross
6471db9b71 Don't use path to find protoc-gen-javastream
Previous attempts to use a full path in the --plugin argument
failed, but that was because the --plugin argument had the wrong
name (protoc-gen-java-stream instead of protoc-gen-javastream)
and was being completely ignored.  Passing a full path where
the last element of the path is protoc-gen-javastream works fine.

Fixes issues where the command line is expanded with $PATH in
it 58 times which could hit command length limits if $PATH was
even a little bit larger than the default.

Test: m framework
Change-Id: Icd336f522fb8770d9058d18d8a04d24a96405615
2017-12-05 01:09:52 +00: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 cf3a0b5355)
2017-12-03 20:23:43 -08:00
Colin Cross
5f4dcf6702 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 cf3a0b5355)
2017-12-03 17:50:34 +00:00
Nan Zhang
2db709de30 Build fontchain_lint using python_binary_host
Test: out/host/linux-x86/bin/fontchain_lint
out/target/product/generic/system true external/unicode
Bug: b/27727331

Change-Id: Ib9353d2338c3b939027069f49e3e847c65526581
2017-11-17 09:22:12 -08:00
Colin Cross
747e7c15d8 Convert framework-protos to Android.bp
See build/soong/README.md for more information.

Test: m checkbuild
Change-Id: Id7992ff0cc5d631b64c1fa8e82e8a130ea508236
2017-10-24 17:48:49 -07:00
Jeff Sharkey
01478ec183 Export AIDL for keystore Android.bp.
Test: builds, boots
Bug: 67041047
Change-Id: Iaff1de1f9c015a824ffc1f4946ced4a13d9bd7c1
Merged-In: Iaff1de1f9c015a824ffc1f4946ced4a13d9bd7c1
(cherry picked from commit 0c686e78ad)
2017-10-24 16:09:01 -07:00
Chih-hung Hsieh
0bfb717a37 Merge "Use -Werror in frameworks/base"
am: 16fbd3a1d8

Change-Id: Iab69cf4f99cf4bedd12eb7764c773a893bfe5343
2017-10-16 19:24:53 +00:00
Colin Cross
8feea076a2 Merge "Convert ext.jar to Android.bp"
am: 42156f3e56

Change-Id: I44443e9095c8b527ebb42d11a6f5369fdf3e5d05
2017-10-15 02:06:20 +00:00
Chih-Hung Hsieh
c7edf078f9 Use -Werror in frameworks/base
* Fix unused variable and return value warnings.

Bug: 66996870
Test: build with WITH_TIDY=1
Change-Id: I890e65a20848d00559ba5a4f9691be1347b456af
2017-10-13 16:25:16 -07:00
Colin Cross
42156f3e56 Merge "Convert ext.jar to Android.bp" 2017-10-13 01:08:01 +00:00