InCallScreenShowActivation.java revision 13660626500d047d4a3a097e832bb175e1c4f894
14a5a966f0d43e04d336be1b94182346399a931f6Wink Saville/* 24a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * Copyright (C) 2009 The Android Open Source Project 34a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * 44a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * Licensed under the Apache License, Version 2.0 (the "License"); 54a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * you may not use this file except in compliance with the License. 64a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * You may obtain a copy of the License at 74a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * 84a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * http://www.apache.org/licenses/LICENSE-2.0 94a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * 104a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * Unless required by applicable law or agreed to in writing, software 114a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * distributed under the License is distributed on an "AS IS" BASIS, 124a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 134a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * See the License for the specific language governing permissions and 144a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * limitations under the License. 154a5a966f0d43e04d336be1b94182346399a931f6Wink Saville */ 164a5a966f0d43e04d336be1b94182346399a931f6Wink Saville 174a5a966f0d43e04d336be1b94182346399a931f6Wink Savillepackage com.android.phone; 184a5a966f0d43e04d336be1b94182346399a931f6Wink Saville 1913660626500d047d4a3a097e832bb175e1c4f894Freeman Ngimport com.android.internal.telephony.Phone; 2013660626500d047d4a3a097e832bb175e1c4f894Freeman Ng 214a5a966f0d43e04d336be1b94182346399a931f6Wink Savilleimport android.app.Activity; 2213660626500d047d4a3a097e832bb175e1c4f894Freeman Ngimport android.app.PendingIntent; 234a5a966f0d43e04d336be1b94182346399a931f6Wink Savilleimport android.content.Intent; 244a5a966f0d43e04d336be1b94182346399a931f6Wink Savilleimport android.os.Bundle; 254a5a966f0d43e04d336be1b94182346399a931f6Wink Savilleimport android.util.Log; 264a5a966f0d43e04d336be1b94182346399a931f6Wink Saville 274a5a966f0d43e04d336be1b94182346399a931f6Wink Saville/** 284a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * Trampoline to InCallScreen protected by PERFORM_CDMA_PROVISIONING permission 294a5a966f0d43e04d336be1b94182346399a931f6Wink Saville * to only expose SHOW_ACTIVATION. 304a5a966f0d43e04d336be1b94182346399a931f6Wink Saville */ 314a5a966f0d43e04d336be1b94182346399a931f6Wink Savillepublic class InCallScreenShowActivation extends Activity { 324a5a966f0d43e04d336be1b94182346399a931f6Wink Saville private static final String LOG_TAG = "InCallScreenShowActivation"; 334a5a966f0d43e04d336be1b94182346399a931f6Wink Saville 3413660626500d047d4a3a097e832bb175e1c4f894Freeman Ng // the pending intent we'll use to report the user skipped provisioning 3513660626500d047d4a3a097e832bb175e1c4f894Freeman Ng // Note: this constant must match the one defined in SetupWizardActivity 3613660626500d047d4a3a097e832bb175e1c4f894Freeman Ng private static final String EXTRA_USER_SKIP_PENDING_INTENT = "ota_user_skip_pending_intent"; 3713660626500d047d4a3a097e832bb175e1c4f894Freeman Ng 384a5a966f0d43e04d336be1b94182346399a931f6Wink Saville @Override 394a5a966f0d43e04d336be1b94182346399a931f6Wink Saville protected void onCreate(Bundle icicle) { 404a5a966f0d43e04d336be1b94182346399a931f6Wink Saville super.onCreate(icicle); 414a5a966f0d43e04d336be1b94182346399a931f6Wink Saville 4213660626500d047d4a3a097e832bb175e1c4f894Freeman Ng Intent intent = getIntent(); 4313660626500d047d4a3a097e832bb175e1c4f894Freeman Ng if (intent.getAction().equals(InCallScreen.ACTION_SHOW_ACTIVATION)) { 444a5a966f0d43e04d336be1b94182346399a931f6Wink Saville Intent newIntent = new Intent().setClass(this, InCallScreen.class) 454a5a966f0d43e04d336be1b94182346399a931f6Wink Saville .setAction(InCallScreen.ACTION_SHOW_ACTIVATION); 4613660626500d047d4a3a097e832bb175e1c4f894Freeman Ng 4713660626500d047d4a3a097e832bb175e1c4f894Freeman Ng // tuck away the pending intent to send later if the user skips provisioning 4813660626500d047d4a3a097e832bb175e1c4f894Freeman Ng PhoneApp app = PhoneApp.getInstance(); 4913660626500d047d4a3a097e832bb175e1c4f894Freeman Ng app.cdmaOtaInCallScreenUiState.reportSkipPendingIntent = (PendingIntent) intent 5013660626500d047d4a3a097e832bb175e1c4f894Freeman Ng .getParcelableExtra(EXTRA_USER_SKIP_PENDING_INTENT); 5113660626500d047d4a3a097e832bb175e1c4f894Freeman Ng 524a5a966f0d43e04d336be1b94182346399a931f6Wink Saville startActivity(newIntent); 534a5a966f0d43e04d336be1b94182346399a931f6Wink Saville } else { 544a5a966f0d43e04d336be1b94182346399a931f6Wink Saville Log.e(LOG_TAG, "Inappropriate launch of InCallScreenShowActivation"); 554a5a966f0d43e04d336be1b94182346399a931f6Wink Saville } 564a5a966f0d43e04d336be1b94182346399a931f6Wink Saville 574a5a966f0d43e04d336be1b94182346399a931f6Wink Saville finish(); 584a5a966f0d43e04d336be1b94182346399a931f6Wink Saville } 594a5a966f0d43e04d336be1b94182346399a931f6Wink Saville 604a5a966f0d43e04d336be1b94182346399a931f6Wink Saville} 61