PhoneConstants.java revision 4bd4389616fae01439a44920286a70806526d8c0
17a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé/* 27a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * Copyright (C) 2012 The Android Open Source Project 37a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * 47a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * Licensed under the Apache License, Version 2.0 (the "License"); 57a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * you may not use this file except in compliance with the License. 67a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * You may obtain a copy of the License at 77a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * 87a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * http://www.apache.org/licenses/LICENSE-2.0 97a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * 107a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * Unless required by applicable law or agreed to in writing, software 117a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * distributed under the License is distributed on an "AS IS" BASIS, 127a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 137a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * See the License for the specific language governing permissions and 147a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * limitations under the License. 157a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé */ 167a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhépackage com.android.internal.telephony; 177a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 187a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé/** 197a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * @hide 207a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé */ 211b86fe063badb5f28c467ade39be0f4008688947Andreas Huberpublic class PhoneConstants { 227a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 237a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** 247a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * The phone state. One of the following:<p> 251b86fe063badb5f28c467ade39be0f4008688947Andreas Huber * <ul> 261b86fe063badb5f28c467ade39be0f4008688947Andreas Huber * <li>IDLE = no phone activity</li> 271b86fe063badb5f28c467ade39be0f4008688947Andreas Huber * <li>RINGING = a phone call is ringing or call waiting. 287a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * In the latter case, another call is active as well</li> 297a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * <li>OFFHOOK = The phone is off hook. At least one call 30a1df816c0677185534babba6ffc29970b048e52eLajos Molnar * exists that is dialing, active or holding and no calls are 317a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * ringing or waiting.</li> 327a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * </ul> 337a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé */ 347a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public enum State { 357a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé IDLE, RINGING, OFFHOOK; 361b86fe063badb5f28c467ade39be0f4008688947Andreas Huber }; 371b86fe063badb5f28c467ade39be0f4008688947Andreas Huber 381b86fe063badb5f28c467ade39be0f4008688947Andreas Huber /** 3981e68448f3361eaf8618930471fdc3c21bdf5cbcAndreas Huber * The state of a data connection. 407a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * <ul> 417a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * <li>CONNECTED = IP traffic should be available</li> 427a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * <li>CONNECTING = Currently setting up data connection</li> 437a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * <li>DISCONNECTED = IP not available</li> 441b86fe063badb5f28c467ade39be0f4008688947Andreas Huber * <li>SUSPENDED = connection is created but IP traffic is 457a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * temperately not available. i.e. voice call is in place 467a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * in 2G network</li> 477a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * </ul> 487a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé */ 497a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public enum DataState { 507a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé CONNECTED, CONNECTING, DISCONNECTED, SUSPENDED; 517a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé }; 527a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 537a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String STATE_KEY = "state"; 541d15ab58bf8239069ef343de6cb21aabf3ef7d78Lajos Molnar 557a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé // Radio Type 567a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PHONE_TYPE_NONE = RILConstants.NO_PHONE; 577a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PHONE_TYPE_GSM = RILConstants.GSM_PHONE; 587a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PHONE_TYPE_CDMA = RILConstants.CDMA_PHONE; 597a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PHONE_TYPE_SIP = RILConstants.SIP_PHONE; 607a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PHONE_TYPE_THIRD_PARTY = RILConstants.THIRD_PARTY_PHONE; 617a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PHONE_TYPE_IMS = RILConstants.IMS_PHONE; 627a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 637a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé // Modes for LTE_ON_CDMA 647a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int LTE_ON_CDMA_UNKNOWN = RILConstants.LTE_ON_CDMA_UNKNOWN; 657a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int LTE_ON_CDMA_FALSE = RILConstants.LTE_ON_CDMA_FALSE; 667a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int LTE_ON_CDMA_TRUE = RILConstants.LTE_ON_CDMA_TRUE; 677a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 687a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé // Number presentation type for caller id display (From internal/Connection.java) 697a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PRESENTATION_ALLOWED = 1; // normal 707a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PRESENTATION_RESTRICTED = 2; // block by user 717a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PRESENTATION_UNKNOWN = 3; // no specified or unknown by network 727a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PRESENTATION_PAYPHONE = 4; // show pay phone info 737a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 747a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 757a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String PHONE_NAME_KEY = "phoneName"; 767a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String FAILURE_REASON_KEY = "reason"; 777a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String STATE_CHANGE_REASON_KEY = "reason"; 787a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String DATA_NETWORK_TYPE_KEY = "networkType"; 797a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String DATA_FAILURE_CAUSE_KEY = "failCause"; 807a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String DATA_APN_TYPE_KEY = "apnType"; 817a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String DATA_APN_KEY = "apn"; 827a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String DATA_LINK_PROPERTIES_KEY = "linkProperties"; 837a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String DATA_NETWORK_CAPABILITIES_KEY = "networkCapabilities"; 847a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 857a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String DATA_IFACE_NAME_KEY = "iface"; 867a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String NETWORK_UNAVAILABLE_KEY = "networkUnvailable"; 877a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String DATA_NETWORK_ROAMING_KEY = "networkRoaming"; 887a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String PHONE_IN_ECM_STATE = "phoneinECMState"; 897a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 907a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String REASON_LINK_PROPERTIES_CHANGED = "linkPropertiesChanged"; 917a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 927a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** 93a1df816c0677185534babba6ffc29970b048e52eLajos Molnar * Return codes for supplyPinReturnResult and 947a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * supplyPukReturnResult APIs 957a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé */ 967a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PIN_RESULT_SUCCESS = 0; 977a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PIN_PASSWORD_INCORRECT = 1; 987a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int PIN_GENERAL_FAILURE = 2; 997a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 1007a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** 1017a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * Return codes for <code>enableApnType()</code> 1027a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé */ 1037a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int APN_ALREADY_ACTIVE = 0; 1047a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int APN_REQUEST_STARTED = 1; 1057a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int APN_TYPE_NOT_AVAILABLE = 2; 1067a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int APN_REQUEST_FAILED = 3; 1077a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int APN_ALREADY_INACTIVE = 4; 108266299cfb628ce2cadccb76443b0566e1a53dbccBernhard Rosenkränzer 1097a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** 1107a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * APN types for data connections. These are usage categories for an APN 1117a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * entry. One APN entry may support multiple APN types, eg, a single APN 1127a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * may service regular internet traffic ("default") as well as MMS-specific 1137a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * connections.<br/> 1147a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * APN_TYPE_ALL is a special type to indicate that this APN entry can 1157a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * service all data connections. 1167a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé */ 1177a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String APN_TYPE_ALL = "*"; 1187a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** APN type for default data traffic */ 1197a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String APN_TYPE_DEFAULT = "default"; 1207a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** APN type for MMS traffic */ 1217a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String APN_TYPE_MMS = "mms"; 1227a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** APN type for SUPL assisted GPS */ 1237a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String APN_TYPE_SUPL = "supl"; 1247a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** APN type for DUN traffic */ 125b4a7a2df4c28c3f32b5d877b54831d2cc5d78f81Colin Cross public static final String APN_TYPE_DUN = "dun"; 1267a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** APN type for HiPri traffic */ 1277a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String APN_TYPE_HIPRI = "hipri"; 1287a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** APN type for FOTA */ 1297a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String APN_TYPE_FOTA = "fota"; 1307a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** APN type for IMS */ 1317a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String APN_TYPE_IMS = "ims"; 1327a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** APN type for CBS */ 1337a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String APN_TYPE_CBS = "cbs"; 1347a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** APN type for IA Initial Attach APN */ 1357a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String APN_TYPE_IA = "ia"; 1367a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé /** APN type for Emergency PDN. This is not an IA apn, but is used 1377a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé * for access to carrier services in an emergency call situation. */ 1387a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final String APN_TYPE_EMERGENCY = "emergency"; 1397a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 1407a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int RIL_CARD_MAX_APPS = 8; 1417a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 1427a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int DEFAULT_CARD_INDEX = 0; 1437a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 1447a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int MAX_PHONE_COUNT_SINGLE_SIM = 1; 1457a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé 1467a33b7740412accf6a1cc912686c8d0acfb2a883Oscar Rydhé public static final int MAX_PHONE_COUNT_DUAL_SIM = 2; 147 148 public static final int MAX_PHONE_COUNT_TRI_SIM = 3; 149 150 public static final String PHONE_KEY = "phone"; 151 152 public static final String SLOT_KEY = "slot"; 153 154 /** Fired when a subscriptions phone state changes. */ 155 public static final String ACTION_SUBSCRIPTION_PHONE_STATE_CHANGED = 156 "android.intent.action.SUBSCRIPTION_PHONE_STATE"; 157 158 // FIXME: This is used to pass a subId via intents, we need to look at its usage, which is 159 // FIXME: extensive, and see if this should be an array of all active subId's or ...? 160 public static final String SUBSCRIPTION_KEY = "subscription"; 161 162 public static final String SUB_SETTING = "subSettings"; 163 164 public static final int SUB1 = 0; 165 public static final int SUB2 = 1; 166 public static final int SUB3 = 2; 167 168 // TODO: Remove these constants and use an int instead. 169 public static final int SIM_ID_1 = 0; 170 public static final int SIM_ID_2 = 1; 171 public static final int SIM_ID_3 = 2; 172 public static final int SIM_ID_4 = 3; 173 174 // ICC SIM Application Types 175 // TODO: Replace the IccCardApplicationStatus.AppType enums with these constants 176 public static final int APPTYPE_UNKNOWN = 0; 177 public static final int APPTYPE_SIM = 1; 178 public static final int APPTYPE_USIM = 2; 179 public static final int APPTYPE_RUIM = 3; 180 public static final int APPTYPE_CSIM = 4; 181 public static final int APPTYPE_ISIM = 5; 182 183 public enum CardUnavailableReason { 184 REASON_CARD_REMOVED, 185 REASON_RADIO_UNAVAILABLE, 186 REASON_SIM_REFRESH_RESET 187 }; 188 189 // Initial MTU value. 190 public static final int UNSET_MTU = 0; 191 192 //FIXME maybe this shouldn't be here - sprout only 193 public static final int CAPABILITY_3G = 1; 194 195 /** 196 * Values for the adb property "persist.radio.videocall.audio.output" 197 */ 198 public static final int AUDIO_OUTPUT_ENABLE_SPEAKER = 0; 199 public static final int AUDIO_OUTPUT_DISABLE_SPEAKER = 1; 200 public static final int AUDIO_OUTPUT_DEFAULT = AUDIO_OUTPUT_ENABLE_SPEAKER; 201} 202