package com.ruffian.android;
import org.json.JSONObject;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import com.ruffian.android.callback.ResponseCallback;
import com.ruffian.android.utils.HttpUtils;
@SuppressLint("HandlerLeak")
public class MainActivity extends Activity {
/**
* 模拟登录接口地址
* 百度https://www.baidu.com/
* 错误地址http://123.59.71.217:8080/tvgamer/index.do
*/
private static final String LOGIN_URL = "https://www.baidu.com/";
// 更新结果(UI)
private static final int UPDATE_RESULT = 1001;
private Button mLongin;// 登录按钮
private TextView mResult;// 登录结果
private String mResultText;// 返回结果
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mLongin = (Button) findViewById(R.id.login);
mResult = (TextView) findViewById(R.id.result);
mLongin.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
new HttpUtils().send(LOGIN_URL, new ResponseCallback() {
@Override
public void onSuccess(JSONObject responseInfo) {
// TODO Auto-generated method stub
// 这里操作成功的逻辑
mResultText = "访问接口成功,结果:" + responseInfo;
uiHandler.sendMessage(uiHandler.obtainMessage(
UPDATE_RESULT, mResultText));
}
@Override
public void onFailure(int errorCode, String msg) {
// TODO Auto-generated method stub
// 这里操作失败的逻辑
mResultText = "访问接口出错,错误代码:" + errorCode + ",错误详情:"
+ msg;
uiHandler.sendMessage(uiHandler.obtainMessage(
UPDATE_RESULT, mResultText));
}
});
}
});
}
Handler uiHandler = new Handler() {
public void handleMessage(android.os.Message msg) {
switch (msg.what) {
case UPDATE_RESULT:
String result = (String) msg.obj;
mResult.setText(result);
break;
}
};
};
}
运行结果图