1. 程式人生 > >Android 模擬器測試遠端伺服器成功,但是到真機上測試一點反應沒有的解決辦法

Android 模擬器測試遠端伺服器成功,但是到真機上測試一點反應沒有的解決辦法

new Thread(){         @Override public void run() { // TODO Auto-generated method stub super.run(); //定義登入需要的引數名和引數值 String[] paramsName={"UserName","md5Password","DBName","Server"}; String[] paramsValue={loginName.getText().toString(),MD5.getMD5ofStr(loginPwd.getText().toString()),loginDatabase.getSelectedItem().toString(),loginServer.getSelectedItem().toString()}; //使用webservice請求登入,返回json字串資訊 String result=WebServiceUtil.getDataByParams(Commom.uri,paramsName,paramsValue); Message message=new Message(); Bundle bundle=new Bundle(); bundle.putString("result", result); message.setData(bundle); handler.sendMessage(message); } }.start(); handler=new Handler(){     @Override     public void handleMessage(Message msg) { // TODO Auto-generated method stub super.handleMessage(msg); resultString=msg.getData().getString("result"); Log.i("Thread()--resultString:", resultString); //定義解析json資訊後放入map中的key名,需要和返回的json中的key相同 String[] xkeys= new String[] { "UserID", "LoginName", "UserName"}; //呼叫JsonParse.JsonStrParse3方法解析json,並返回list ArrayList<HashMap<String, Object>> loginInfo=JsonParse.JsonStrParse3(resultString, xkeys); //如果返回的失敗的資訊,則ArrayList中沒有任何的元素,否則ArrayList中就是上面定義的xkeys對應的value資訊 if (loginInfo!=null&&loginInfo.size()!=0&&!loginInfo.get(0).toString().trim().equals("")) { //把登陸資訊儲存在Application裡面,只標註是否已經登陸 ((MyApplication)getApplication()).setUserId(loginInfo.get(0).get("UserID").toString()); ((MyApplication)getApplication()).setLoginName(loginInfo.get(0).get("LoginName").toString()); ((MyApplication)getApplication()).setUserName(loginInfo.get(0).get("UserName").toString()); //登入成功後,跳轉到住介面 startActivity(new Intent(LoginActivity.this,MainActivity.class)); }else { Toast.makeText(LoginActivity.this, "登入失敗", Toast.LENGTH_SHORT).show(); }     } };