OSDN Git Service

Unhide @SystemApi Constructor
authorBrad Ebinger <breadley@google.com>
Thu, 29 Mar 2018 18:12:24 +0000 (11:12 -0700)
committerBrad Ebinger <breadley@google.com>
Thu, 29 Mar 2018 18:36:28 +0000 (11:36 -0700)
commit37121d467c3e2fe56dc30cc2a6f6a37231791d7a
treea3f56941bf8d1471d492b55cf75bde123a161595
parentde51e0c61523f948d9a9797fce1f07e2a67e99fd
Unhide @SystemApi Constructor

There are a few small classes that never got properly
exposed as @SystemApi. These classes were not caught
because vendors currently build against the source
directly and have access to hidden APIs. We can not
change the vendor code at this point (different vendor
code for each year for all supported devices), but
we can start pulling back the API for new devices.

1) Keep all public mutable fields @hide and put
todo (and file bug b/74402619) to make fields
private or final.

2) Add public constructor that populates all fields
so that @hide public mutable fields can be set to
private/final in the future.

3) Provide getters for fields that will not be
public in the future.

In this way, we can make minimal API changes for P,
support new vendor/3rd party ImsServices, and phase
out old ImsService implementations that still build
against the source instead of using the correct
@SystemApi.

Bug: 77278031
Bug: 74402619
Test: Manual
Change-Id: Ifa3b6d0cbdb12e92efc699b760ca874768a89a7c
api/system-current.txt
telephony/java/android/telephony/ims/ImsCallForwardInfo.java
telephony/java/android/telephony/ims/ImsSsData.java
telephony/java/android/telephony/ims/ImsSsInfo.java