Android Retrofit 学习与实践

不知怎么开头,直接上实践了,慢慢补充

在build.gradle中添加Retrofit添加依赖,例如:

    implementation 'com.squareup.retrofit2:retrofit:2.4.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
    implementation 'com.squareup.retrofit2:adapter-rxjava2:2.4.0'

    implementation 'com.squareup.okhttp3:logging-interceptor:3.9.1'
    implementation 'com.squareup.okhttp3:okhttp:3.10.0'

ApiWrapper.java

public class ApiWrapper extends ApiWrapperBase {
    protected ApiWrapper() {
        super();
        mService = mRetrofit.create(ApiService.class);
    }

    public static ApiWrapper newInstance() {
        return new ApiWrapper();
    }

    @Override
    public ApiService getService() {
        return (ApiService) mService;
    }


    @Override
    protected String getApiHost() {
        return "https://blog.csdn.net";
    }
}

ApiService.java

public interface ApiService {

    @GET("/jerechen/article/details/83722574")
    Call<ResponseBody> getResponse();

    @GET("/jerechen")
    Call<ResponseBody> getProfile();
}

MainActivity.java 

ApiService apiService = ApiWrapper.newInstance().getService();
        Call<ResponseBody> request = apiService.getProfile();
        request.enqueue(new RetrofitCallback<ResponseBody>() {
            @Override
            public void onCallSuccess(String responseData, String message) throws IOException, XmlPullParserException, JSONException {
                Log.d(TAG, "onResponse: " + responseData);
                // TODO handle responseData to display
                String textString = handleResponseData(responseData);
                mTextView.setText(textString);
            }

            @Override
            public void onCallFailed(String message) {
                Log.d(TAG, "onFailure: " + message);
            }
        });

完整代码请参考: https://github.com/JereChen11/Retrofit-master

猜你喜欢

转载自blog.csdn.net/jerechen/article/details/84845308