作者joshnash (JoshNash)
看板AndroidDev
标题[问题] PHP传送资料到android问题
时间Tue Feb 7 01:00:54 2012
***文章有点长, 不好意思***
小弟现在在想办法写出
android程式可以connect到简单的网页
然後网页(php)可以回传字串给app上
因为是刚接触android&java
所以照着教学一步步作:
http://ppt.cc/6-ZY
不过由於还没建立database,
网页端我只简单的写了这样 (不知道这样可不可以让app接收到??)
<?php
$output="AAA";
print(json_encode($output));
?>
而剩下大致都一样
这是java档:
http://dl.dropbox.com/u/5362111/android_java.txt
还麻烦大家可以帮忙看一下~
这样跑的结果app还是马上crash掉
log的第一条是这样
Error in http connection android.os.NetworkOnMainThreadException
看样子是这边的exception抓到的
//http post
try{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new
HttpPost("
http://140.113.235.47/~lihsing/main.php");
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
}catch(Exception e){
Log.e("log_tag", "Error in http connection"+e.toString());
}
有google那条error log的解决方式
不过台湾好像很少资料, 几乎都老外在讨论
可惜也看不懂=_= 而且solution都不太一样
希望板上前辈能指点迷津一下!
Thanks!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.121.222
1F:推 LaPass:把那行 Error拿去Google找不到吗? 02/07 01:06
2F:→ LaPass:我记得之前听过 新版的ANDROID在主执行绪内连网路会直接吐 02/07 01:07
3F:→ LaPass:错误出来,看起来应该是那个原因。 02/07 01:07
4F:→ LaPass:解决方式是,把连结网页的动作移到别的执行绪内去做 02/07 01:07
5F:→ joshnash:感谢你的回应, 再goo一次老外的讨论好像就看懂了 02/07 01:19
7F:→ joshnash:thanks, 我再查查怎麽移到别的thread~ 02/07 01:21
8F:→ joshnash:再补: Painless threading #1DTvi2zd(AndroidDev) 02/07 01:26
9F:推 gpc:target sdk level过高 不能有network在主thread 02/07 14:04
10F:→ gpc:请参考activitythread.java 02/07 14:04