2016-03-15 122 views
0

如何獲取用戶名和密碼EditText值並將它們添加到Firebase數據庫?如何將用戶名和密碼添加到Firebase數據庫

OnTouchListener用於我創建的名爲REG的註冊按鈕。

請在MotionEvent.ACTION_UP部分輸入正確的代碼。

public class RegisterActivity extends AppCompatActivity implements View.OnTouchListener{ 
EditText USER_NAME, USER_PASS, CON_PASS; 
LinearLayout REG; 
Context ctx = this; 
Firebase firebase; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_register); 

    Firebase.setAndroidContext(this); 
    firebase = new Firebase("https://burning-fire-2423.firebaseIO.com/"); 

    USER_NAME = (EditText) findViewById(R.id.reg_user); 
    USER_PASS = (EditText) findViewById(R.id.reg_pass); 
    CON_PASS = (EditText) findViewById(R.id.con_pass); 
    REG = (LinearLayout) findViewById(R.id.user_reg); 
    REG.setOnTouchListener(this); 
} 

@Override 
public boolean onTouch(View v, MotionEvent event){ 
    View view = (View) v; 
    switch (view.getId()) { 
     case R.id.user_reg: 
      switch (event.getAction()) { 
       case MotionEvent.ACTION_DOWN: 
        break; 
       case MotionEvent.ACTION_MOVE: 
        break; 
       case MotionEvent.ACTION_UP: 
        firebase.createUser("[email protected]", "password", new Firebase.ValueResultHandler<Map<String, Object>>() { 
         @Override 
         public void onSuccess(Map<String, Object> result) { 
          System.out.println("Successfully created user account with uid: " + result.get("uid")); 
         } 
         @Override 
         public void onError(FirebaseError firebaseError) { 
          // there was an error 
         } 
        }); 
        break; 
       case MotionEvent.ACTION_CANCEL: 
        break; 
      } 
      break; 
    } 
    return false; 
} 

} 
+1

該代碼看起來不錯。你有什麼問題?如果您希望保存用戶數據,請閱讀[本文檔的此部分](https://www.firebase.com/docs/android/guide/user-auth.html#section-storing)。 –

回答

1

這裏我創建了一個工作註冊系統。

public class RegisterActivity extends AppCompatActivity implements View.OnTouchListener{ 
EditText USER_NAME, USER_PASS, CON_PASS; 
LinearLayout REG; 
Context ctx = this; 
Firebase firebase; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_register); 

    Firebase.setAndroidContext(this); 
    firebase = new Firebase("https://burning-fire-1234.firebaseIO.com/"); 

    USER_NAME = (EditText) findViewById(R.id.reg_user); 
    USER_PASS = (EditText) findViewById(R.id.reg_pass); 
    CON_PASS = (EditText) findViewById(R.id.con_pass); 
    REG = (LinearLayout) findViewById(R.id.user_reg); 
    REG.setOnTouchListener(this); 
} 

@Override 
public boolean onTouch(View v, MotionEvent event){ 
    View view = (View) v; 
    switch (view.getId()) { 
     case R.id.user_reg: 
      switch (event.getAction()) { 
       case MotionEvent.ACTION_DOWN: 
        break; 
       case MotionEvent.ACTION_MOVE: 
        break; 
       case MotionEvent.ACTION_UP: 
        String email = USER_NAME.getText().toString(); 
        String password = USER_PASS.getText().toString(); 
        String confirm = CON_PASS.getText().toString(); 

        if(password.equals(confirm)) 
        { 
         if(password.length() >= 6) 
         { 
          firebase.createUser(email, password, new Firebase.ValueResultHandler<Map<String, Object>>() { 
           @Override 
           public void onSuccess(Map<String, Object> result) { 
            System.out.println("Successfully created user account with uid: " + result.get("uid")); 
           } 

           @Override 
           public void onError(FirebaseError firebaseError) { 
            // there was an error 
           } 
          }); 
         } 
         else 
         { 
          Toast.makeText(ctx, "Password must be at least 6 characters long", Toast.LENGTH_LONG).show(); 
         } 
        } 
        else 
        { 
         USER_PASS.setText(""); 
         CON_PASS.setText(""); 
         Toast.makeText(ctx, "Passwords don't match", Toast.LENGTH_LONG).show(); 
        } 
        break; 
       case MotionEvent.ACTION_CANCEL: 
        break; 
      } 
      break; 
    } 
    return false; 
} 

}