如何解决如何检查android的互联网状态
我是Android的新手。请帮助我解决我的问题!我的应用程序可以在线和离线使用!当Wifi已连接但没有互联网连接时,必须将应用切换到离线模式。对于离线模式,我正在使用以下代码:
public class Connectivity {
public static boolean isOnline() {
try {
Process p1 = Runtime.getRuntime().exec("ping -c 1 -W1 www.google.com");
int returnVal = p1.waitFor();
boolean reachable = (returnVal == 0);
return reachable;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
}
public View onCreateView(@NonNull LayoutInflater inflater,@Nullable ViewGroup container,@Nullable Bundle savedInstanceState) {
View v=inflater.inflate(R.layout.fragment_online_chat,container,false);
WebView webView =(WebView)v.findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient());
webView.loadUrl("url");
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
LinearLayout linearLayout = (LinearLayout) v.findViewById(R.id.layout);
RelativeLayout relativeLayout =(RelativeLayout)v.findViewById(R.id.llout);
Button btnConnect =(Button)v.findViewById(R.id.btnRetry);
if (Connectivity.isOnline()){
relativeLayout.setVisibility(View.VISIBLE);
linearLayout.setVisibility(View.INVISIBLE);
}
else {
relativeLayout.setVisibility(View.INVISIBLE);
linearLayout.setVisibility(View.VISIBLE);
}
return v;
}
但是它不适用于某些手机型号。 我已经受这个问题困扰了两个星期了。我已经尝试了该网站上的所有内容(所有方法),但对我而言不起作用。我需要做什么???
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。