ANDROID笔记:基于handle的异步请求网络数据的一种方法_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > ANDROID笔记:基于handle的异步请求网络数据的一种方法

ANDROID笔记:基于handle的异步请求网络数据的一种方法

 2013/12/6 18:26:18  skyko  博客园  我要评论(0)
  • 摘要:Control.javapublicvoidlogin(finalHandlerhandler,finalStringname,finalStringpass){newThread(newRunnable(){@Overridepublicvoidrun(){StringurlString=ACTIONURL+"username="+name+"&password="+pass;//得到网络返回数据Stringresult=newHTTPService().sendGet
  • 标签:笔记 android 方法 Android笔记 数据 网络 异步

Control.java

    public void login(final Handler handler, final String name,
            final String pass) {
        new Thread(new Runnable() {
            @Override
            public void run() {
                String urlString = ACTIONURL + "username=" + name
                        + "&password=" + pass;
                // 得到网络返回数据
                String result = new HTTPService().sendGet(urlString);
                if (result != null) {
                    // 解析JSON
                    try {
                        JSONObject jsonObject = new JSONObject(result);
                        //返回数据                        
                        Message message = new Message();
                        message.obj = jsonObject.getInt("StateCode");
                        handler.sendMessage(message);
                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                }
            }
        }).start();
    }

view层调用方法:

new Control().login(new Handler() {
            @Override
            public void handleMessage(Message msg) {
                super.handleMessage(msg);
         //dosomething } }, nameView.getText().toString(), pwdView.getText().toString());

P.S:通过在view中实现handle类并将handle引用传递给Control层,使得View和Control可以进行异步交互.

发表评论
用户名: 匿名