Androidはアプリにネットワークがあるかどうかを判断することについて
1993 ワード
Android , , :
.java
/**
*
*
* @param context
* @return
*/
public boolean isNetworkAvailable(Activity activity)
{
Context context = activity.getApplicationContext();
// ( wi-fi,net )
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivityManager == null)
{
return false;
}
else
{
// NetworkInfo
NetworkInfo[] networkInfo = connectivityManager.getAllNetworkInfo();
if (networkInfo != null && networkInfo.length > 0)
{
for (int i = 0; i < networkInfo.length; i++)
{
System.out.println(i + "=== ===" + networkInfo[i].getState());
System.out.println(i + "=== ===" + networkInfo[i].getTypeName());
//
if (networkInfo[i].getState() == NetworkInfo.State.CONNECTED)
{
return true;
}
}
}
}
return false;
}
oncreate() , :
.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if(isNetworkAvailable(Maintivity.this){
Toast.makeText(this, " !", Toast.LENGTH_LONG).show();
}else{
Toast.makeText(this," !",Toast.LENGTH_LONG).show();}
}
,
<!-- -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>