私はAndroidが初めてです。私は実際にはスタートアップ企業で働く研修生なので、自分で物事を学ばなければなりません。チームリーダーから、RESTアプリからAndroid APIを呼び出すアプリを作成するように要求されました。彼は、1つのapi応答からステータス値を読み取り、その値を新しいアクティビティで表示するように私に求めました。私は実際に私が何をすべきかわからない。これまで、アクティビティ間で値を渡すなどの基本的なことだけを学びました。良いチュートリアルを提案するか、最初からアイデアを教えてください。
私のブログにアクセスしてください: kotlineでのレトロフィット
以下のリンクはすべてを段階的に説明しています。
http://loopj.com/Android-async-http/
サンプルアプリは次のとおりです。
クラスを作成します:
public class HttpUtils {
private static final String BASE_URL = "http://api.Twitter.com/1/";
private static AsyncHttpClient client = new AsyncHttpClient();
public static void get(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {
client.get(getAbsoluteUrl(url), params, responseHandler);
}
public static void post(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {
client.post(getAbsoluteUrl(url), params, responseHandler);
}
public static void getByUrl(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {
client.get(url, params, responseHandler);
}
public static void postByUrl(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {
client.post(url, params, responseHandler);
}
private static String getAbsoluteUrl(String relativeUrl) {
return BASE_URL + relativeUrl;
}
}
呼び出し方法:
RequestParams rp = new RequestParams();
rp.add("username", "aaa"); rp.add("password", "aaa@123");
HttpUtils.post(AppConstant.URL_FEED, rp, new JsonHttpResponseHandler() {
@Override
public void onSuccess(int statusCode, Header[] headers, JSONObject response) {
// If the response is JSONObject instead of expected JSONArray
Log.d("asd", "---------------- this is response : " + response);
try {
JSONObject serverResp = new JSONObject(response.toString());
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public void onSuccess(int statusCode, Header[] headers, JSONArray timeline) {
// Pull out the first event on the public timeline
}
});
マニフェストファイルでインターネットアクセス許可を付与してください。
<uses-permission Android:name="Android.permission.INTERNET" />
必要に応じて、build.gradleファイルにcompile 'com.loopj.Android:android-async-http:1.4.9'
にHeader[]
およびJSONObject
にcompile 'org.json:json:20160212'
を追加できます。