我有一个 Java servlet Web 服务器和一个相互通信的 Android 应用程序。将自定义对象(例如:用户对象)从服务器传递到 android 的正确方法是什么?
示例: 用户通过Android设备登录,用户的电子邮件和密码被发送到服务器进行身份验证。服务器现在需要将 User 对象发送回 Android 设备。
如果您可以附上示例或教程链接,那就太好了。
最佳答案
https://www.youtube.com/watch?v=Gyaay7OTy-w
创建一个扩展 AsyncTask 的类 实现覆盖方法(Alt+Insert) 在后台执行: 建立一个 http url 连接
try {
URL url=new URL(urladdress);
HttpURLConnection con= (HttpURLConnection)url.openConnection();
con.setRequestMethod("GET");
con.setRequestMethod("POST")
con.setDoOutput(true);
con.setDoInput(true);
return con;
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
现在从此连接下载数据
if(con==null) {
Toast.makeText(ctx,"Connection is null",Toast.LENGTH_LONG).show();
}
try{
InputStream is = new BufferedInputStream(con.getInputStream());
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line;
StringBuffer jsonData= new StringBuffer();
while ((line=br.readLine())!=null)
{
jsonData.append(line+"/n");
}
br.close();
is.close();
return jsonData.toString();
} catch (IOException e) {
e.printStackTrace();
}
现在解析这个 jsonData
try{
JSONArray ja = new JSONArray(jsonData);
JSONObject jo = null;
//parse Data
}
在onPostExecute中调用将接收数据的所需java文件 编写一个脚本,转换从服务器接收的数据并以 json 格式发送数据
注意 - 这些代码属于三个不同的类,因此不要尝试复制/粘贴
关于java - 将对象从服务器传递到 android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44460997/