当没有互联网时,AsyncHttpPost强制关闭

时间:2017-08-25 08:40:27

标签: android

我在我的应用程序中使用片段,当没有互联网应用程序强行关闭时。我不知道我能做什么。请帮我 这段代码很完美,但是当互联网丢失时,应用程序会出现错误并强行关闭 我使用方法通过ping检查互联网,但它使我的应用程序太慢

public static void get_detail(final int pages){

    MainActivity.logo11.setImageResource(R.drawable.loading);

    AsyncHttpPost post = new AsyncHttpPost(
      "domain"
    );

    post.setTimeout(30000);

    MultipartFormDataBody body = new MultipartFormDataBody();

    body.addStringPart("City",MainActivity.sp.getString("City",null));
    body.addStringPart("Cate","all");
    body.addStringPart("Page", String.valueOf(pages));

    post.setBody(body);

    AsyncHttpClient.getDefaultInstance().executeString(post, new AsyncHttpClient.StringCallback() {
        @Override
        public void onCompleted(final Exception e, AsyncHttpResponse source, final String result) {

            if(e != null){
                MainActivity.activity.runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        Toast.makeText(MainActivity.activity,"network error",Toast.LENGTH_LONG).show();
                        refresh.setRefreshing(false);
                        e.printStackTrace();
                    }
                });
            }

            if(!result.equals("")){
                MainActivity.activity.runOnUiThread(new Runnable() {
                    @Override
                    public void run() {

                        MainActivity.logo11.setImageResource(R.drawable.logo);

                        if(page==0){
                            hash_all.clear();
                        }
                        items.clone();
                        try {
                            JSONArray jsonArray = new JSONArray(result);
                            for (int i = 0 ;i<jsonArray.length();i++){
                                JSONObject object = jsonArray.getJSONObject(i);
                                HashMap<String , Object> hash_add = new HashMap<String, Object>();

                                hash_add.put("ID",object.getString("ID"));
                                hash_add.put("Username",object.getString("Username"));
                                hash_add.put("Title",object.getString("Title"));
                                hash_add.put("Descript",object.getString("Descript"));

                                hash_all.add(hash_add);
                                items = new String[hash_all.size()];
                            }
                            ad.notifyDataSetChanged();
                            refresh.setRefreshing(false);
                        }catch (Exception e){
                            e.printStackTrace();
                        }
                    }
                });
            }else {
                Toast.makeText(MainActivity.activity,"error",Toast.LENGTH_LONG).show();
            }
        }
    });
}

0 个答案:

没有答案