Mvp

 創建接口

package com.exam.mvp.core;

import com.exam.mvp.bean.User;
import com.exam.mvp.bean.User2;

public interface BaseLogin {
    void loginSuccess(User user);
    void loginError(String msg);
    void registerSuccess(User2 user);
    void registerError(User2 user);
}
package com.exam.mvp.presenter;

import android.os.AsyncTask;
import android.util.Log;
import com.exam.mvp.bean.DataBin;
import com.exam.mvp.core.BaseData;
import com.exam.mvp.model.Utils;
import com.exam.mvp.bean.User;
import com.exam.mvp.bean.User2;
import com.exam.mvp.core.BaseLogin;
import com.google.gson.Gson;

public class MyPresenter {
    private BaseLogin baseLogin;
    private BaseData baseData;
    public void bindBaseLogin(BaseLogin baseLogin){
        this.baseLogin = baseLogin;
    }
    public void bindBaseData(BaseData baseData){
        this.baseData = baseData;
    }
    public void qingqiu(String name,String pass){
        new MyAsyncTask().execute(name,pass);
    }
    public void reg(String name,String pass){
        new MyAsyncTaskReg().execute(name,pass);
    }
    public void getdata(String basurl){
        new MyAsyncTaskData().execute(basurl);
    }

    class  MyAsyncTask extends AsyncTask<String,Void,String> {
        @Override
        protected String doInBackground(String... strings) {
            String name = Utils.getName(strings[0], strings[1]);
            return name;
        }

        @Override
        protected void onPostExecute(String s) {
            super.onPostExecute(s);
            Gson gson = new Gson();
            User user = gson.fromJson(s, User.class);
            String code = user.getCode();
            int i = Integer.parseInt(code);
            if (i==0){
               // Toast.makeText(MainActivity.this,user.getMsg(),Toast.LENGTH_SHORT).show();
                baseLogin.loginSuccess(user);
                Log.e("-------",user.getMsg());
            }else {
               // Toast.makeText(MainActivity.this,user.getMsg(),Toast.LENGTH_SHORT).show();
                Log.e("-------",user.getMsg());
                baseLogin.loginError(user.getMsg());
            }
        }
    }
    class  MyAsyncTaskReg extends AsyncTask<String,Void,String> {
        @Override
        protected String doInBackground(String... strings) {
            String name = Utils.getRegister(strings[0], strings[1]);
            return name;
        }
        @Override
        protected void onPostExecute(String s) {
            super.onPostExecute(s);
            Gson gson = new Gson();
            User2 user = gson.fromJson(s, User2.class);
            String code = user.getCode();
            int i = Integer.parseInt(code);
            if (i==0){
                // Toast.makeText(MainActivity.this,user.getMsg(),Toast.LENGTH_SHORT).show();
                baseLogin.registerSuccess(user);
                Log.e("-------",user.getMsg());
            }else {
                // Toast.makeText(MainActivity.this,user.getMsg(),Toast.LENGTH_SHORT).show();
                Log.e("-------",user.getMsg());
                baseLogin.registerError(user);
            }
        }
    }
    class  MyAsyncTaskData extends AsyncTask<String,Void,String> {
        @Override
        protected String doInBackground(String... strings) {
            String s = Utils.getString(strings[0]);
            return s;
        }
        @Override
        protected void onPostExecute(String s) {
            super.onPostExecute(s);
            Gson gson = new Gson();
            DataBin dataBin = gson.fromJson(s, DataBin.class);
            Log.e("----------",dataBin.getMsg());
            baseData.dataBase(dataBin);
        }
    }

}

 

 

package com.exam.mvp.model;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class Utils {
    public static String getString(String baseurl){

        try {
            URL url = new URL(baseurl);
            HttpURLConnection httpURLConnection =  (HttpURLConnection)url.openConnection();
            int code = httpURLConnection.getResponseCode();
            if(code==200){
                InputStream inputStream = httpURLConnection.getInputStream();
                BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
                String temp = "";
                StringBuilder builder = new StringBuilder();
                while ((temp = reader.readLine())!= null){
                    builder.append(temp);
                }
                return builder.toString();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "";
    }
    public static String getName(String name,String pass){
        String Strurl = "http://www.zhaoapi.cn/user/login?mobile="+name+"&password="+pass;
        try {
            URL url = new URL(Strurl);
            HttpURLConnection httpURLConnection =  (HttpURLConnection)url.openConnection();
            int code = httpURLConnection.getResponseCode();
            if(code==200){
                InputStream inputStream = httpURLConnection.getInputStream();
                BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
                String temp = "";
                StringBuilder builder = new StringBuilder();
                while ((temp = reader.readLine())!= null){
                    builder.append(temp);
                }
                return builder.toString();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "";
    }
    public static String getRegister(String name,String pass){

        String Strurl = "http://www.zhaoapi.cn/user/reg?mobile="+name+"&password="+pass;
        try {
            URL url = new URL(Strurl);
            HttpURLConnection httpURLConnection =  (HttpURLConnection)url.openConnection();
            int code = httpURLConnection.getResponseCode();
            if(code==200){
                InputStream inputStream = httpURLConnection.getInputStream();
                BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
                String temp = "";
                StringBuilder builder = new StringBuilder();
                while ((temp = reader.readLine())!= null){
                    builder.append(temp);
                }
                return builder.toString();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "";
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章