安卓求解~

============问题描述============

public class MainActivity extends Activity {

	private static final String LOG_TAG = "IP Test";

	private EditText chattxt;

	private TextView chattxt2;

	private Button chatok;

	@Override

	public void onCreate(Bundle savedInstanceState) {

		super.onCreate(savedInstanceState);

		setContentView(R.layout.activity_main);

		findviews();

		setonclick();

		chattxt2.setText(getLocalIpAddressV4());

	}

	public void findviews() {

//		chattxt = (EditText) this.findViewById(R.id.chattxt);

		chattxt2 = (TextView) this.findViewById(R.id.chattxt2);

		chatok = (Button) this.findViewById(R.id.chatOk);

	}

	private void setonclick() {

		chatok.setOnClickListener(new View.OnClickListener() {

			@Override

			public void onClick(View v) {

				try {

					connecttoserver("I‘m a client!");

//					connecttoserver(chattxt.getText().toString());

				} catch (UnknownHostException e) {

					// TODO Auto-generated catch block

					e.printStackTrace();

				} catch (IOException e) {

					// TODO Auto-generated catch block

					e.printStackTrace();

				}

			}

		});

	}

	public void connecttoserver(String socketData) throws UnknownHostException,

			IOException {

		Socket socket = RequestSocket("10.13.33.136", 5000);// 程序一打开执行到这里就停止运行了,不知道为什么?手机连的是wifi,地址是10.24.28.139,网关10.24.16.1,电脑ip是10.13.33.136,网关是10.13.33.1,所以这里感觉应该是是不在一个导致的,但是为啥手机能打开我本机的网站,地址为:http://10.13.33.136:8080/phnt ps:网络学的不好~T_T

//		Socket socket = new Socket("10.13.33.136", 5000);

//		SendMsg(socket, socketData);

//		String txt = ReceiveMsg(socket);

//		this.chattxt2.setText(txt);

	}

	private Socket RequestSocket(String host, int port)

			throws UnknownHostException, IOException {

		Socket socket = new Socket(host, port);

		return socket;

	}

	private void SendMsg(Socket socket, String msg) throws IOException {

		BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(

				socket.getOutputStream()));

		writer.write(msg.replace("\n", " ") + "\n");

		writer.flush();

	}

	private String ReceiveMsg(Socket socket) throws IOException {

		BufferedReader reader = new BufferedReader(new InputStreamReader(

				socket.getInputStream()));

		String txt = reader.readLine();

		return txt;

	}

============解决方案1============

网络请求写线程里

============解决方案2============

android4.0以后的版本,不允许在UI线程中进行网络操作,网络操作应放子线程里,或AsyncTask中执行。

============解决方案3============

引用 6 楼 lionfresh 的回复:

android4.0以后的版本,不允许在UI线程中进行网络操作,网络操作应放子线程里,或AsyncTask中执行。

顶~

============解决方案4============

log里有提示不让在主线程访问网络!

============解决方案5============

new Thread(new Runnable(){

public void run() {

connecttoserver("I‘m a client!");

}

}).start();

将这段代码放到你的onclick方法里面~

时间: 2024-10-28 13:11:28

安卓求解~的相关文章

解决安卓手机键盘弹出时会把背景或百分比定位的布局压缩的问题

做移动端页面时经常遇到以下案例,在有背景的页面上写表单,而且底部为了适应不同手机还得运用绝对定位,因为通常是把容器高度设为了100%,这时在安卓手机上弹窗软键盘时就会把背景图片及其他东西挤压上去,解决方法如下: 在css样式中把大容器定义为fixed布局 .wrap{ position:fixed;left:0;top:0; } 在js中强制把页面的高度覆给他,就相当于自动撑开 var x =document.body.clientWidth; //查询设备的宽度 var y =document

对安卓未来的看法

Android在初期的时候,完全没有苹果好,甚至被苹果各种秒杀,但是反观现在呢,安卓的发展速度可以说是井喷式发展,慢慢的取代苹果系统,成为市场份额最大的系统,影响力越来越大.以前的安卓系统,之所以被苹果影响而无所闻,因为有很大的缺点不足,系统用半个月一个月就会很卡,使用体验不强,就失去了客户流量.但是现在Andoird可自由的刷机和改自己喜欢的UI,各种美化,达到自己喜欢的效果为止,其系统无一例外的非常的成功.但正是因为开源,所以安卓系统的手机安全性能不高,被入侵的风险较大,这也是将来慢慢改进的

《未来的夏娃》观后对安卓未来的看法

看了<未来的夏娃>就知道其实这本书和安卓系统没多少关系.只是其中的女主人公也叫"安卓". 我用了几个手机,系统都是安卓的,对比了一下苹果手机.感觉速度没那么快些,应该说两种系统都有优缺点吧. 本人虽然对安卓不是很了解,但是对Java还是知道一点的,这是一种面对对象的语言. 它的jdk使其有跨平台性的优势,这就促成了它的兼容力,使之在这个网络横行的时代具有更强的客源优势.特别是移动客户端,现在几乎是人手一部手机,说明移动系统具有强大的潜力,而且安卓系统的开源性,使之更加大众化

ionic 打包安卓包

一.配置环境: 先按照之前的文章,配置好环境需要: 二.安装 1. 这里前提是 需要安装  node (地址: http://nodejs.cn/download/) 命令: node -v   //返回版本号 查看自己是否安装过node,如果没有安装,请访问上面地址 进行安装: 2. 使用npm安装Cordova和 ionic npm install -g ionic cordova 如果长时间没有安装成功,则使用 cnpm 淘宝镜像进行安装: 首先安装 cnpm : npm install

安卓前景分析

作为现阶段手机市场的两大操作系统之一,iOS作为现在手机操作系统的高端代表,有着其手感优益流畅的巨大优势,并且有着专门的应用平台,有着自身独特的发展手段.作为竞争对手的安卓,则有一种百家争鸣的感觉,没有绝对的通知力,市场都是靠自己对安卓平台的理解,开发与应用来争取的.正所谓说,是骡子是马拉出来遛一遛就知道了.这里是有能力者寻觅成功的战场,是战场就不会没有硝烟,ios等平台可以说不是安卓的最大对手,最大的对手往往是同行业的安卓手机,在这种安卓机百花齐放的情况,选择的权利就掌握在消费者的手中,只有更

安卓未来发展前景

众所周知,安卓之所以能迅速占领80%的手机市场,很大一部分原因是因为:开源. 有人曾这样做比喻:开源就好比公开一栋房子的结构图纸,有了图纸的人可以拿这份图纸建造一栋一模一样的房子,也可以叫懂行的人帮你优化这原来的设计造一栋新版本的房子.没有开源就好像没有结构图你要仿造一栋房子只能仿造表面相似,结构性能可能相差很远,可能根本经不住用户多堆一点东西就变形垮塌了. 而我以为,开源是让开发者站在巨人的肩膀上工作,开发者不必将更多的时间花在"画图纸"上,相反可以将精力放在如何优化"建筑

对安卓未来前景的看法

在说安卓之前,先说说自己对以前的塞班的感受吧,个人对塞班记忆是当时的一个诺基亚的按键直板机,记得当时只要是从应用商店下载的游戏,都是运行的非常流畅,就是那种你可以同时运行几个程序没感觉,qq挂到手机没电,但是游戏都是很少用正版的都是在各个网站上下载破解版的,然后就有那种教程可以自己破解游戏,后来过了一段时间诺基亚出了一款5230的手机,当时就是觉得这个怎么这么赞,游戏还有重力感应的.然后就到了一个智能机爆炸的时代,安卓.塞班.ios.Windows五花八门的,对于一个特别爱玩游戏的人来说,系统怎

Eclipse+ADT+Android SDK 搭建安卓开发环境

要求 必备知识 windows 7 基本操作. 运行环境 windows 7 下载地址 环境下载 最近开接触Android(安卓)嵌入式开发,首要问题是搭建Andoid开发环境,由于本人用的是windows7的笔记本,也就只能到Windows中搭建Android 开发环境了! 就搭建环境都花了比较长的时间, 在各种版本之间折腾了比较久的时间, 装好后SDK包更新又是一个比较大的麻烦(天朝的网络大家懂的--).下面把我的安装过程和经验分享个大家!! 安装JDK 这里可以参考我之前写的一篇关于安装J

Kosaraju算法解析: 求解图的强连通分量

1. 定义 连通分量:在无向图中,即为连通子图. 上图中,总共有四个连通分量.顶点A.B.C.D构成了一个连通分量,顶点E构成了一个连通分量,顶点F,G和H,I分别构成了两个连通分量. 强连通分量:有向图中,尽可能多的若干顶点组成的子图中,这些顶点都是相互可到达的,则这些顶点成为一个强连通分量. 上图中有三个强连通分量,分别是a.b.e以及f.g和c.d.h. 2. 连通分量的求解方法 对于一个无向图的连通分量,从连通分量的任意一个顶点开始,进行一次DFS,一定能遍历这个连通分量的所有顶点.所以