Android Get方式

yytinal 2014-06-13 10:56:12
public class GetActivity extends Activity {
private EditText input;
private Button get;
private Button post;
private Button search;
private TextView result;
final static String phoneUrl="http://www.096.me/api.php";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_get);
search=(Button)findViewById(R.id.serch);
get=(Button)findViewById(R.id.get);
post=(Button)findViewById(R.id.post);

input=(EditText)findViewById(R.id.edit_input);
result=(TextView)findViewById(R.id.result);
get.setOnClickListener(new OnclickListenerImp1());
post.setOnClickListener(new OnclickListenerImp1());
search.setOnClickListener(new OnclickListenerImp1());
}

class OnclickListenerImp1 implements OnClickListener{

@Override
public void onClick(View view) {
switch(view.getId()){
case R.id.serch:
break;
case R.id.get:
Get_url();
break;
case R.id.post:
Post_url();
break;
default:
break;
}

}

private void Get_url(){
String phonenum=input.getText().toString();
//phonenum=phonenum.replace(" ", "%20");
try{

//URL geturl=new URL(phoneUrl+"?code="+phonenum+"&output=xml");
URL geturl=new URL(phoneUrl+"?phone="+phonenum+"&mode=xml");
HttpURLConnection httpconn=(HttpURLConnection)geturl.openConnection();
httpconn.setReadTimeout(100000);
if(httpconn.getResponseCode()==HttpURLConnection.HTTP_OK){
Toast.makeText(getApplicationContext(), "get连接成功", Toast.LENGTH_SHORT).show();
InputStreamReader isr=new InputStreamReader(httpconn.getInputStream(),"utf-8");
int i;
String content="";
while((i=isr.read())!=-1){
content=content+(char)i;
}
isr.close();
result.setText(content);
}
httpconn.disconnect();
}catch(Exception e){
Toast.makeText(getApplicationContext(), "get连接失败", Toast.LENGTH_SHORT).show();
e.printStackTrace();

}
}


}
代码如上
AndroidMainFest.xml 中也添加了internet权限
不知道为什么一直不行
请教各位
...全文
147 12 打赏 收藏 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
yytinal 2014-06-13
  • 打赏
  • 举报
回复
引用 10 楼 rui888 的回复:
你debug 的时候 。看看 e.printStackTrace();
真的特别感谢你 接下来我可以百度解决了
yytinal 2014-06-13
  • 打赏
  • 举报
回复
引用 10 楼 rui888 的回复:
你debug 的时候 。看看 e.printStackTrace();
引用 10 楼 rui888 的回复:
你debug 的时候 。看看 e.printStackTrace();
android.os.NetworkOnMainThreadException 谢谢你!没见过这个错误
tony4geek 2014-06-13
  • 打赏
  • 举报
回复
你debug 的时候 。看看 e.printStackTrace();
yytinal 2014-06-13
  • 打赏
  • 举报
回复
引用 8 楼 rui888 的回复:
你debug 看看啊。。logcat 也可以。
我在debug状态下没找着
tony4geek 2014-06-13
  • 打赏
  • 举报
回复
你debug 看看啊。。logcat 也可以。
yytinal 2014-06-13
  • 打赏
  • 举报
回复
引用 6 楼 rui888 的回复:
httpconn.getResponseCode() 多少啊。 Exception e) 这里面 详细错误信息看看
麻烦问下 这个是在哪里看的
tony4geek 2014-06-13
  • 打赏
  • 举报
回复
httpconn.getResponseCode() 多少啊。 Exception e) 这里面 详细错误信息看看
yytinal 2014-06-13
  • 打赏
  • 举报
回复
引用 3 楼 u014490539 的回复:
[quote=引用 1 楼 rui888 的回复:] 出什么错误,调试看看,
上哪里看?[/quote] 我试了 没走到,走到if(httpconn.getResponseCode()==HttpURLConnection.HTTP_OK){ 然后跳到catch(Exception e){ Toast.makeText(getApplicationContext(), "get连接失败", Toast.LENGTH_SHORT).show(); 这句了 我不知道为什么不进if里面
tony4geek 2014-06-13
  • 打赏
  • 举报
回复
调试看看 InputStreamReader isr=new InputStreamReader(httpconn.getInputStream(),"utf-8"); int i; String content=""; 这个走到没啊。
yytinal 2014-06-13
  • 打赏
  • 举报
回复
引用 1 楼 rui888 的回复:
出什么错误,调试看看,
上哪里看?
yytinal 2014-06-13
  • 打赏
  • 举报
回复
没有错误啊 输入号码后 按钮就提示get连接失败
tony4geek 2014-06-13
  • 打赏
  • 举报
回复
出什么错误,调试看看,

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧