アンドロイドとリモートサーバーとの接続は非常に面白いです。非常に不安です。以下のリンクは、あなたのニーズを最大限に引き出すのに役立ちます。
Android Connect with Php Mysql
Android Connection using servlets
そして、あなたはHttpURLConnectionのを使ってAndroidデバイスからサーバーに接続したい場合は、以下のコードに従ってください。
private static JSONObject get(Context ctx, String sUrl) {
HttpURLConnection connection = null;
try {
URL url = new URL(sUrl);
connection = (HttpURLConnection) url.openConnection();
connection.setRequestProperty("Content-Type", "application/json");
connection.setRequestProperty("Accept", "application/json");
connection.setRequestProperty("Authorization",
"Basic " + encodedAuthentication);
connection.setRequestProperty("Accept-Charset", "utf-8,*");
Log.d("Get-Request", url.toString());
try {
BufferedReader bufferedReader = new BufferedReader(
new InputStreamReader(connection.getInputStream()));
StringBuilder stringBuilder = new StringBuilder();
String line;
while ((line = bufferedReader.readLine()) != null) {
stringBuilder.append(line).append("\n");
}
bufferedReader.close();
Log.d("Get-Response", stringBuilder.toString());
return new JSONObject(stringBuilder.toString());
} finally {
connection.disconnect();
}
} catch (Exception e) {
Log.e("ERROR", e.getMessage(), e);
return null;
}
}
プライベート静的な文字列buildSanitizedRequest(文字列のURL、 地図mapOfStrings){
Uri.Builder uriBuilder = new Uri.Builder();
uriBuilder.encodedPath(url);
if (mapOfStrings != null) {
for (Map.Entry<String, String> entry : mapOfStrings.entrySet()) {
Log.d("buildSanitizedRequest", "key: " + entry.getKey()
+ " value: " + entry.getValue());
uriBuilder.appendQueryParameter(entry.getKey(),
entry.getValue());
}
}
String uriString;
try {
uriString = uriBuilder.build().toString(); // May throw an
// UnsupportedOperationException
} catch (Exception e) {
Log.e("Exception", "Exception" + e);
}
return uriBuilder.build().toString();
}
とJSON一部を呼び出してからWebサーバへの接続方法」
public static JSONObject exampleGetMethod(Context ctx, String sUrl, String username, String password) throws JSONException, IOException {
Map<String, String> request = new HashMap<String, String>();
request.put("username", username);
request.put("password",password);
sUrl = sUrl + "yourApiName";
return get(ctx, buildSanitizedRequest(sUrl, request));
}
、のようになります。アプリケーション " - HTTPクライアントAPI(' HttpUrlConnection'、OkHttp、Volleyなど)を使用します。 「適切なユーザー名とパスワードが入力されている場合は、これらの資格情報もWebサーバーにアクセスします」 - WebサービスAPIを設定して、Webページで使用しているのと同じ資格情報を使用します。 HTTPクライアントAPIでこれらの資格情報を使用します。 – CommonsWare