先决条件:如何将Android App与Back4App连接?
我们已经看到在我们的Android应用程序中添加Back4App。在本文中,我们将介绍如何在Android App中添加用户注册表单,以便用户可以在该应用程序中注册自己。
我们将在本文中构建什么?
我们将构建一个简单的应用程序,在其中添加一个简单的用户注册表格,以便用户可以使用其用户名和密码进行注册。下面是视频,我们将在其中观看我们将要构建的内容。
分步实施
本文是“如何将Android App与Back4App连接”的续篇。
步骤1:使用activity_main.xml文件
导航到应用程序> res>布局> activity_main.xml,然后将以下代码添加到该文件中。以下是activity_main.xml文件的代码。
XML
XML
Java
import android.os.Bundle;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
public class HomeActivity extends AppCompatActivity {
// creating a variable for our text view..
private TextView userNameTV;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
// initializing our variables
userNameTV = findViewById(R.id.idTVUserName);
// getting data from intent.
String name = getIntent().getStringExtra("username");
// setting data to our text view.
userNameTV.setText(name);
}
}
Java
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import com.parse.ParseException;
import com.parse.ParseUser;
import com.parse.SignUpCallback;
public class MainActivity extends AppCompatActivity {
// creating variables for our edit text and buttons.
private EditText userNameEdt, passwordEdt;
private Button registerBtn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// initializing our edit text and buttons.
userNameEdt = findViewById(R.id.idEdtUserName);
passwordEdt = findViewById(R.id.idEdtPassword);
registerBtn = findViewById(R.id.idBtnRegister);
// adding on click listener for our button.
registerBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// on below line we are getting data from our edit text.
String userName = userNameEdt.getText().toString();
String password = passwordEdt.getText().toString();
// checking if the entered text is empty or not.
if (TextUtils.isEmpty(userName) && TextUtils.isEmpty(password)) {
Toast.makeText(MainActivity.this, "Please enter user name and password", Toast.LENGTH_SHORT).show();
}
// calling a method to register a user.
registerUser(userName, password);
}
});
}
private void registerUser(String userName, String password) {
// on below line we are creating
// a new user using parse user.
ParseUser user = new ParseUser();
// Set the user's username and password,
// which can be obtained from edit text
user.setUsername(userName);
user.setPassword(password);
// calling a method to register the user.
user.signUpInBackground(new SignUpCallback() {
@Override
public void done(ParseException e) {
// on user registration checking if
// the error is null or not.
if (e == null) {
// if the error is null we are displaying a toast message and
// redirecting our user to new activity and passing the user name.
Toast.makeText(MainActivity.this, "User Registered succesfully", Toast.LENGTH_SHORT).show();
Intent i = new Intent(MainActivity.this, HomeActivity.class);
i.putExtra("username", userName);
startActivity(i);
} else {
// if we get any error then we are logging out
// our user and displaying an error message
ParseUser.logOut();
Toast.makeText(MainActivity.this, "Fail to Register User..", Toast.LENGTH_SHORT).show();
}
}
});
}
}
第2步:创建新活动以在注册后重定向我们的用户
导航到应用程序> Java >应用程序的包名称>右键单击它>新建>空活动,并将其命名为HomeActivity 。或者您也可以参考本文“如何在Android Studio中创建新活动”?
步骤3:使用activity_home.xml文件
导航至应用程序> res>布局> activity_home.xml文件,然后将以下代码添加到其中。
XML格式
步骤4:使用HomeActivity。 Java文件
导航到应用程序> Java >您的应用程序的程序包名称> HomeActivity。 Java文件,并向其中添加以下代码。在代码内部添加了注释,以更详细地了解代码。
Java
import android.os.Bundle;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
public class HomeActivity extends AppCompatActivity {
// creating a variable for our text view..
private TextView userNameTV;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
// initializing our variables
userNameTV = findViewById(R.id.idTVUserName);
// getting data from intent.
String name = getIntent().getStringExtra("username");
// setting data to our text view.
userNameTV.setText(name);
}
}
步骤5:使用MainActivity。 Java文件
转到MainActivity。 Java文件并参考以下代码。下面是MainActivity的代码。 Java文件。在代码内部添加了注释,以更详细地了解代码。
Java
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import com.parse.ParseException;
import com.parse.ParseUser;
import com.parse.SignUpCallback;
public class MainActivity extends AppCompatActivity {
// creating variables for our edit text and buttons.
private EditText userNameEdt, passwordEdt;
private Button registerBtn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// initializing our edit text and buttons.
userNameEdt = findViewById(R.id.idEdtUserName);
passwordEdt = findViewById(R.id.idEdtPassword);
registerBtn = findViewById(R.id.idBtnRegister);
// adding on click listener for our button.
registerBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// on below line we are getting data from our edit text.
String userName = userNameEdt.getText().toString();
String password = passwordEdt.getText().toString();
// checking if the entered text is empty or not.
if (TextUtils.isEmpty(userName) && TextUtils.isEmpty(password)) {
Toast.makeText(MainActivity.this, "Please enter user name and password", Toast.LENGTH_SHORT).show();
}
// calling a method to register a user.
registerUser(userName, password);
}
});
}
private void registerUser(String userName, String password) {
// on below line we are creating
// a new user using parse user.
ParseUser user = new ParseUser();
// Set the user's username and password,
// which can be obtained from edit text
user.setUsername(userName);
user.setPassword(password);
// calling a method to register the user.
user.signUpInBackground(new SignUpCallback() {
@Override
public void done(ParseException e) {
// on user registration checking if
// the error is null or not.
if (e == null) {
// if the error is null we are displaying a toast message and
// redirecting our user to new activity and passing the user name.
Toast.makeText(MainActivity.this, "User Registered succesfully", Toast.LENGTH_SHORT).show();
Intent i = new Intent(MainActivity.this, HomeActivity.class);
i.putExtra("username", userName);
startActivity(i);
} else {
// if we get any error then we are logging out
// our user and displaying an error message
ParseUser.logOut();
Toast.makeText(MainActivity.this, "Fail to Register User..", Toast.LENGTH_SHORT).show();
}
}
});
}
}
现在运行您的应用程序,并查看该应用程序的输出。
输出:
在以下链接上查看项目: https : //github.com/ChaitanyaMunje/GFG-Back4App/tree/RegisterUser