OkHttpの基本的な使い方

4940 ワード

public class MainActivity extends AppCompatActivity {

    private TextView tv;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tv = (TextView) findViewById(R.id.tv);
    }

    public void doGet(View view) {

        //1.   okHttpClient
        OkHttpClient okHttpClient = new OkHttpClient();
        //2.  request
        Request.Builder builder = new Request.Builder();
        Request request = builder.get().url("http://www.imooc.com/").build(); //Get  
        //3. request   Call
        Call call = okHttpClient.newCall(request);
        //  call.execute();

        //4.  call

        //    
        call.enqueue(new Callback() {
            @Override
            public void onFailure(Request request, IOException e) {

            }

            /**
             *       
             * @param response
             * @throws IOException
             */
            @Override
            public void onResponse(Response response) throws IOException {

                final String string = response.body().string();
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                       // Toast.makeText(MainActivity.this, string, Toast.LENGTH_SHORT).show();
                    tv.setText(string);
                    }
                });
            }
        });


    }
}