Http的协议

----------------------------导入依赖-----------------------------

implementation 'com.google.code.gson:gson:2.2.4'
implementation 'com.google.guava:guava:16.0.1'

------------------------权限-----------------------

<uses-permission android:name="android.permission.WRITE_USER_DICTIONARY" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />

---------------------------这是Http,关于Http我是分开来写的首先这是第一步

public class HttpUtils {
    //单例模式
    private static final HttpUtils ourInstance = new HttpUtils();

    public static HttpUtils getInstance() {
        return ourInstance;
    }

    private HttpUtils() {
    }
     //定义一个方法
    public void getDatFromServer(String url, HttpCallback callback) {
        new LoadDataTask(callback).execute(url);
    }

    private class LoadDataTask extends AsyncTask<String, Void, String> {
        //接口回调
        private HttpCallback callback;

        public LoadDataTask(HttpCallback callback) {
            this.callback = callback;
        }
        //解析数据
        @Override
        protected String doInBackground(String... strings) {
            try {
                URL url = new URL(strings[0]);
                HttpURLConnection connection = (HttpURLConnection) url.openConnection();
                connection.setConnectTimeout(3000);
                connection.setReadTimeout(3000);
                if (connection.getResponseCode() == HttpURLConnection.HTTP_OK) {
                   return CharStreams.toString(new InputStreamReader(connection.getInputStream(), "UTF-8"));
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            return null;
        }

        @Override
        protected void onPostExecute(String s) {
            if (callback != null) {
                if (!TextUtils.isEmpty(s)) {
                    callback.onSuccess(s);
                } else {
                    callback.onError("没有请求到数据");
                }
            }
        }
    }
}

-----------------------接下来就是我定义的接口,比较简单

public interface HttpCallback {

    void onSuccess(String result);

    void onError(String errorMsg);

}

这是数据的返回请求

猜你喜欢

转载自blog.csdn.net/Mir_you/article/details/81974123