Merge "[RCS] Add set/getRcsProvisioningStatusForCapability()" am: b1c730d069 am: a2d0828670
Change-Id: I8ad4301faeded70e3d298088816fc72b75b4bc2e
This commit is contained in:
@@ -44439,6 +44439,7 @@ package android.telephony {
|
||||
field public static final String KEY_CARRIER_INSTANT_LETTERING_LENGTH_LIMIT_INT = "carrier_instant_lettering_length_limit_int";
|
||||
field public static final String KEY_CARRIER_NAME_OVERRIDE_BOOL = "carrier_name_override_bool";
|
||||
field public static final String KEY_CARRIER_NAME_STRING = "carrier_name_string";
|
||||
field public static final String KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL = "carrier_rcs_provisioning_required_bool";
|
||||
field public static final String KEY_CARRIER_SETTINGS_ENABLE_BOOL = "carrier_settings_enable_bool";
|
||||
field public static final String KEY_CARRIER_SUPPORTS_SS_OVER_UT_BOOL = "carrier_supports_ss_over_ut_bool";
|
||||
field public static final String KEY_CARRIER_USE_IMS_FIRST_FOR_EMERGENCY_BOOL = "carrier_use_ims_first_for_emergency_bool";
|
||||
|
||||
@@ -10154,10 +10154,12 @@ package android.telephony.ims {
|
||||
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public int getProvisioningIntValue(int);
|
||||
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean getProvisioningStatusForCapability(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
|
||||
method @Nullable @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public String getProvisioningStringValue(int);
|
||||
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) @WorkerThread public boolean getRcsProvisioningStatusForCapability(int);
|
||||
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void registerProvisioningChangedCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ProvisioningManager.Callback) throws android.telephony.ims.ImsException;
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningIntValue(int, int);
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setProvisioningStatusForCapability(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int, boolean);
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningStringValue(int, @NonNull String);
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setRcsProvisioningStatusForCapability(int, boolean);
|
||||
method @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public void unregisterProvisioningChangedCallback(@NonNull android.telephony.ims.ProvisioningManager.Callback);
|
||||
field public static final int KEY_VOICE_OVER_WIFI_MODE_OVERRIDE = 27; // 0x1b
|
||||
field public static final int KEY_VOICE_OVER_WIFI_ROAMING_ENABLED_OVERRIDE = 26; // 0x1a
|
||||
|
||||
@@ -3575,10 +3575,12 @@ package android.telephony.ims {
|
||||
method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") @WorkerThread public int getProvisioningIntValue(int);
|
||||
method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") @WorkerThread public boolean getProvisioningStatusForCapability(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int);
|
||||
method @Nullable @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") @WorkerThread public String getProvisioningStringValue(int);
|
||||
method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") @WorkerThread public boolean getRcsProvisioningStatusForCapability(int);
|
||||
method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void registerProvisioningChangedCallback(@NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.ProvisioningManager.Callback) throws android.telephony.ims.ImsException;
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningIntValue(int, int);
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setProvisioningStatusForCapability(@android.telephony.ims.feature.MmTelFeature.MmTelCapabilities.MmTelCapability int, int, boolean);
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public int setProvisioningStringValue(int, @NonNull String);
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void setRcsProvisioningStatusForCapability(int, boolean);
|
||||
method @RequiresPermission("android.permission.READ_PRIVILEGED_PHONE_STATE") public void unregisterProvisioningChangedCallback(@NonNull android.telephony.ims.ProvisioningManager.Callback);
|
||||
field public static final int KEY_VOICE_OVER_WIFI_MODE_OVERRIDE = 27; // 0x1b
|
||||
field public static final int KEY_VOICE_OVER_WIFI_ROAMING_ENABLED_OVERRIDE = 26; // 0x1a
|
||||
|
||||
@@ -670,6 +670,12 @@ public class CarrierConfigManager {
|
||||
public static final String KEY_CARRIER_PROMOTE_WFC_ON_CALL_FAIL_BOOL =
|
||||
"carrier_promote_wfc_on_call_fail_bool";
|
||||
|
||||
/**
|
||||
* Flag specifying whether provisioning is required for RCS.
|
||||
*/
|
||||
public static final String KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL =
|
||||
"carrier_rcs_provisioning_required_bool";
|
||||
|
||||
/**
|
||||
* Flag specifying whether provisioning is required for VoLTE, Video Telephony, and WiFi
|
||||
* Calling.
|
||||
@@ -3486,6 +3492,7 @@ public class CarrierConfigManager {
|
||||
sDefaults.putInt(KEY_CARRIER_DEFAULT_WFC_IMS_MODE_INT, 2);
|
||||
sDefaults.putInt(KEY_CARRIER_DEFAULT_WFC_IMS_ROAMING_MODE_INT, 2);
|
||||
sDefaults.putBoolean(KEY_CARRIER_FORCE_DISABLE_ETWS_CMAS_TEST_BOOL, false);
|
||||
sDefaults.putBoolean(KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL, true);
|
||||
sDefaults.putBoolean(KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL, false);
|
||||
sDefaults.putBoolean(KEY_CARRIER_UT_PROVISIONING_REQUIRED_BOOL, false);
|
||||
sDefaults.putBoolean(KEY_CARRIER_SUPPORTS_SS_OVER_UT_BOOL, false);
|
||||
|
||||
@@ -35,6 +35,7 @@ import android.telephony.CarrierConfigManager;
|
||||
import android.telephony.SubscriptionManager;
|
||||
import android.telephony.ims.aidl.IImsConfigCallback;
|
||||
import android.telephony.ims.feature.MmTelFeature;
|
||||
import android.telephony.ims.feature.RcsFeature;
|
||||
import android.telephony.ims.stub.ImsConfigImplBase;
|
||||
import android.telephony.ims.stub.ImsRegistrationImplBase;
|
||||
|
||||
@@ -389,6 +390,54 @@ public class ProvisioningManager {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the provisioning status for the IMS RCS capability specified.
|
||||
*
|
||||
* If provisioning is not required for the queried
|
||||
* {@link RcsFeature.RcsImsCapabilities.RcsImsCapabilityFlag} this method will always return
|
||||
* {@code true}.
|
||||
*
|
||||
* @see CarrierConfigManager#KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL
|
||||
* @return true if the device is provisioned for the capability or does not require
|
||||
* provisioning, false if the capability does require provisioning and has not been
|
||||
* provisioned yet.
|
||||
*/
|
||||
@WorkerThread
|
||||
@RequiresPermission(Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
|
||||
public boolean getRcsProvisioningStatusForCapability(
|
||||
@RcsFeature.RcsImsCapabilities.RcsImsCapabilityFlag int capability) {
|
||||
try {
|
||||
return getITelephony().getRcsProvisioningStatusForCapability(mSubId, capability);
|
||||
} catch (RemoteException e) {
|
||||
throw e.rethrowAsRuntimeException();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the provisioning status for the IMS RCS capability using the specified subscription.
|
||||
*
|
||||
* Provisioning may or may not be required, depending on the carrier configuration. If
|
||||
* provisioning is not required for the carrier associated with this subscription or the device
|
||||
* does not support the capability/technology combination specified, this operation will be a
|
||||
* no-op.
|
||||
*
|
||||
* @see CarrierConfigManager#KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL
|
||||
* @param isProvisioned true if the device is provisioned for the RCS capability specified,
|
||||
* false otherwise.
|
||||
*/
|
||||
@WorkerThread
|
||||
@RequiresPermission(Manifest.permission.MODIFY_PHONE_STATE)
|
||||
public void setRcsProvisioningStatusForCapability(
|
||||
@RcsFeature.RcsImsCapabilities.RcsImsCapabilityFlag int capability,
|
||||
boolean isProvisioned) {
|
||||
try {
|
||||
getITelephony().setRcsProvisioningStatusForCapability(mSubId, capability,
|
||||
isProvisioned);
|
||||
} catch (RemoteException e) {
|
||||
throw e.rethrowAsRuntimeException();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Notify the framework that an RCS autoconfiguration XML file has been received for
|
||||
* provisioning.
|
||||
|
||||
@@ -1977,6 +1977,17 @@ interface ITelephony {
|
||||
*/
|
||||
boolean getImsProvisioningStatusForCapability(int subId, int capability, int tech);
|
||||
|
||||
/**
|
||||
* Get the provisioning status for the IMS Rcs capability specified.
|
||||
*/
|
||||
boolean getRcsProvisioningStatusForCapability(int subId, int capability);
|
||||
|
||||
/**
|
||||
* Set the provisioning status for the IMS Rcs capability using the specified subscription.
|
||||
*/
|
||||
void setRcsProvisioningStatusForCapability(int subId, int capability,
|
||||
boolean isProvisioned);
|
||||
|
||||
/** Is the capability and tech flagged as provisioned in the cache */
|
||||
boolean isMmTelCapabilityProvisionedInCache(int subId, int capability, int tech);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user