0

ログインボタンをクリックしてユーザー名とパスワードを入力すると、ログインが正常に行われます。チェックボックスをクリックしてユーザー名とパスワードを入力した後、正常にログインしてアプリケーションを再度開いた場合は、アプリケーションのユーザー名とパスワードをテキストボックスに入力する必要があります。今、私はログインボタンを直接クリックします、そしてそれは完全にログイン成功でなければなりません。

このコードを試してみます

public class Login extends Activity {
    CheckBox check;

    private static final String UPDATE_URL = "http://202.62.91.45/NewCozyDine/login1.php3";
    public ProgressDialog progressDialog;
    private EditText UserEditText;
    private EditText PassEditText;

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        progressDialog = new ProgressDialog(this);
        progressDialog.setMessage("Please wait...");
        progressDialog.setIndeterminate(true);
        progressDialog.setCancelable(false);
        UserEditText = (EditText) findViewById(R.id.username);
        PassEditText = (EditText) findViewById(R.id.password);
        check=(CheckBox) findViewById(R.id.checkbox);
        Button button = (Button) findViewById(R.id.okbutton);
        button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                int usersize = UserEditText.getText().length();
                int passsize = PassEditText.getText().length();
                if(usersize > 0 && passsize > 0) {
                    progressDialog.show();
                    String user = UserEditText.getText().toString();
                    String pass = PassEditText.getText().toString();
                    doLogin(user, pass);
                } else createDialog("Error","Please enter Username and Password");
            }
        });

xmlパーサー(サーバーデータベースからの検証)のログインボタン用に作成しました。覚えておくためのチェックボックスにどのように書くことができますか

4

4 に答える 4

1
if (successful login and remember-me checkbox is marked...) {
    SharedPreferences SP = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
    SharedPreferences.Editor spEditor = SP.edit();
    spEditor.putString("username"),userName);
    spEditor.putString("password",password);
    spEditor.commit();

次に onCreate で、それがすでに存在するかどうかを確認し、存在する場合は提示します。

SharedPreferences SP = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
    userName = SP.getString("username", "none");
if (!userName.equal("none"))
    editText.setText(userName);
....
于 2012-04-19T12:50:10.980 に答える
1

チェックボックスが選択されていることを確認するだけです。そのリスナーでは、SharedPreference を使用する必要があります。これにより、データがアプリケーションに保存されます。

CheckBox savepass;
public static final String PREFS_NAME = "MyPrefsFile";
private static final String PREF_USERNAME = "username";
private static final String PREF_PASSWORD = "password";
private static final String PREF_STATUS = "status";

savepass = (CheckBox) findViewById(R.id.remeber);
savepass.setChecked(false);

//サインイン ボタンでこのコードを記述します。このコードは、SharedPreference に保存するために使用されます

if (savepass.isChecked()) {
                getSharedPreferences(PREFS_NAME, MODE_PRIVATE).edit()
                        .putString(PREF_USERNAME, uid.getText().toString())
                        .putString(PREF_PASSWORD, pwd.getText().toString())
                        .putString(PREF_STATUS, "true").commit();
                /*
                 * Toast.makeText(getApplicationContext(),
                 * "Saved Successfully", Toast.LENGTH_LONG).show();
                 */
            }else {
                getSharedPreferences(PREFS_NAME, MODE_PRIVATE).edit()
                        .putString(PREF_USERNAME, "").putString(
                                PREF_PASSWORD, "").putString(PREF_STATUS,
                                "").commit();
//this else part is if user has already been checked and saved in application, then name of the user will be displayed on username and password edittextbox.
            }
于 2012-04-19T12:48:22.493 に答える
1

このようにしてみて、

 public SharedPreferences prefs;
 public String prefName = "MyPref";
 private static final String REMEMBER = "remember_me";
 public static final String Password = "volume_range";
 public static final String User_Name = "my_alarmstate";
 prefs = getSharedPreferences(prefName, MODE_PRIVATE);      
 remember_state  = prefs.getBoolean(REMEMBER, false);   
 remember_chebox.setChecked(remember_state);
 if(remember_state == true) {

            uname_et.setText(prefs.getString(User_Name, null));
            password_et.setText(prefs.getString(Password, null));
        }

SharedPreferences.Editor editor = prefs.edit();


                editor.putString(User_Name, entered_name);
                editor.putString(Password, entered_password);   
                editor.putBoolean(REMEMBER, remember_state);
                editor.commit();   
于 2012-04-19T12:43:51.233 に答える
0

アプリケーションで使用SharedPreferencesしようとしているので、この1つのSOリンクで。を探してくださいSharedPreferences

SharedPreferencesにデータを保存するには、こちらにアクセスしてください。パスワードの暗号化を使用してください。

AndroidでAES暗号化を使用するためのガイドについてはこちらを参照してください

http://developer.motorola.com

于 2012-04-19T13:03:13.250 に答える