![](/img/trans.png)
[英]How can I login with facebook and get user info to send my remote db from android application
[英]How can I get the ID's of user who are login with my apps?
如何获取使用我的应用程序登录的用户的 ID?
我有两个活动。 第一个是登录活动,第二个是注册活动。 我也在使用 JSON。如果用户成功注册,则会创建一个 ID。 我的登录页面需要那个 ID。
注册.java
protected String doInBackground(String... args) {
// TODO Auto-generated method stub
int success;
String firstname = first.getText().toString();
String lastname = last.getText().toString();
String emailaddress = emailet.getText().toString();
String username = user.getText().toString();
String password= passet.getText().toString();
try {
List params = new ArrayList();
params.add(new BasicNameValuePair("first_name", firstname));
params.add(new BasicNameValuePair("last_name", lastname));
params.add(new BasicNameValuePair("user_email", emailaddress));
params.add(new BasicNameValuePair("user_name", username));
params.add(new BasicNameValuePair("user_pass", password));
Log.d("request!", "starting");
JSONObject json = jsonParser.makeHttpRequest(LOGIN_URL, "POST", params);
Log.d("Login attempt", json.toString());
success = json.getInt(TAG_SUCCESS);
if (success == 1) {
Log.d("User Created!", json.toString());
;
Toast.makeText(getApplicationContext(), json.toString(), Toast.LENGTH_SHORT).show();
finish();
return json.getString(TAG_MESSAGE);
}else{
Log.d("Login Failure!", json.getString(TAG_MESSAGE));
return json.getString(TAG_MESSAGE);
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return null;
}
登录.java
protected String doInBackground(String...args) {
// TODO Auto-generated method stub
int success;
String username = user.getText().toString();
String password = pass.getText().toString();
try {
List params = new ArrayList();
params.add(new BasicNameValuePair("user_email", username));
params.add(new BasicNameValuePair("user_pass", password) );
Log.d("request!", "starting");
JSONObject json = jsonParse.makeHttpRequest(LOGIN_URL, "GET", params);
Log.d("Login attempt", json.toString());
success = json.getInt(TAG_SUCCESS);
if (success == 1) {
Log.d("Login Successful!", json.toString());
return json.getString(TAG_MESSAGE);
}else{
Log.d("Login Failure!", json.getString(TAG_MESSAGE));
return json.getString(TAG_MESSAGE);
}
} catch (Exception e) {
// TODO: handle exception
}
return null;
}
您需要先将该 ID 存储在数据库中的某个位置,然后在登录时您需要将该 ID 与用户名和密码一起传递
将其放入您的 Session 经理。
public static void saveSession_userid(SharedPreferences prefs,String value) {
SessionManager.savePreference(prefs, USERID, value);
}
public static String get_session_userid(SharedPreferences prefs) {
return prefs.getString(USERID, "");
}
这在您的登录异步任务 onPostExecute() 中
if (login_result.equals("sucess")) {
id = jsonObject.getString("userId");
SessionManager.saveSession_userid(prefs, id);
并声明:
SharedPreferences prefs;
prefs = PreferenceManager.getDefaultSharedPreferences(this);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.