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>
Wed, 6 Jun 2018 22:55:04 +0000 (15:55 -0700)
commit4ae252f80fc8548ac3aa3d27e07247704cac72f6
tree12760c9a6eccc2c3b889d9c73c56e016aaf7cee4
parentb044b885cf51ef350745e9178e763c0b4db8a86a
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
Merged-In: Idbf2a71018f1bd06f8445b07fc52bc65cb6776f6
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