1 /* 2 * Copyright (C) 2006 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package com.android.internal.telephony; 18 19 import android.compat.annotation.UnsupportedAppUsage; 20 21 /** 22 * Contains a list of string constants used to get or set telephone properties 23 * in the system. You can use {@link android.os.SystemProperties os.SystemProperties} 24 * to get and set these values. 25 * @hide 26 */ 27 public interface TelephonyProperties 28 { 29 //****** Baseband and Radio Interface version 30 31 //TODO T: property strings do not have to be gsm specific 32 // change gsm.*operator.*" properties to "operator.*" properties 33 34 /** 35 * Baseband version 36 * Availability: property is available any time radio is on 37 */ 38 static final String PROPERTY_BASEBAND_VERSION = "gsm.version.baseband"; 39 40 /** Radio Interface Layer (RIL) library implementation. */ 41 static final String PROPERTY_RIL_IMPL = "gsm.version.ril-impl"; 42 43 //****** Current Network 44 45 /** Alpha name of current registered operator.<p> 46 * Availability: when registered to a network. Result may be unreliable on 47 * CDMA networks. 48 */ 49 static final String PROPERTY_OPERATOR_ALPHA = "gsm.operator.alpha"; 50 //TODO: most of these properties are generic, substitute gsm. with phone. bug 1856959 51 52 /** Numeric name (MCC+MNC) of current registered operator.<p> 53 * Availability: when registered to a network. Result may be unreliable on 54 * CDMA networks. 55 */ 56 static final String PROPERTY_OPERATOR_NUMERIC = "gsm.operator.numeric"; 57 58 /** 'true' if the device is on a manually selected network 59 * 60 * Availability: when registered to a network 61 */ 62 static final String PROPERTY_OPERATOR_ISMANUAL = "operator.ismanual"; 63 64 /** 'true' if the device is considered roaming on this network for GSM 65 * purposes. 66 * Availability: when registered to a network 67 */ 68 static final String PROPERTY_OPERATOR_ISROAMING = "gsm.operator.isroaming"; 69 70 /** The ISO country code equivalent of the current registered operator's 71 * MCC (Mobile Country Code)<p> 72 * Availability: when registered to a network. Result may be unreliable on 73 * CDMA networks. 74 */ 75 static final String PROPERTY_OPERATOR_ISO_COUNTRY = "gsm.operator.iso-country"; 76 77 /** 78 * The contents of this property is the value of the kernel command line 79 * product_type variable that corresponds to a product that supports LTE on CDMA. 80 * {@see BaseCommands#getLteOnCdmaMode()} 81 */ 82 static final String PROPERTY_LTE_ON_CDMA_PRODUCT_TYPE = "telephony.lteOnCdmaProductType"; 83 84 /** 85 * The contents of this property is the one of {@link Phone#LTE_ON_CDMA_TRUE} or 86 * {@link Phone#LTE_ON_CDMA_FALSE}. If absent the value will assumed to be false 87 * and the {@see #PROPERTY_LTE_ON_CDMA_PRODUCT_TYPE} will be used to determine its 88 * final value which could also be {@link Phone#LTE_ON_CDMA_FALSE}. 89 * {@see BaseCommands#getLteOnCdmaMode()} 90 */ 91 static final String PROPERTY_LTE_ON_CDMA_DEVICE = "telephony.lteOnCdmaDevice"; 92 93 static final String CURRENT_ACTIVE_PHONE = "gsm.current.phone-type"; 94 95 //****** SIM Card 96 /** 97 * One of <code>"UNKNOWN"</code> <code>"ABSENT"</code> <code>"PIN_REQUIRED"</code> 98 * <code>"PUK_REQUIRED"</code> <code>"NETWORK_LOCKED"</code> or <code>"READY"</code> 99 */ 100 static String PROPERTY_SIM_STATE = "gsm.sim.state"; 101 102 /** The MCC+MNC (mobile country code+mobile network code) of the 103 * provider of the SIM. 5 or 6 decimal digits. 104 * Availability: SIM state must be "READY" 105 */ 106 @UnsupportedAppUsage 107 static String PROPERTY_ICC_OPERATOR_NUMERIC = "gsm.sim.operator.numeric"; 108 109 /** PROPERTY_ICC_OPERATOR_ALPHA is also known as the SPN, or Service Provider Name. 110 * Availability: SIM state must be "READY" 111 */ 112 static String PROPERTY_ICC_OPERATOR_ALPHA = "gsm.sim.operator.alpha"; 113 114 /** ISO country code equivalent for the SIM provider's country code*/ 115 static String PROPERTY_ICC_OPERATOR_ISO_COUNTRY = "gsm.sim.operator.iso-country"; 116 117 /** 118 * Indicates the available radio technology. Values include: <code>"unknown"</code>, 119 * <code>"GPRS"</code>, <code>"EDGE"</code> and <code>"UMTS"</code>. 120 */ 121 static String PROPERTY_DATA_NETWORK_TYPE = "gsm.network.type"; 122 123 /** Indicate if phone is in emergency callback mode */ 124 static final String PROPERTY_INECM_MODE = "ril.cdma.inecmmode"; 125 126 /** Indicate the timer value for exiting emergency callback mode */ 127 static final String PROPERTY_ECM_EXIT_TIMER = "ro.cdma.ecmexittimer"; 128 129 /** the international dialing prefix of current operator network */ 130 static final String PROPERTY_OPERATOR_IDP_STRING = "gsm.operator.idpstring"; 131 132 /** 133 * Defines the schema for the carrier specified OTASP number 134 */ 135 static final String PROPERTY_OTASP_NUM_SCHEMA = "ro.cdma.otaspnumschema"; 136 137 /** 138 * Disable all calls including Emergency call when it set to true. 139 */ 140 static final String PROPERTY_DISABLE_CALL = "ro.telephony.disable-call"; 141 142 /** 143 * Set to true for vendor RIL's that send multiple UNSOL_CALL_RING notifications. 144 */ 145 static final String PROPERTY_RIL_SENDS_MULTIPLE_CALL_RING = 146 "ro.telephony.call_ring.multiple"; 147 148 /** 149 * The number of milliseconds between CALL_RING notifications. 150 */ 151 static final String PROPERTY_CALL_RING_DELAY = "ro.telephony.call_ring.delay"; 152 153 /** 154 * Track CDMA SMS message id numbers to ensure they increment 155 * monotonically, regardless of reboots. 156 */ 157 static final String PROPERTY_CDMA_MSG_ID = "persist.radio.cdma.msgid"; 158 159 /** 160 * Property to override DEFAULT_WAKE_LOCK_TIMEOUT 161 */ 162 static final String PROPERTY_WAKE_LOCK_TIMEOUT = "ro.ril.wake_lock_timeout"; 163 164 /** 165 * Set to true to indicate that the modem needs to be reset 166 * when there is a radio technology change. 167 */ 168 static final String PROPERTY_RESET_ON_RADIO_TECH_CHANGE = "persist.radio.reset_on_switch"; 169 170 /** 171 * Set to false to disable SMS receiving, default is 172 * the value of config_sms_capable 173 */ 174 static final String PROPERTY_SMS_RECEIVE = "telephony.sms.receive"; 175 176 /** 177 * Set to false to disable SMS sending, default is 178 * the value of config_sms_capable 179 */ 180 static final String PROPERTY_SMS_SEND = "telephony.sms.send"; 181 182 /** 183 * Set to true to indicate a test CSIM card is used in the device. 184 * This property is for testing purpose only. This should not be defined 185 * in commercial configuration. 186 */ 187 static final String PROPERTY_TEST_CSIM = "persist.radio.test-csim"; 188 189 /** 190 * Ignore RIL_UNSOL_NITZ_TIME_RECEIVED completely, used for debugging/testing. 191 */ 192 static final String PROPERTY_IGNORE_NITZ = "telephony.test.ignore.nitz"; 193 194 /** 195 * Property to set multi sim feature. 196 * Type: String(dsds, dsda) 197 */ 198 static final String PROPERTY_MULTI_SIM_CONFIG = "persist.radio.multisim.config"; 199 200 /** 201 * Property to indicate if reboot is required when changing modems configurations 202 * Type: String(true, false) default is false; most devices don't need reboot 203 */ 204 String PROPERTY_REBOOT_REQUIRED_ON_MODEM_CHANGE = "persist.radio.reboot_on_modem_change"; 205 206 /** 207 * Property to store default subscription. 208 */ 209 static final String PROPERTY_DEFAULT_SUBSCRIPTION = "persist.radio.default.sub"; 210 211 /** 212 * Property to enable MMS Mode. 213 * Type: string ( default = silent, enable to = prompt ) 214 */ 215 static final String PROPERTY_MMS_TRANSACTION = "mms.transaction"; 216 217 /** 218 * Set to the sim count. 219 */ 220 static final String PROPERTY_SIM_COUNT = "ro.telephony.sim.count"; 221 222 /** 223 * Controls audio route for video calls. 224 * 0 - Use the default audio routing strategy. 225 * 1 - Disable the speaker. Route the audio to Headset or Bluetooth 226 * or Earpiece, based on the default audio routing strategy. 227 */ 228 static final String PROPERTY_VIDEOCALL_AUDIO_OUTPUT = "persist.radio.call.audio.output"; 229 230 /** 'true' if the carrier text from opportunistic subscription should be used to display 231 * on UI. 232 * 233 */ 234 String DISPLAY_OPPORTUNISTIC_SUBSCRIPTION_CARRIER_TEXT_PROPERTY_NAME = 235 "persist.radio.display_opportunistic_carrier"; 236 237 /** 238 * How many logical modems can be active simultaneously. For example, if a device is dual-SIM 239 * capable but currently only one SIM slot and one logical modem is active, this value is still 240 * two. 241 * Type: int 242 */ 243 static final String PROPERTY_MAX_ACTIVE_MODEMS = "telephony.active_modems.max_count"; 244 } 245