Package org.robolectric.shadows
Class ShadowCarrierConfigManager
java.lang.Object
org.robolectric.shadows.ShadowCarrierConfigManager
@Implements(value=android.telephony.CarrierConfigManager.class,
minSdk=23)
public class ShadowCarrierConfigManager
extends Object
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetConfigForSubId(int subId) ReturnsPersistableBundlepreviously set byoverrideConfig(int, android.os.PersistableBundle)orsetConfigForSubId(int, PersistableBundle), or default values for an invalidsubId.getConfigForSubId(int subId, String... keys) ReturnsPersistableBundlecontaining the specified keys for a particular subscription.protected voidoverrideConfig(int subId, PersistableBundle config) Overrides the carrier config of the provided subscription ID with the provided values.protected voidregisterCarrierConfigChangeListener(Executor executor, CarrierConfigManager.CarrierConfigChangeListener listener) static voidreset()voidsetConfigForSubId(int subId, PersistableBundle config) Sets that theconfigPersistableBundle for a particularsubId; controls the return value ofCarrierConfigManager.getConfigForSubId(int, String...).voidsetReadPhoneStatePermission(boolean readPhoneStatePermission) protected void
-
Constructor Details
-
ShadowCarrierConfigManager
public ShadowCarrierConfigManager()
-
-
Method Details
-
reset
-
getConfigForSubId
ReturnsPersistableBundlepreviously set byoverrideConfig(int, android.os.PersistableBundle)orsetConfigForSubId(int, PersistableBundle), or default values for an invalidsubId. -
getConfigForSubId
@Implementation(minSdk=34) @Nonnull public PersistableBundle getConfigForSubId(int subId, @Nonnull String... keys) ReturnsPersistableBundlecontaining the specified keys for a particular subscription.setConfigForSubId(int, PersistableBundle), or default values for an invalidsubId. -
setReadPhoneStatePermission
public void setReadPhoneStatePermission(boolean readPhoneStatePermission) -
setConfigForSubId
Sets that theconfigPersistableBundle for a particularsubId; controls the return value ofCarrierConfigManager.getConfigForSubId(int, String...).This will trigger a
broadcast and ainvalid reference
ACTION_CARRIER_CONFIG_CHANGEDCarrierConfigManager.CarrierConfigChangeListenercallback if a listener is registered. Callers may optionally configure the following included extras:- Sim slot index: via the
SubscriptionInfofor the providedsubId. Configure an active subscription via. If no logical slot is configured, 0 will be used.invalid reference
ShadowSubscriptionManager#setActiveSubscriptionInfo(SubscriptionInfo) - Carrier ID (SDK P+ only): via
TelephonyManager.getSimCarrierId().ShadowTelephonyManagerdoes not currently operate on a per-subscription basis. To configure a different carrier ID for different subscriptions, useand provide a mock instance. Otherwise,invalid reference
ShadowTelephonyManager#setTelephonyManagerForSubscriptionId(int)will be set.invalid reference
TelephonyManager.UNKNOWN_CARRIER_ID - Specific carrier ID (SDK Q+ only): via
TelephonyManager.getSimSpecificCarrierId(). The same limitation as carrier ID applies.
- Sim slot index: via the
-
registerCarrierConfigChangeListener
@Implementation(minSdk=34) protected void registerCarrierConfigChangeListener(Executor executor, CarrierConfigManager.CarrierConfigChangeListener listener) -
unregisterCarrierConfigChangeListener
@Implementation(minSdk=34) protected void unregisterCarrierConfigChangeListener(CarrierConfigManager.CarrierConfigChangeListener listener) -
overrideConfig
@Implementation(minSdk=29) @HiddenApi protected void overrideConfig(int subId, @Nullable PersistableBundle config) Overrides the carrier config of the provided subscription ID with the provided values.This method will NOT check if
overrideValuescontains valid values for specified config keys. It also won't trigger a broadcast or callback for a carrier config change. Keep in mind this is a test API, not intended for usage in production code. Callers should just usesetConfigForSubId(int, PersistableBundle)instead.
-