Android如何发送HTTP请求

【踩坑】在原生安卓中发送Http请求 模拟器默认把127.0.0.1和localhost当做本身了,在模拟器上可以用10.0.2.2代替127.0.0.1和localhost,另外如果是在局域网环境可以用 192.168.0.x或者192.168.1.x (根据具体配置)连接本机。在application标签之前添加配置。在application标签中添加配置。在res的xml目录下新建配置文件。使用原生Java中的。... 阅读详情

Android SDK提供HttpClient,和J2EE中的接口非常相似。最常用的就是HTTP GET和HTTP POST。

HTTP GET方式

public class HttpGetDemo extends Activity{  
    @Override 
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.activity_main);  
                 
        BufferedReader in = null; 
        try{  
            //【Step 1】创建一个HttpClient的对象(或使用已有的)
            HttpClient client = new DefaultHttpClient(); 
            //【Step 2】实例化一个HTTP GET或者HTTP POST,本例是HTTP GET 
            HttpGet request = new HttpGet("url?param1=value1"); 
            //【Step 3】设置HTTP参数,本例子是最简单地打开某个网址的HTTP GET,无需设置 
           //【Step 4】通过HttpClient来执行HTTP call(发出HTTP请求)  
            HttpResponse response = client.execute(request); 
            //【Step 5】处理HTTP响应,本例将整个响应的内容(HTTP 200消息的body)都在String中。 
            in = new BufferedReader( 
                    new InputStreamReader( 
                            response.getEntity().getContent())); 
            StringBuffer buff = new StringBuffer(""); 
            String line = ""; 
            String NL = System.getProperty("line.separator");  //实际上就是“\n”,可自动适配系统的换行符。 
            while((line = in.readLine()) != null ){ 
                buff.append(line + NL); 
            } 
            in.close();  
            Log.d("PRO",buff.toString());  
        }catch(Exception e){ 
            e.printStackTrace(); 
            Log.d("PRO",e.toString()); 
        }finally{ 
            if(in != null){ 
                try{ 
                    in.close(); //关闭BufferedReader,同时也关闭了底层的HTTP connection
                }catch(Exception e){ 
                    e.printStackTrace();  
                    Log.d("PRO","error in finally:\n" + e.toString()); 
                } 
            } 
        }         
    }  
    
}


HTTP POST方式

BufferedReader in = null; 
try{ 
    //【Step 1】创建一个HttpClient的对象(或使用已有的) 
    HttpClient client = new DefaultHttpClient(); 
    //【Step 2】实例化一个HTTP GET或者HTTP POST,本例是HTTP POST 
    HttpPost request = new HttpPost("url"); 
     
    //【Step 3】设置HTTP参数,本例根据抓包的内容填写,这是体力活,在完整HTTP服务的笔记后,会提供小例子下载。对于HTTP Post,需要传递键值对信息,从上面的转包可以看到,这部分不是作为request URI,而是作为HTML Form URL Encoded,为此我们需要用户元素为NameValuePair格式的list来存储这些信息,并封装在UrlEncodedFormEntiry对象中。通过setEntity()加入到请求对象中。
    List<NameValuePair> postParameters = new ArrayList<NameValuePair>();
    postParameters.add(new BasicNameValuePair("paraml","value1"));
    postParameters.add(new BasicNameValuePair("param2","value2"));      
    UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(postParameters);
    request.setEntity(formEntity); 
    
    //【Step 4】通过HttpClient来执行HTTP call(发出HTTP请求)
    HttpResponse response =client.execute(request); 
    
    //【Step 5】处理HTTP响应,本例将整个响应的内容(HTTP 200消息的body)都在String中。 
    in = new BufferedReader( 
            new InputStreamReader( 
                    response.getEntity().getContent())); 
    
    StringBuffer buff = new StringBuffer(""); 
    String line = ""; 
    String NL = System.getProperty("line.separator"); 
    while((line = in.readLine())!= null){ 
        buff.append(line + NL); 
    } 
    showInfo(buff.toString());     
}catch(Exception e){ 
    e.printStackTrace(); 
    showInfo(e.toString()); 
}finally{ 
    if(in != null){ 
        try{ 
            showInfo("== process in.colse() =="); 
            in.close(); 
        }catch(Exception e){ 
            e.printStackTrace(); 
            showInfo(e.toString()); 
        } 
    }    
}


从牛顿冷却定律到热传导方程:一维热传导方程的物理直觉与数学推导 本文从牛顿冷却定律出发,结合傅里叶热传导定律和能量守恒原理,系统推导了一维热传导方程的数学形式。通过微元分析和物理直觉,揭示了温度随时间变化与空间二阶导数之间的关系,并阐释了热扩散率α的物理意义。文章还探讨了方程的边界条件、数值解法及其在材料科学和工程中的应用,为理解热量传递提供了清晰的物理图像和数学框架。 阅读详情

相关推荐

Elsevier投稿避坑指南:Ocean Engineering论文格式要求详解(附Checklist模板)

本文详细解析Elsevier旗下期刊Ocean Engineering的投稿格式要求与常见陷阱,提供实用的Checklist模板。涵盖文章类型确认、作者贡献声明、图表规范、数据声明等关键环节,帮助研究者高效通过格式审查。特别强调LaTeX排版细节、图表分辨率要求及现代伦理声明规范,助力海洋工程领域学者顺利投稿。

weixin_33734785的博客 1495

get请求添加header

之前没有学习java语言,因工作需要学习了之后觉得java语言比较复杂,远没有python简单,所幸接触不多,了解一下。 带header的get请求:

weixin_43929448的博客 5687

nCode:GlyphWorks案例教程一

nCode GlyphWorks案例一Comparing Frequency Content of Two Different Tests案例文件目标配置选择数据 Comparing Frequency Content of Two Different Tests 在本案例中,我们将比较来自两个不同测试的六个加速计通道的频率内容。将三轴加速度计放置在车辆的左前角和右前角,然后分别在两个不同的试验路面上行驶12分钟以上。 案例文件 此案例的文件(采用nCode DAC格式)位于nCode安装目录下的\demo

追月行的博客 1万+

Android上发送Http 的方式

在过去,Android 上发送 HTTP 请求一般有两种方式:HttpURLConnection 和 HttpClient,不过在 Android 6.0 系统中,HttpClient 被完全移除了,因此推荐使用 HttpURLConnection。

qq_43867812的博客 5252

ctx->cvdl->cuvidGetDecoderCaps(&ctx->caps8) failed -> CUDA_ERROR_DEINITIALIZED: driver shutting down

ffplay -vcodec h264_cuvid sample_720p-2.h264 [quantum6@freeswitch freeswitch]$ ffplay -vcodec h264_cuvid sample_720p-2.h264 ffplay version 4.3.1 Copyright (c) 2003-2020 the FFmpeg developers built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-44) .

柳鲲鹏 2406

Windows 11 安装 Maven:下载、安装、配置国内镜像、验证

本文详细介绍了在 Windows 11 系统中安装与配置 Apache Maven 的完整流程,包括 JDK 环境准备、Maven 下载解压、本地仓库路径设置、阿里云国内镜像加速配置、环境变量设置及安装验证。同时提供了常用 Maven 命令速查表,帮助开发者快速上手依赖管理与项目构建,提升开发效率。

寒水馨 · 轻量级技术文档 · hanshuixin.org 1505

android 开发中 发送http请求

android 开发中 发送http请求

bulucc的博客 1988

基于STM32、HAL库的ADE7880ACPZ-RL电能计量芯片驱动程序设计

@retval 状态 (ADE7880_OK或ADE7880_ERROR)* @retval 状态 (ADE7880_OK或ADE7880_ERROR)* @retval 状态 (ADE7880_OK或ADE7880_ERROR)* @retval 状态 (ADE7880_OK或ADE7880_ERROR)* @retval 状态 (ADE7880_OK或ADE7880_ERROR)PA6 (MISO) <--> SDO (SPI数据输出)PB0 (CS) <--> /CS (片选,低有效)

corlin6688的博客 668

Android开发,http网络请求网页基本操作

http网络请求基础操作 在安卓项目开发中,很多时候需要给客户端传送服务器提供的文字,图片,音频,视频,网页等,也需要将用户的操作反馈给服务器,这些就涉及了网络传输协议的知识。 http的常用简单请求方式为 GET和POST, 较为高级的可以传输大部分类型的数据,由Content-Type进行标记。 本文,介绍一个简单的,将百度网首页请求获取至客户端界面,本人也是个 萌新小白,如有错误,请指正,非常感谢。 url内容的获取一般由以下步骤: 1.实例化URL URL url = new URL("http:/

qq_41904106的博客 2891

C# Modbus通信从入门到精通(2)——Modbus RTU协议原理

本文详细的介绍了Modbus RTU协议的原理,由多年经验高级工程师实战总结而成,绝对干货!

qq_34059233的博客 6384

Android11车机系统海外项目资源包RRO方案优化

本文介绍了汽车设置应用如何通过Android RRO(运行时资源叠加)方案实现多车型差异化资源管理。针对不同车型(国内/海外、轿车/SUV)和配置(方向盘、轮毂等),采用产品变体(productFlavors)构建不同APK版本,并通过JSON配置文件动态启用对应资源包。系统根据车辆下线配置自动匹配适用的资源叠加包,解决了硬编码判断带来的维护问题。该方案实现了资源的高效复用,同时支持灵活配置多种车型组合,为汽车行业多车型共平台开发提供了可扩展的技术实现。

shusuanly的博客 469

Android与后端通信(Android向后端发送请求获取数据)

Constants.IP 是后端的IP 加上端口号,我写在Constans类中了,同一台电脑就是局域网地址。2、在子线程内想要在UI上显示内容或弹框提示,需要这么写。3、在build.gradle(Module)中添加。1、向后端发起请求,要new一个线程。4、在mainfest中添加网络权限。

Sunny不要停的博客 2958

43_AI短片实战第十六弹:AIGC补充特写镜头——首尾帧衔接与多图抽卡技巧

本文介绍了使用Templa AI平台生成"怪兽爬车"特写镜头并衔接"甩尾摔下"动作的完整流程。首先通过AI生成4张怪兽趴在车顶的特写画面,重点选择展示怪兽与车顶关系的构图(16:9比例)。然后将选定的首帧图与已有尾帧图输入AI,生成7秒左右的过渡视频,实现从"稳定趴车"到"开始摔落"的自然衔接。整个过程展示了单图抽卡策略、首尾帧选择标准,以及如何利用AI生成时间进行其他剪辑任务的并行处理方法。最终产出包括特写首帧图、过渡视频文件和更新后的剪辑项目。

Open 76

Android发送http请求

本文档为个人博客文档系统的备份版本、作者:小游、作者博客:点击访问 这里我使用第三方库:https://github.com/square/okhttp/ 引入方法:implementation("com.squareup.okhttp3:okhttp:4.4.0") 但是引入报错。。。 emm,研究了半天,国外找了好多都无法解决。 刚开始以为是项目的问题在最后才发现是我改了一下项目的文件。。。 太难了我,这个问题困扰了整整一上午。。。 最简单的使用方法: private void getDataA.

小游 986

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

android 发送http,在Android用Get方式发送HTTP请求

对自己的Android学习做个总结,方便以后查看。一、在Android用Get方式发送http请求,使用的是Java标准类,也比较简单。主要分以下几步:1.构造URLURL url = new URL(String path);2.设置连接httpURLConnection = (HttpURLConnection) url.openConnection();//超时时间httpURLConnec...

weixin_40001395的博客 2193

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Android C++系列:JNI中发送Http网络请求

libcurl是一个免费和易于使用的客户端URL传输库,支持DICT, FILE, FTP, FTPS, GOPHER, gopers, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET和TFTP。

轻口味的专栏 1765

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Android 发送http请求

发送http请求是比较好耗时的操作,所以要把他们放在线程里面(我是这么理解的) 现在android版本越来越高,都在用HttpURLConnection这种方式发送链接(舍弃了原来的HtypClient) 发送请求大致分为如下几步 1.创建一个连接 URL url = new URL("http://192.168.0.105/login/login"); 在这里要注意添加上http,否则可能会...

weixin_44102044的博客 6316

Android网络:发送http请求

一、用WebView来显示一个网页 当然是先要通过findViewById来实例化WebView的对象webview,然后就是调用几个方法 webview.getSetting().setJavaScriptEnable(ture);//让webview支持javascript脚本,当然通过调用不同的方法可以支持一些其他的脚本 webview.setWebViewClient(new Web

qq_20079785的博客 1310

android 4.0 http实例,Android-HTTP实例——使用GET方法、POST方法发送请求(安卓4.0以下版本)...

今天模仿着书上的例子,做了下使用Get、Post方法发送请求这个小项目。项目分为服务器端和客户端,整个程序是一个图书查询程序,运行效果图如下: -服务器端服务器采用的是Tomcat8,附上服务器端函数的百度网盘下载地址:http://pan.baidu.com/s/1pJ08oav下载下来将其整个放到 X:…Tomcat8\webapps 目录下。启动Tomcat8并打开浏览器,输入http://...

weixin_35468857的博客 290

Android中http的请求不能发送

android中提示http请求不能上网 在安卓的manifest.xml中加入android:usesCleartextTraffic=“true” android:usesCleartextTraffic="true" 搞定给自己记录一下 这个是针对高版本的安卓只能进行https不能http的解决方法 ...

weixin_43524928的博客 1088

android 发送http请求

Android发送http请求 (1)发送post请求 Java代码 Map<String,String>person=newHashMap<String,String>(); person.put("os_version",SystemHWUtil.formatArr(version,","));...

weixin_33873846的博客 99

android http发送xml请求参数,android http请求并解析返回的xml

String requestUrl = RequestUrlMng.getHost(context)+"/mservices/user/updateNickname.action?nickname="+nickname;HttpGet httpRequest = new HttpGet(requestUrl);try{HttpClient httpClient = new DefaultHttpC...

weixin_30184337的博客 381

[Android]通过JNI实现卸载自身App后台发送Http请求~

摘要: 使用JNI fork进程实现 监控自身App被卸载 首先这个功能仅供cankao 毕竟这个行为已经跟数字公司一样不人道了  可以使用linux exec命令跳转到浏览器的反馈页我使用的环境IDE:Android Studio 2.0gj:Android 4.4.2Android.mk LOCAL_PATH := (callmy−dir)include(call my-dir) i

六桥风月IT随笔 869

android post json格式,从Android发送JSON HTTP POST请求

我正在使用下面的代码发送http POST请求,该请求将对象发送到WCF服务。可以,但是如果我的WCF服务还需要其他参数怎么办?如何从Android客户端发送它们?这是我到目前为止编写的代码:StringBuilder sb = new StringBuilder();String http = "http://android.schoolportal.gr/Service.svc/SaveVal...

weixin_32866779的博客 592

Android 使用HttpURLConnection发送HTTP请求

在过去,Android上发送HTTP请求一般有两种方式,HttpURLConnection和HttpClient,不过由于HttpClient存在API数量过多,扩展困难等缺点,Android团队越来越不建议我们使用这种方式,终于在Android6.0系统中,HttpClient的功能被完全移除了,标志着比功能被正式弃用,现在官方建议使用的是HttpURLConnection的用法。 首先需要获取到

li1214477012的博客 377

android http通过post请求发送一个xml

今天,简单讲讲android如何在网络请求时通过post方式发送xml数据。其实也很简单,不过我之前对网络请求这一块不太熟悉,当需要做这个发送xml数据时,居然不知道怎么做。后来,在网上查找资料,最终是解决了问题。这里记录一下。一.通过HttpURLConnection发送xml数据因为原理很简单,直接举例子。其中发送的xml数据为:&lt;?xml version = “1.0” ?&gt; ...

谢岩的博客 5156
上一篇: 新浪微博API
下一篇: Android中两种设置全屏的方法
stone3gao3
博客等级 码龄13年 2粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值