1 Star 0 Fork 0

cyper / AndroidNetworkTest

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

刚好在学习Android开发, 回答下这个问题测试一下我的学习成果

  1. Servlet的名字取得很奇葩,很少见用数字123做为servlet的名字的, 代码的可读性大打折扣.

  2. localhost指向的是手机本身或是模拟器本身,你的tomcat服务肯定不是部署在模拟器或手机上, 如果你是用的模拟器, 则必须把localhost改成10.0.2.2

  3. 当你的tomcat服务启动后,不要急于在手机上做测试, 你应该在浏览器上打开http://localhost:8080/HttpWebServerDemo1/123?name=cyper&age=20看看响应是否正常. 因为你的servlet中有中文,至少你得加上如下代码:

     response.addHeader("Content-Type","text/plain;charset=UTF-8");
  4. 修改后的servlet代码如下:

     String name = request.getParameter("name");
     String age = request.getParameter("age");
     response.addHeader("Content-Type","text/plain;charset=UTF-8");
     PrintWriter out = response.getWriter();
     out.println("使用Get方法发送请求,我的名字是" + name + "我的年龄是" + age);
  5. 从3.0开始,在UI线程中做network i/o是不允许的,参考so, 你必须使用new Thread + Handler或AsynTask, 否则会报android.os.NetworkOnMainThreadException

  6. 你必须在manifest文件中声明使用INTERNET的权限.

     <uses-permission android:name="android.permission.INTERNET" />

    否则会报java.net.SocketException: socket failed: EACCES (Permission denied)

  7. 完整代码见git osc

空文件

简介

android访问servlet测试. 展开 收起
Android
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Android
1
https://gitee.com/uniquejava/AndroidNetworkTest.git
git@gitee.com:uniquejava/AndroidNetworkTest.git
uniquejava
AndroidNetworkTest
AndroidNetworkTest
master

搜索帮助