在Activity中使用如下web请求

[java] view plaincopy
  1. String url = "http://maps.google.com/maps/api/directions/xml?origin=22.592700,113.969100" +
  2. "&destination=23.046604,113.397510&sensor=false&mode=walking";
  3. HttpGet get = new HttpGet(url);
  4. String strResult = "";
  5. try {
  6. HttpParams httpParameters = new BasicHttpParams();
  7. HttpConnectionParams.setConnectionTimeout(httpParameters, 6000);
  8. HttpClient httpClient = new DefaultHttpClient(httpParameters);
  9. HttpResponse httpResponse = null;
  10. httpResponse = httpClient.execute(get);
  11. if (httpResponse.getStatusLine().getStatusCode() == 200){
  12. strResult = EntityUtils.toString(httpResponse.getEntity());
  13. }
  14. } catch (Exception e) {
  15. e.printStackTrace();
  16. }

发现请求总是无法得到,在浏览器中尝试发现请求语句没有问题

DDMS报错为:android.os.NetworkOnMainThreadException

经查询发现原来Android3.0以上对网络请求做了更严格的限制,若要继续按照以前的方式继续使用网络请求,须做一些特别的声明。

解决办法:

在Activiey的OnCreate方法中添加以下代码

[java] view plaincopy
  1. StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectDiskReads().detectDiskWrites()
  2. .detectNetwork()   // or .detectAll() for all detectable problems
  3. .penaltyLog()
  4. .build());
  5. StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder().detectLeakedSqlLiteObjects().detectLeakedClosableObjects().penaltyLog().penaltyDeath().build());

转载于:https://www.cnblogs.com/yuedongwei/archive/2012/08/04/4145432.html

安卓3.0之后的网络访问问题相关推荐

  1. 今天升级Xcode 7.0 bata发现网络访问失败。

    今天升级Xcode 7.0 bata发现网络访问失败. 输出错误信息 The resource could not be loaded because the App Transport Securi ...

  2. Android 9.0/P(android p指安卓9.0版本) okhttp3网络请求出错

    已经在AndroidManifest.xml申请网络权限,在8.0以下的系统中网络访问正常,但是9.0中出现网络请求失败 Android 9.0的网络请求失败如下图: 出现这个错误的原因是:从Andr ...

  3. 安卓手机加密_从安卓1.0到现在的安卓10.0,开机密码都存放在了哪里?

    防止疫情蔓延,请大家坚守在家,努力涨"姿势" 小编于2009年毕业(注意是毕业不是肄业,本编经过了4年的大学深造,是有正规学历证明的!虽然之后从未拿出来向任何人证明过.),毕业后开 ...

  4. ubuntu下编译安卓7.0源码

    ubuntu下使用国内镜像下载安卓7.0源码 本文使用的环境如下: 1.Ubuntu系统:ubuntu-18.04.5-desktop-amd64 2.repo:谷歌开发的方便拉安卓源码的工具 3.p ...

  5. 还在期待安卓9.0吗?Android 10.0要来了

    目前,美国 Google公司的 AndroidP (安卓9.0),已经正式全面推出有几个多月了.众多手机品牌厂商也都在积极的进行更新适配 Android 9.0 系统(修改UI界面也算是二次开发,嗯) ...

  6. 技巧分享:我的VM黑群晖安装及独特网络访问方案

    首发:https://post.smzdm.com/p/a0780qv0/ 前言 本来手上有一台旧笔记本(Lenovo U41-70),是16年初上学时候买的,配置一般(4G+i5-5200u+HD5 ...

  7. 解决安卓Android7.0兼容问题

    解决安卓Android7.0兼容问题(兼容Android6.0到Android9.0) 当你处于Android7.0环境下开发项目快收尾完了的时候进入测试环境Android9.0发生错误 是不是特别郁 ...

  8. 华为手机连按3次Android版本,向日葵Android客户端保持在线设置(华为手机安卓6.0篇)...

    前言: 部分用户在通过向日葵远控安卓客户端时,遇到连接失败提示客户端不在线的问题.下面就由小编来给大家讲解下,华为手机如何设置向日葵客户端保持在线. 准备: 演示设备:华为Mate7 系统版本:EMU ...

  9. 苹果X可以升级5G吗_安卓10.0来了!支持5G和APP降级,你的手机可以升级吗?

    前段时间得到谷歌公司的官方消息,谷歌将于今年的5月7日召开新一届的I/O 19大会,届时新一代Android系统将和大家见面.新一代的Android系统也就是Android Q,其版本号也将是Andr ...

最新文章

  1. jQuery使用手册
  2. 在linux中安装rpm包
  3. 《程序设计与数据结构》第四周学习总结
  4. xyz后缀的网站_.XYZ五岁了
  5. 04.卷积神经网络 W1.卷积神经网络(作业:手动/TensorFlow 实现卷积神经网络)
  6. asterisk概述和代码分析
  7. 最简单的CSocket通信流程
  8. eMMC基础技术2:eMMC概述
  9. 人工智能python实战代码_人工智能------基于Python实战注疏
  10. windows默认看图工具不见了
  11. 【高仿微信系列】02、消息列表ListView滑动删除
  12. SpringBoot项目目录结构(工程结构)
  13. 用SNMP协议实现系统监控
  14. Snapman设计中的思考
  15. 北斗ATGM332D定位 gps驱动
  16. pandas.pivot_table详解
  17. 微信小程序wxml和wxss样式
  18. 程序员用学位证吗_如何成为没有学位的程序员?
  19. 超详细:前端 2019 学习路线(B站视频)
  20. 服装办理软件的数据预备过程

热门文章

  1. python2添加pip,无法在python2.6中使用PIP更新/添加任何包
  2. gpio stm8 管脚 配置工具_STM8S 外设模块的GPIO引脚应该如何配置
  3. java 线程安全Long_【Java】线程安全之原子性Atomic(AtomicInteger|LongAdder|AtomicLong)
  4. python画图turtle小人_python海龟绘图怎么增加每次画圆的半径|海龟python做图教程...
  5. Android数据存储汇总
  6. 浅谈长尾理论--《Makers》读后感
  7. linux下qemu共享文件夹,QEMU Windows来宾和Linux主机之间的共享文件夹
  8. tp5 linux定时,TP5 用cron实现linux定时任务
  9. python导入自定义函数_python怎么导入自定义函数
  10. js 数组 改变长度_使用JS实现链表(1)——单链表