Здравствуйте! Написал простую программу под андроид шифрование/дешифрование текста - симметричное шифрование "DES". В главном окне в EditText1 пользователь задает мастерключ, далее кнопкой Button1 ключ заносится в переменную ключа в классе шифрования/дешифрования. В EditText2 пользователь пишет текст который нужно зашифровать/дешифровать. Нажимает на кнопку Button2 и ниже в элементах TextView1 и TextView2 отображаются зашифрованный/расшифрованный текст соответственно.
У меня стоит задача, чтобы при первом запуске программы пользователь задал пароль для входа в программу. Далее при каждом запуске программа требовала бы ввести этот пароль и если пароль верный то открывалась бы главное Activity, если пароль не верный то выходило бы всплывающее сообщение что пароль не верный. (Типичный сейф для Android в общем)
Как реализовать чтобы при запусках программы в зависимости от одних условий запускалось одно Activity, при других другое Activity?
Код главного Activity
package com.example.crypto;
import android.app.Activity;
import android.app.ActionBar;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.TextView;
import android.os.Build;
import com.example.crypto.SimpleDESCryptoProvider; //класс для работы с шифрованием/дешифрованием
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
public void onKey (View v){ // при нажатии на кнопку 1
EditText et = (EditText) findViewById(R.id.editText1);
//if (!ec.getText().toString().equals("FGSJDFGK"))
String str1 = et.getText().toString();
SimpleDESCryptoProvider.seed = str1;//задается мастерключ
}
public void onEnCrypt (View v){ //при нажатии на кнопку 2
TextView ec = (TextView)findViewById(R.id.textViewEnCrypted);
TextView dc = (TextView)findViewById(R.id.textViewDeCrypted);
EditText ep = (EditText) findViewById(R.id.editText2);
String str2 = ep.getText().toString();
String d = SimpleDESCryptoProvider.encrypt(str2); //метод для шифрования
ec.setText("Зашифолванный текст= " + d);
dc.setText("Расшифрованный текст= " +SimpleDESCryptoProvider.decrypt(d)); // метод для расшифрования
}
}
Вот ссылка на проект на всякий случай:
yadi.sk/d/jqp2Ue-6QhB7H