有没有办法以编程方式仅针对我的应用程序(非系统范围!!)切断互联网连接一小段时间,或者全局关闭我的应用程序当前正在进行的所有网络连接? / p> 来自David的一条评论中的其他信息:
我的用例如下:我正在使用一个启动网络连接并执行某些工作的库,Lib中不可能手动停止事务,因此唯一的工作就是停止进程所做的所有连接我的应用程序,我不想切断连接系统。
答案 0 :(得分:-2)
当检查是否需要执行Internet任务时(例如 AsyncTask ),您应该编写方法。像:
@Override
protected Void doInBackground(Void... voids) {
if(isOnline()) {
// your logic here
} else {
// other logic
}
}
isOnline 方法检查是否需要执行任务。
编辑:
对于已经运行的操作,您需要将方法 isOnline 添加到其他逻辑方法,例如 postExecute ,如果您设置isOnline = off,则 postExecute 方法没有发生,如果你也像上面那样检查。
对于停止任务,您应该收集任务并调用取消(...)方法。