导航:首页 > 操作系统 > android实时监控网络

android实时监控网络

发布时间:2022-08-06 12:42:57

android开发怎么监听网络请求

Android中网络情况时有变化,比如从有网到没网,从wifi到gprs,gprs又从cmwap到cmnet...等等!
如果你的程序有些功能是需要网络支持的,有时候就需要监听到网络的变化情况进行相应的处理。
比如说下载一个文件,如果突然断网了,怎么处理?网络又恢复了,如何监听到并重连?

当网络变化的时候系统会发出义个广播broadcast,只要在程序中注册一个广播接收器BroadcastReceiver,并在IntentFilter中添加相应的过滤,这样一旦网络有变化,程序就能监听到
public static final String CONNECTIVITY_CHANGE_ACTION = "android.net.conn.CONNECTIVITY_CHANGE";
private void registerDateTransReceiver() {
Log.i(TAG, "register receiver " + CONNECTIVITY_CHANGE_ACTION);
IntentFilter filter = new IntentFilter();
filter.addAction(CONNECTIVITY_CHANGE_ACTION);
filter.setPriority(1000);
registerReceiver(new MyReceiver(), filter);
}

在MyReceiver中:
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
Log.i(TAG, "PfDataTransReceiver receive action " + action);
if(TextUtils.equals(action, CONNECTIVITY_CHANGE_ACTION)){//网络变化的时候会发送通知
Log.i(TAG, "网络变化了");
return;
}
}

当网络变化时,从有网到没网也会发广播,就举的例子来说,如果下载时断网了,接收到广播的时候要判断当前网络是可用还是不可用状态,如果可用进行什么操作;不可用进行什么操作:
public static NetworkInfo getActiveNetwork(Context context){
if (context == null)
return null;
ConnectivityManager mConnMgr = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (mConnMgr == null)
return null;
NetworkInfo aActiveInfo = mConnMgr.getActiveNetworkInfo(); // 获取活动网络连接信息
return aActiveInfo;
}

这个方法返回的aActiveInfo可以判断网络的有无,如果返回的是null,这时候是断网了,如果返回对象不为空,则是连上了网。在返回的NetworkInfo对象里,可以有对象的方法获取更多的当前网络信息,比如是wifi还是cmwap等,就不多说了。

⑵ 安卓最好的网络监测软件是哪个 就是能记录所有连接的软件,可以看到浏览的具体网址和ip地址的那种

安全管家、正点工具箱、安卓优化大师、360手机卫士…这些都可以,前面三个比较实用,查正在联网的软件也很方便,所以选择哪个都可以。

⑶ 有没有好的android上网监控软件 求推荐

联网软件,我推荐:海卓冲浪,功能丰富而强大,能满足楼主需求,保证楼主满意。http://m.163.com/android/software/2vbvl0.html
至于控制开机,这个:启动审查(Startup Auditor),功能简单,但是牛逼。
http://m.163.com/android/software/2vbupj.html
两个软件都是从网易应用过来的,可以尽管放心,绝对不是病毒。

⑷ android 代码怎么实时监控连接当前wifi热点的设备的连接或断开事件

请参考以下代码实现监控:
ConnectivityManager connectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo mobNetInfo = connectivityManager
.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
NetworkInfo wifiNetInfo = connectivityManager
.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

if (!mobNetInfo.isConnected() && !wifiNetInfo.isConnected()) {
// BSToast.showLong(context, "网络不可以用");
// 改变背景或者 处理网络的全局变量
} else {
// 改变背景或者 处理网络的全局变量
}
把上的代码放到一个广播里面。。

⑸ 安卓手机流量实时监控

你可以安装360手机卫士,安装后打开就可以看到它的功能了,挺管用的如防垃圾短信、防骚扰电话、防隐私泄漏、对手机进行安全扫描、联网云查杀恶意软件、软件安装实时检测、流量使用全掌握、系统清理全都有。

⑹ Android上的实时视频监控怎么实现的

1、使用FFMpeg进行视频采集,使用Live555进行RTP传输,使用VideoView进行播放。
csdn提到:重载FrameSource,写一个服务类,可以从FrameSource的派生类读取帧数据,转发给live555.
评价:本方案大型访问量大的不行,少量连接比如100以内的可以。
2、用gstreamer完成采集、编码、组播。客户端使用VideoView进行播放。
评价:本方案优点为可以实现大访问量。缺点是基本从底层架构,代码量比较大。
3、使用FFmpeg进行视频采集,使用ffserver进行视频转发,客户端使用VideoView播放。
评价:优点是实现简单、容易演示,缺点是实时性不好以及用户量大不行。

⑺ android中如何用广播监听网络变化,将其显示在通知栏上

网络状态发生变化的时候,系统会发出 android.net.conn.CONNECTIVITY_CHANGE .
下面是实现的 demo :

package mark.zhang;

import android.app.Service;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.IBinder;
import android.util.Log;

public class ListenNetStateService extends Service {
private ConnectivityManager connectivityManager;
private NetworkInfo info;

private BroadcastReceiver mReceiver = new BroadcastReceiver() {

@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(ConnectivityManager.CONNECTIVITY_ACTION)) {
Log.d("mark", "网络状态已经改变");
connectivityManager = (ConnectivityManager)

getSystemService(Context.CONNECTIVITY_SERVICE);
info = connectivityManager.getActiveNetworkInfo();
if(info != null && info.isAvailable()) {
String name = info.getTypeName();
Log.d("mark", "当前网络名称:" + name);
} else {
Log.d("mark", "没有可用网络");
}
}
}
};

@Override
public IBinder onBind(Intent intent) {
return null;
}

@Override
public void onCreate() {
super.onCreate();
IntentFilter mFilter = new IntentFilter();
mFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
registerReceiver(mReceiver, mFilter);
}

@Override
public void onDestroy() {
super.onDestroy();
unregisterReceiver(mReceiver);
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
return super.onStartCommand(intent, flags, startId);
}
}

⑻ android中如何监听到其他应用的网络请求数据

目前android提供的工具没事,我们写工程都是自己写http请求,每次请求的时候打Log,记录请求的url和参数。请求回来了,打log,记录回来的数据,记录数据的状态,数据的内容。 目前只能这样。如果用模拟器的话,可以用vnStat或者CommView之类的监控电脑网卡的请求,间接的监控手机。一般开发用手机测试,这样就不行了。只能打log了

⑼ android 怎么监控网络状态可以访问互联网而不是连接状态

在开发android应用时,涉及到要进行网络访问,时常需要进行网络状态的检查,以提供给用户必要的提醒。一般可以通过ConnectivityManager来完成该工作。
ConnectivityManager有四个主要任务:
1、监听手机网络状态(包括GPRS,WIFI, UMTS等)
2、手机状态发生改变时,发送广播
3、当一个网络连接失败时进行故障切换
4、为应用程序提供可以获取可用网络的高精度和粗糙的状态
当我们要在程序中监听网络状态时,只要一下几个步骤即可:
1、定义一个Receiver重载其中的onReceive函数,在其中完成所需要的功能,如根据WIFI和GPRS是否断开来改变空间的外观
复制代码 代码如下:

connectionReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
ConnectivityManager connectMgr = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo mobNetInfo = connectMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
NetworkInfo wifiNetInfo = connectMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if (!mobNetInfo.isConnected() && !wifiNetInfo.isConnected()) {
Log.i(TAG, "unconnect");
// unconnect network
}else {
// connect network
}
}
};

2、在适当的地方注册Receiver,可以在程序中注册,在onCreate中调用如下函数即可:
复制代码 代码如下:

IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
registerReceiver(connectionReceiver, intentFilter);

3、在适当时取消注册Receiver,可以在程序中取消,在onDestroye中调用如下函数即可:
复制代码 代码如下:

if (connectionReceiver != null) {
unregisterReceiver(connectionReceiver);
}

阅读全文

与android实时监控网络相关的资料

热点内容
不越狱怎么去除app广告 浏览:174
ipadminipdf阅读 浏览:504
文件夹无限制压缩会不会降低内存 浏览:410
荣耀怎样创建文件夹 浏览:629
如何用本机登陆远程服务器地址 浏览:680
黄小鸭解压文具盒 浏览:670
女程序员的转行方法 浏览:881
东风启辰车联网安装文件夹 浏览:524
华为怎么设置app时间锁 浏览:660
后宫app视频怎么下载 浏览:525
如何把图片转换从PDF格式 浏览:259
重写和重载的区别java 浏览:234
expressvpnandroid 浏览:84
储存卡被加密怎么解除 浏览:169
地球怎么压缩直径 浏览:780
金铲铲之战服务器爆满怎么进 浏览:160
同仁堂pdf 浏览:935
如何编译原理课程教材 浏览:730
单片机控制显示器 浏览:777
顶好花app下载怎么找不到 浏览:989