android中检测网络的方法及应用
来源:互联网 发布:es6 对象数组去重 编辑:程序博客网 时间:2024/06/16 22:10
第一次在这个论坛上写文章,在深夜写点简单的东西,也好!
做android也快两年了!但还没有写过什么文章,主要是没那个习惯去写,现在想通了,还是要写点东西才觉得这两年来没有白过,不然以后想找点东西都是在网络上找,自己写点东西的话就可以在自己的博客中看看就可以了!比别人写的说不定还好!好了!扯淡就到此了!
今天写了一个TV高清播放器上的天气预报,虽然都是以前用过的东西,自己决定写博客了!就不要怕简单,希望自己一直简直下去;
简单的判断网络是否连接:
public static boolean isConnect(Context context) { // 获取手机所有连接管理对象(包括对wi-fi,net等连接的管理) try { ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); if (connectivity != null){ // 获取网络连接管理的对象 NetworkInfo info = connectivity.getActiveNetworkInfo(); if (info != null&& info.isConnected()) { // 判断当前网络是否已经连接 if (info.getState() == NetworkInfo.State.CONNECTED){ return true; } } } } catch (Exception e) { System.out.println(e.toString()); } return false; }
要想在一个应用的开始就判断网络是否可用就可以这样做:写一个Timer的定时器去检测:
TimerTask timerTask = new TimerTask()
{
@Override
public void run() {
//
if(isConnectedFlag){
Intent intent = new Intent(MainActivity.this,TargetActivity.class);
startActivity(intent);//跳转画面也可以进行其他的处理;
}else{
//如果没有网络连接,则弹出提示框;
new AlertDialog.Builder(MainActivity.this)
.setTitle(MainActivity.this.getResources().getString(R.string.internet_err))
.setMessage(MainActivity.this.getResources().getString(R.string.internet_failed))
.setPositiveButton(MainActivity.this.getResources().getString(R.string.internet_yes),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
progressDialog1.dismiss();
android.os.Process.killProcess(android.os.Process.myPid());
System.exit(0);
}
}).show();
}
};
在onResume()方法中添加启动定时器:
private Timer timer = null;
private boolean isConnectedFlag = true;
//两个变量
@Override
protected void onResume() {
super.onResume();
if(null == timer)
{
// 检测网络
this.isConnectedFlag = isConnect(this);
// 定时 1 秒,自动跳向主界面
timer = new Timer();
timer.schedule(timerTask, 1000);
}
}
当然网络的服务还是要加权限的:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
private String getXmlInfo(String weather_url){
String service_back_data = null;
HttpGet httpGet = new HttpGet(weather_url);
try {
HttpResponse httpResponse = new DefaultHttpClient().execute(httpGet);
if (httpResponse.getStatusLine().getStatusCode() == 200) {
service_back_data = EntityUtils.toString(httpResponse.getEntity());
return service_back_data;
}
} catch (Exception e) {
System.out.println("e-->>"+e.toString());
e.printStackTrace();
}
return null;
}
返回的数据为网页中所有的字符串数据;
- android中检测网络的方法及应用
- iOS 应用中检测网络是否存在的方法
- App 内存应用的内存泄露检测及应用中哪个方法耗时的检测
- Android中检测网络连接状况的方法
- Android,检测网络状态的方法
- android应用检测anr的方法
- Android开发中是否连上网络检测方法
- 系统网络环境检测方法及工具
- 检测网络状态的方法
- 网络超时检测的方法
- 网络检测的简单方法
- Android网络应用之WI-FI检测
- 网络中检测远程WMI应用
- Android应用检测并下载更新新版本的方法
- 角点检测之Harris角点检测的原理及opencv中API的应用
- 网络中环的检测
- Android应用的性能检测
- Android网络传输中常用加解密方法及例子
- ubuntu12.04 搭建Android 开发环境
- .NET面试——技术之谈
- 软件测试工具LoadRunner参数化功能详解(十)
- 解决“Exception in thread "main" java.util.ConcurrentModificationException”异常的办法
- 谈谈你对hibernate与ibatis的认识!
- android中检测网络的方法及应用
- C#学习----知识点
- PHP100视频教程75:Zend framework 配置与调试 解压密码
- android Camera 数据流程分析
- [2] java导出Excel(POI)
- 初学java总结
- 如何在LoadRunner中使用集合点进行测试(十一)
- 关于全局变量的若干细节
- java 代码设置birt报表参数