別のアプリケーションを作成しましたが、現在は個人データのみを保存しています。ご存知のように、ユーザーがアプリケーション アイコンをクリックするたびに、アプリケーションが起動します。アプリケーションが起動する前にパスワードを入力したい。ユーザーが間違ったパスワードを入力すると、最大 5 回、アプリケーションが起動しなくなります。
私の質問は; 間違ったパスが指定された場合、パスワードを入力してアプリケーションを起動させないようにするにはどうすればよいですか?
別のアプリケーションを作成しましたが、現在は個人データのみを保存しています。ご存知のように、ユーザーがアプリケーション アイコンをクリックするたびに、アプリケーションが起動します。アプリケーションが起動する前にパスワードを入力したい。ユーザーが間違ったパスワードを入力すると、最大 5 回、アプリケーションが起動しなくなります。
私の質問は; 間違ったパスが指定された場合、パスワードを入力してアプリケーションを起動させないようにするにはどうすればよいですか?
メイン アクティビティでは、パスワードを入力するプロンプトを表示する必要があります。パスワード ボックスはEditText
、パスワード プロパティが設定されている必要があります (入力時に文字を非表示にするため)。Button
また、保存したパスワードのパスワードをチェックするサブミットも必要です。間違って入力されたパスワードが入力されるたびに 5 に増加するカウンターが必要です。5 に達すると、使用finish()
してアクティビティを強制終了できます (使用してfinish()
いる で呼び出されActivity
ます)。正しいパスワードを入力すると、を起動して、実際のアプリケーションとなるIntent
別のアプリケーションを起動できます。Activity
アプリケーション アイコンが起動したらすぐにユーザーにパスワードを要求する必要があるため、アプリケーションで最初に行うべきことは、認証を要求することです。
そのため、MainActivity (アプリケーションの起動時に呼び出される最初のアクティビティ) では、
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
passwordCounter = 0;
//ask the user for the password using a non-cancellable Dialog
//get the input in an EditText
//when the Submit button is clicked after entering the password, do the following
if(password does not match && passwordCounter < 5)
{
passwordCounter++;
//ask the user for the password once again using the non-cancellable Dialog
}
else if (password does not match && passwordCounter >= 5)
{
finish(); // kill your Activity
}
else
{
//start the actual functioning of the application
}
}