ConfirmDeviceCredentialActivity.java revision 74a2283d2425107f7b39a29d8db7947d8c6f8c7c
109b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli 209b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli/* 309b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * Copyright (C) 2014 The Android Open Source Project 409b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * 509b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * Licensed under the Apache License, Version 2.0 (the "License"); 609b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * you may not use this file except in compliance with the License. 709b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * You may obtain a copy of the License at 809b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * 909b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * http://www.apache.org/licenses/LICENSE-2.0 1009b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * 1109b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * Unless required by applicable law or agreed to in writing, software 1209b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * distributed under the License is distributed on an "AS IS" BASIS, 1309b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1409b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * See the License for the specific language governing permissions and 1509b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * limitations under the License. 1609b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli */ 1709b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli 1809b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civellipackage com.android.settings; 1909b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli 2009b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelliimport android.app.Activity; 2175fe9e027c2f280664c2aaa0a78457fc37bd0e8bJim Millerimport android.app.KeyguardManager; 2209b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelliimport android.content.Intent; 2309b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelliimport android.os.Bundle; 2409b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelliimport android.util.Log; 2509b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli 2609b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli/** 2709b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * Launch this when you want to confirm the user is present by asking them to enter their 2809b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli * PIN/password/pattern. 2909b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli */ 3009b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civellipublic class ConfirmDeviceCredentialActivity extends Activity { 3109b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli public static final String TAG = ConfirmDeviceCredentialActivity.class.getSimpleName(); 3209b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli 333ea423ae0ff56d249b6844b3a68c67ee5eba243dSvetoslav public static Intent createIntent(CharSequence title, CharSequence details) { 343ea423ae0ff56d249b6844b3a68c67ee5eba243dSvetoslav Intent intent = new Intent(); 353ea423ae0ff56d249b6844b3a68c67ee5eba243dSvetoslav intent.setClassName("com.android.settings", 363ea423ae0ff56d249b6844b3a68c67ee5eba243dSvetoslav ConfirmDeviceCredentialActivity.class.getName()); 373ea423ae0ff56d249b6844b3a68c67ee5eba243dSvetoslav intent.putExtra(KeyguardManager.EXTRA_TITLE, title); 383ea423ae0ff56d249b6844b3a68c67ee5eba243dSvetoslav intent.putExtra(KeyguardManager.EXTRA_DESCRIPTION, details); 393ea423ae0ff56d249b6844b3a68c67ee5eba243dSvetoslav return intent; 403ea423ae0ff56d249b6844b3a68c67ee5eba243dSvetoslav } 413ea423ae0ff56d249b6844b3a68c67ee5eba243dSvetoslav 426609b0c22ae89a24d1b07dc3c4143452616d4450Andres Morales public static Intent createIntent(CharSequence title, CharSequence details, long challenge) { 436609b0c22ae89a24d1b07dc3c4143452616d4450Andres Morales Intent intent = new Intent(); 446609b0c22ae89a24d1b07dc3c4143452616d4450Andres Morales intent.setClassName("com.android.settings", 456609b0c22ae89a24d1b07dc3c4143452616d4450Andres Morales ConfirmDeviceCredentialActivity.class.getName()); 466609b0c22ae89a24d1b07dc3c4143452616d4450Andres Morales intent.putExtra(KeyguardManager.EXTRA_TITLE, title); 476609b0c22ae89a24d1b07dc3c4143452616d4450Andres Morales intent.putExtra(KeyguardManager.EXTRA_DESCRIPTION, details); 486609b0c22ae89a24d1b07dc3c4143452616d4450Andres Morales intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_CHALLENGE, challenge); 496609b0c22ae89a24d1b07dc3c4143452616d4450Andres Morales intent.putExtra(ChooseLockSettingsHelper.EXTRA_KEY_HAS_CHALLENGE, true); 506609b0c22ae89a24d1b07dc3c4143452616d4450Andres Morales return intent; 516609b0c22ae89a24d1b07dc3c4143452616d4450Andres Morales } 526609b0c22ae89a24d1b07dc3c4143452616d4450Andres Morales 5309b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli @Override 5409b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli public void onCreate(Bundle savedInstanceState) { 5509b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli super.onCreate(savedInstanceState); 5609b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli 5709b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli Intent intent = getIntent(); 5875fe9e027c2f280664c2aaa0a78457fc37bd0e8bJim Miller String title = intent.getStringExtra(KeyguardManager.EXTRA_TITLE); 5975fe9e027c2f280664c2aaa0a78457fc37bd0e8bJim Miller String details = intent.getStringExtra(KeyguardManager.EXTRA_DESCRIPTION); 6009b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli 6174a2283d2425107f7b39a29d8db7947d8c6f8c7cJorim Jaggi ChooseLockSettingsHelper helper = new ChooseLockSettingsHelper(this); 6274a2283d2425107f7b39a29d8db7947d8c6f8c7cJorim Jaggi if (!helper.launchConfirmationActivity(0 /* request code */, null /* title */, title, 6374a2283d2425107f7b39a29d8db7947d8c6f8c7cJorim Jaggi details, false /* returnCredentials */, true /* isExternal */)) { 6474a2283d2425107f7b39a29d8db7947d8c6f8c7cJorim Jaggi Log.d(TAG, "No pattern, password or PIN set."); 6574a2283d2425107f7b39a29d8db7947d8c6f8c7cJorim Jaggi setResult(Activity.RESULT_OK); 6609b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli } 6709b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli finish(); 6809b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli } 6909b5228ae56283ebcb69d1c295033c74ea868ae5Jay Civelli} 70