我正在创建一个需要用来创建帐户然后使用它登录的应用。它应该让他们在每次使用后都登录。然后,用户名将用于与其他人通信。我该怎么做呢?我没有做过类似的事情,我也不知道从哪里开始。任何链接或建议表示赞赏。谢谢!顺便说一句,我使用的是eclipse,它是一个Android应用程序。
答案 0 :(得分:1)
答案 1 :(得分:1)
1)据我了解,您希望通过用户名维护用户的会话,这意味着当您登录到应用程序时,您发送用户名作为intent Extra使用用户名查询数据库首先,您创建一个Java像这样的用户的类
public class User {
private String username;
Context context;
SharedPreferences sharedPreferences;
public User(Context context) {
this.context = context;
sharedPreferences = context.getSharedPreferences("userinfo", Context.MODE_PRIVATE);
}
public void remove() {
sharedPreferences.edit().clear().commit();
}
public String getUsername() {
username = sharedPreferences.getString("username", "");
return username;
}
public void setUsername(String username) {
this.username = username;
sharedPreferences.edit().putString("username", username).commit();
}}
2)在您的登录活动中,在创建
上写下此方法User user = new User(getApplicationContext());
if (user.getUsername()!=""){
Intent intent = new Intent(this,YourActivity.class);
intent.putExtra("username",user.getUsername());
startActivity(intent);}
3)现在从YourActivty.class中提取用户名
Intent intent = getIntent();
reg_no = intent.getStringExtra("reg_no");
并根据它查询数据库并获取用户信息
4)所以现在你必须在你的应用程序中添加一个注销按钮,它将删除共享首选项中的用户名,以便新用户可以使用该应用程序
logoutButton.setOnClickListener(new View.OnClickListener()){
@Override
public void onClick(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(Home.this);
// Add the buttons
builder.setPositiveButton("Yes", new
DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
User user = new User(getApplicationContext());
user.remove();
Intent intent ;
intent = new Intent(getApplicationContext(),LoginActivity.class);
startActivity(intent);
// User clicked OK button
}
});
builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// User cancelled the dialog
dialog.dismiss();
}
});
// Create the AlertDialog
builder.setMessage("Do you really want to Log Out ?");
AlertDialog dialog = builder.create();
dialog.show();
}}
5)在LoginActivity中覆盖onBackPressed()方法并且不执行任何操作以确保应用程序不会打开上一个活动,这里我通知用户后退按钮已被禁用
@Override
public void onBackPressed() {
Snackbar.make(binding.main,"That Action is Disabled",Snackbar.LENGTH_SHORT).show();
}
//希望这有助于:)
答案 2 :(得分:0)
你应该看看parse.com。它们提供您所需要的一切。只需下载他们的sdk并使用他们的文档即可开始创建所有这些。