我正在构建一个Android应用程序,用户输入名称,电子邮件ID这是对URL的解析,所有用户数据都存储在那里。
现在,当用户发送此信息时,会在服务器上的该时间生成一个ID,并将该唯一ID重新发送给我作为URL响应。
如何获得此响应并存储它。所以我可以使用它以供将来使用。
以下是我将此值解析为该网址的代码 -
private class DownloadJSON extends AsyncTask<String, String, String> {
@Override
protected void onPreExecute() {
super.onPreExecute();
// Create a progressdialog
}
@Override
protected String doInBackground(String... params) {
// Create an array
//public String postData() {
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://URL/api/user");
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>2);
nameValuePairs.add(new BasicNameValuePair("name", name));
nameValuePairs.add(new BasicNameValuePair("email", email));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
InputStream parse = entity.getContent();
return getStringFromInputStream(parse);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
}
return "No Result !";
}
//convert InputStream to String
private String getStringFromInputStream(InputStream is) {
BufferedReader br = null;
StringBuilder sb = new StringBuilder();
String line;
try {
br = new BufferedReader(new InputStreamReader(is));
while ((line = br.readLine()) != null) {
sb.append(line);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (br != null) {
try {
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return sb.toString();
}
@Override
protected void onPostExecute(String args) {
}
}
我是新来的android请帮帮我!!
答案 0 :(得分:2)
最好使用SharedPreferences使用众所周知的密钥保存所有内容。
首先在共享偏好中保存您的userName,EmailId,例如
//Intialize it first
SharedPreferences sharedpreferences = getSharedPreferences("SOME_KEY", Context.MODE_PRIVATE);
//Use the Editor to put value inside this
Editor editor = sharedpreferences.edit();
//save both the name and email first
editor.putString("NAME", name);
editor.putString("EMAILID", email);
//finally commit it
editor.commit();
现在做你的服务器部分......
@Override
protected String doInBackground(String... params) {
// Create an array
//public String postData() {
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://URL/api/user");
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>2);
nameValuePairs.add(new BasicNameValuePair("name", name));
nameValuePairs.add(new BasicNameValuePair("email", email));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
String responseId = response.getEntity().getContent();
//Just save your ID in the same sharedPreferences in UI Thread
runOnUiThread(new Runnable(){
public void run() {
Editor editor = sharedpreferences.edit();
//save your ID now
editor.putString("ID", responseId );
editor.commit();
}
});
..............................
..............................
无论何时需要,只需使用相关的key.like
从SharedPreference中获取 String id = sharedpreferences.getStringExtra("ID", "Some default value");