TelephonyProperties.java revision d34ed1660afb7385c80f377623e12299bab0fa4c
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
17package com.android.internal.telephony;
18
19/**
20 * Contains a list of string constants used to get or set telephone properties
21 * in the system. You can use {@link android.os.SystemProperties os.SystemProperties}
22 * to get and set these values.
23 * @hide
24 */
25public interface TelephonyProperties
26{
27    //****** Baseband and Radio Interface version
28
29    //TODO T: property strings do not have to be gsm specific
30    //        change gsm.*operator.*" properties to "operator.*" properties
31
32    /**
33     * Baseband version
34     * Availability: property is available any time radio is on
35     */
36    static final String PROPERTY_BASEBAND_VERSION = "gsm.version.baseband";
37
38    /** Radio Interface Layer (RIL) library implementation. */
39    static final String PROPERTY_RIL_IMPL = "gsm.version.ril-impl";
40
41    //****** Current Network
42
43    /** Alpha name of current registered operator.<p>
44     *  Availability: when registered to a network. Result may be unreliable on
45     *  CDMA networks.
46     */
47    static final String PROPERTY_OPERATOR_ALPHA = "gsm.operator.alpha";
48    //TODO: most of these properties are generic, substitute gsm. with phone. bug 1856959
49
50    /** Numeric name (MCC+MNC) of current registered operator.<p>
51     *  Availability: when registered to a network. Result may be unreliable on
52     *  CDMA networks.
53     */
54    static final String PROPERTY_OPERATOR_NUMERIC = "gsm.operator.numeric";
55
56    /** 'true' if the device is on a manually selected network
57     *
58     *  Availability: when registered to a network
59     */
60    static final String PROPERTY_OPERATOR_ISMANUAL = "operator.ismanual";
61
62    /** 'true' if the device is considered roaming on this network for GSM
63     *  purposes.
64     *  Availability: when registered to a network
65     */
66    static final String PROPERTY_OPERATOR_ISROAMING = "gsm.operator.isroaming";
67
68    /** The ISO country code equivalent of the current registered operator's
69     *  MCC (Mobile Country Code)<p>
70     *  Availability: when registered to a network. Result may be unreliable on
71     *  CDMA networks.
72     */
73    static final String PROPERTY_OPERATOR_ISO_COUNTRY = "gsm.operator.iso-country";
74
75    /**
76     * The contents of this property is the value of the kernel command line
77     * product_type variable that corresponds to a product that supports LTE on CDMA.
78     * {@see BaseCommands#getLteOnCdmaMode()}
79     */
80    static final String PROPERTY_LTE_ON_CDMA_PRODUCT_TYPE = "telephony.lteOnCdmaProductType";
81
82    /**
83     * The contents of this property is the one of {@link Phone#LTE_ON_CDMA_TRUE} or
84     * {@link Phone#LTE_ON_CDMA_FALSE}. If absent the value will assumed to be false
85     * and the {@see #PROPERTY_LTE_ON_CDMA_PRODUCT_TYPE} will be used to determine its
86     * final value which could also be {@link Phone#LTE_ON_CDMA_FALSE}.
87     * {@see BaseCommands#getLteOnCdmaMode()}
88     */
89    static final String PROPERTY_LTE_ON_CDMA_DEVICE = "telephony.lteOnCdmaDevice";
90
91    static final String CURRENT_ACTIVE_PHONE = "gsm.current.phone-type";
92
93    //****** SIM Card
94    /**
95     * One of <code>"UNKNOWN"</code> <code>"ABSENT"</code> <code>"PIN_REQUIRED"</code>
96     * <code>"PUK_REQUIRED"</code> <code>"NETWORK_LOCKED"</code> or <code>"READY"</code>
97     */
98    static String PROPERTY_SIM_STATE = "gsm.sim.state";
99
100    /** The MCC+MNC (mobile country code+mobile network code) of the
101     *  provider of the SIM. 5 or 6 decimal digits.
102     *  Availability: SIM state must be "READY"
103     */
104    static String PROPERTY_ICC_OPERATOR_NUMERIC = "gsm.sim.operator.numeric";
105
106    /** PROPERTY_ICC_OPERATOR_ALPHA is also known as the SPN, or Service Provider Name.
107     *  Availability: SIM state must be "READY"
108     */
109    static String PROPERTY_ICC_OPERATOR_ALPHA = "gsm.sim.operator.alpha";
110
111    /** ISO country code equivalent for the SIM provider's country code*/
112    static String PROPERTY_ICC_OPERATOR_ISO_COUNTRY = "gsm.sim.operator.iso-country";
113
114    /**
115     * Indicates the available radio technology.  Values include: <code>"unknown"</code>,
116     * <code>"GPRS"</code>, <code>"EDGE"</code> and <code>"UMTS"</code>.
117     */
118    static String PROPERTY_DATA_NETWORK_TYPE = "gsm.network.type";
119
120    /** Indicate if phone is in emergency callback mode */
121    static final String PROPERTY_INECM_MODE = "ril.cdma.inecmmode";
122
123    /** Indicate the timer value for exiting emergency callback mode */
124    static final String PROPERTY_ECM_EXIT_TIMER = "ro.cdma.ecmexittimer";
125
126    /** The international dialing prefix conversion string */
127    static final String PROPERTY_IDP_STRING = "ro.cdma.idpstring";
128
129    /**
130     * Defines the schema for the carrier specified OTASP number
131     */
132    static final String PROPERTY_OTASP_NUM_SCHEMA = "ro.cdma.otaspnumschema";
133
134    /**
135     * Disable all calls including Emergency call when it set to true.
136     */
137    static final String PROPERTY_DISABLE_CALL = "ro.telephony.disable-call";
138
139    /**
140     * Set to true for vendor RIL's that send multiple UNSOL_CALL_RING notifications.
141     */
142    static final String PROPERTY_RIL_SENDS_MULTIPLE_CALL_RING =
143        "ro.telephony.call_ring.multiple";
144
145    /**
146     * The number of milliseconds between CALL_RING notifications.
147     */
148    static final String PROPERTY_CALL_RING_DELAY = "ro.telephony.call_ring.delay";
149
150    /**
151     * Track CDMA SMS message id numbers to ensure they increment
152     * monotonically, regardless of reboots.
153     */
154    static final String PROPERTY_CDMA_MSG_ID = "persist.radio.cdma.msgid";
155
156    /**
157     * Property to override DEFAULT_WAKE_LOCK_TIMEOUT
158     */
159    static final String PROPERTY_WAKE_LOCK_TIMEOUT = "ro.ril.wake_lock_timeout";
160
161    /**
162     * Set to true to indicate that the modem needs to be reset
163     * when there is a radio technology change.
164     */
165    static final String PROPERTY_RESET_ON_RADIO_TECH_CHANGE = "persist.radio.reset_on_switch";
166
167    /**
168     * Set to false to disable SMS receiving, default is
169     * the value of config_sms_capable
170     */
171    static final String PROPERTY_SMS_RECEIVE = "telephony.sms.receive";
172
173    /**
174     * Set to false to disable SMS sending, default is
175     * the value of config_sms_capable
176     */
177    static final String PROPERTY_SMS_SEND = "telephony.sms.send";
178
179    /**
180     * Set to true to indicate a test CSIM card is used in the device.
181     * This property is for testing purpose only. This should not be defined
182     * in commercial configuration.
183     */
184    static final String PROPERTY_TEST_CSIM = "persist.radio.test-csim";
185
186    /**
187     * Set to true to indicate a test ims registration required.
188     */
189    static final String PROPERTY_IMS_REG_REQUIRED = "persist.radio.imsregrequired";
190}
191