我和我的朋友一起建立了一个需要互联网连接运行的android应用程序。这是我们的第一个应用程序,我们只是初学者,非常感谢堆栈溢出。它帮助了我们很多。如何检测互联网在android热点网络连接
所以我用下面的代码来检测连接
public class ConnectionDetector {
private Context _context;
public ConnectionDetector(Context context){
this._context = context;
}
public boolean isConnectingToInternet(){
ConnectivityManager connectivity = (ConnectivityManager) _context.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity != null)
{
NetworkInfo[] info = connectivity.getAllNetworkInfo();
if (info != null)
for (int i = 0; i < info.length; i++)
if (info[i].getState() == NetworkInfo.State.CONNECTED)
{
return true;
}
}
return false;
}
}
而在溅活性所用的方法如下:
cd = new ConnectionDetector(getApplicationContext());
if (cd.isConnectingToInternet()) {
Intent intent = new Intent(SplashActivity.this, Home.class);
SplashActivity.this.startActivity(intent);
SplashActivity.this.finish();
} else {
Toast.makeText(SplashActivity.this, "No Internet Connection. Press back to exit", Toast.LENGTH_SHORT).show();
finish();
}
所以问题是当移动终端连接到移动数据工作正常,但当它连接到热点网络时,它只能检测网络连接而不是互联网。
所以这些方法返回true,它会转到下一个活动并且应用程序崩溃。
有什么办法解决这个问题吗?
我只是想让我的应用程序不应该崩溃。
+1
Check [this](http://stackoverflow.com/questions/17717749/check-for-active-internet-connection-android)out。 –