我从未构建过任何可以与服务器通信的 Android 应用程序。我想要做的是我想将用户名和密码发送到服务器,在服务器上匹配它们,当用户名和密码匹配时,应该显示下一个屏幕。下一个屏幕应该只有一个文本视图,上面写着“欢迎用户名”。
我想让你们告诉我一步一步的指南-
- 我应该在Android App中写什么?
- 我应该在服务器端写什么?
- 如何以及在哪里编写服务器代码?
- 我应该在服务器端使用哪种语言?
- 如何在服务器上保存多个用户名密码?
我没有真正的服务器。我将在 localhost 上运行整个代码。
更新:
这是我在我的 Android 应用程序中写的。我不知道多少是正确的。
public void clicked(View v) {
System.out.println("button clicked");
EditText username = (EditText) findViewById(R.id.edituser);
EditText password = (EditText) findViewById(R.id.editpass);
Editable user = username.getText();
Editable pass = password.getText();
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://192.168.1.101:8080//WebApplication1/sendresponse.java");
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("username", user.toString()));
nameValuePairs.add(new BasicNameValuePair("password", pass.toString()));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
Header[] headers = response.getAllHeaders();
int len = headers.length;
for(int i=0; i<len; i++) {
System.out.println("header : " + headers[i]);
}
InputStream inputStream = response.getEntity().getContent();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
StringBuilder stringBuilder = new StringBuilder();
String bufferedStrChunk = null;
while((bufferedStrChunk = bufferedReader.readLine()) != null){
stringBuilder.append(bufferedStrChunk);
}
System.out.println("response : " + stringBuilder.toString());
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
}
}
我不知道哪种语言最适合服务器端。我应该在服务器端使用 REST 吗?