2014-05-03 113 views
-2

我正在开发一个android应用程序,我的第一个和我第一次使用网络的东西。android不连接到互联网

在java中,我的代码工作正常,在android中我已经在清单中包含了uses permission network,但它仍然不起作用,我不知道为什么。

我在Android的代码是

ArrayList<Pair<String,String>> parameters = new ArrayList<Pair<String, String>>(); 
Pair<String,String> value = new Pair<String, String>("name",cadena); 
parameters.add(value); 
ConnectivityManager connMgr = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 


URL url = new URL("http://192.168.1.43:8084/DnDServer/addGame"+ Utilidades.getParameter(parameters)); 
mostrarError(Utilidades.getParameter(parameters)); 
HttpURLConnection con = (HttpURLConnection) url.openConnection(); 
con.setRequestMethod("GET"); 
con.connect(); 
mostrarError(con.getResponseCode() + ""); 

getParameters()返回一个字符串像?param1=value1&param2=value2 ....

,并在Android清单我已经包括

<uses-permission android:name="android.permission.INTERNET"> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"> 
+0

我忘记说thar mostrarError显示ToastMessage。感谢您的时间和答案 –

+1

您是否收到任何错误/ logcat消息? –

+0

这个网络代码在哪个类中? – donfuxx

回答

0

你执行此在主UI中操作,这在Android中是禁止的,因为它会阻塞线程直到它被处理,导致可能在应用程序不是R esponding。

将网络操作转移到AsyncTask。将代码放入doInBackground()方法中,因为它将在运行时自动创建另一个线程并在那里执行网络操作。

+0

谢谢,这有帮助,问题是我试图访问在UI中,现在它可以工作,很抱歉评论晚了 –