android练习:使用get方法发送请求

今天想写一个有关查询的demo,于是就学习了一下有关android访问网络数据方面的内容。在android中很多情况下需要使用服务器上的资源就要使用http协议进行访问。我们都知道http协议访问互联网有两种方式,一种是get,第二种是post方法,这里我只用到了get方法,传给服务器一个值,然后返回参数。

这里是我写的代码。

首先需要在配置文件中添加联网权限,这个千万记住,我在学习初期老是忘了这部工作。
<uses-permission Android:name="android.permission.INTERNET"></uses-permission>
下面是主要代码
 protected void onCreate(Bundle savedInstanceState)
    {
        
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        mNameText = (EditText) findViewById(R.id.name);
        mAgeText = (EditText) findViewById(R.id.age);
        textView_Get = (TextView) findViewById(R.id.TextView_Get);
        button1 = (Button)findViewById(R.id.button1);
        
        
        button1.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {


new Thread(new Runnable() {

@Override
public void run() {


String id = mNameText.getText().toString();
           String name = mAgeText.getText().toString();
       
httpUrl =  baseURL + "?method=fetch&type=TIMES&student_id=" + id + "&student_name=" + name;
         
HttpGet httpGet = new HttpGet(httpUrl);  
                try {
httpResponse = new DefaultHttpClient().execute(httpGet);
if (httpResponse.getStatusLine().getStatusCode() == 200)  
                {  
                      
                    result = EntityUtils.toString(httpResponse  
                            .getEntity());  
                   
                    Log.e("info", result);
               
                    runOnUiThread(new Runnable() {

@Override
public void run() {

textView_Get.setText(result.replaceAll("times", "次数").replaceAll("query", "查询结果"));


//
//
// }
}
});
                }  
} catch (ClientProtocolException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}  
}
}).start();
 
                 
}
});
    }
    @Override  
    public boolean onKeyDown(int keyCode, KeyEvent event)  
    {  
        if (keyCode == KeyEvent.KEYCODE_BACK )  
        {  
            // 创建退出对话框  
            AlertDialog isExit = new AlertDialog.Builder(this).create();  
            // 设置对话框标题  
            isExit.setTitle("系统提示");  
            // 设置对话框消息  
            isExit.setMessage("确定要退出吗");  
            // 添加选择按钮并注册监听  
            isExit.setButton("确定", listener);  
            isExit.setButton2("取消", listener);  
            // 显示对话框  
            isExit.show();  
  
        }  
          
        return false;  
          
    }  
    /**监听对话框里面的button点击事件*/  
    DialogInterface.OnClickListener listener = new DialogInterface.OnClickListener()  
    {  
        public void onClick(DialogInterface dialog, int which)  
        {  
            switch (which)  
            {  
            case AlertDialog.BUTTON_POSITIVE:// "确认"按钮退出程序  
                finish();  
                break;  
            case AlertDialog.BUTTON_NEGATIVE:// "取消"第二个按钮取消对话框  
                break;  
            default:  
                break;  
            }  
        }  
    };    



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值