我不熟悉Java和Android开发,并尝试创build一个简单的应用程序,它应该联系一个Web服务器,并使用http get将一些数据添加到数据库。 当我在电脑上使用networking浏览器进行通话时,它工作得很好。 但是,当我在Android模拟器上执行应用程序的调用时,不会添加任何数据。 我已经将Internet权限添加到应用的清单中。 Logcat不报告任何问题。 任何人都可以帮我弄清楚什么是错的? 这里是源代码: package com.example.httptest; import java.io.IOException; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.widget.TextView; public class HttpTestActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView tv = new TextView(this); setContentView(tv); try { URL url = new URL("http://www.mysite.se/index.asp?data=99"); HttpURLConnection urlConnection = […]
可能重复: 如何检查Android的互联网接入? InetAddress从不超时 我需要检测Android设备是否连接到Internet。 NetworkInfo类提供了一个非静态方法isAvailable() ,听起来很完美。 问题是: NetworkInfo ni = new NetworkInfo(); if (!ni.isAvailable()) { // do something } 抛出这个错误: The constructor NetworkInfo is not visible. 安全的赌注是有另一个类返回一个NetworkInfo对象。 但我不知道是哪一个。 如何让上面的代码片段工作? 我怎么能find我在线文档中需要的信息? 你能提出一个更好的方法来进行这种types的检测吗?
我需要告诉我的设备是否有Internet连接。 我发现了很多答案: private boolean isNetworkAvailable() { ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo(); return activeNetworkInfo != null; } (从检测Android上是否有可用的Internet连接 ) 但是,这是不正确的,例如,如果我连接到无法访问Internet的无线网络 ,此方法将返回true … 有办法告诉设备是否有Internet连接,而不是只有连接什么东西?