在 Android 中经常检查互联网连接是否可用?

2023-12-19

我的应用程序是通过 NetConnection 保存(到服务器)数据。如果网络不可用,我会在本地保存,然后当网络再次可用时发送到服务器。我的问题是检查经常连接互联网所以我尝试了服务功能来检查网络连接。但只打了一次电话。如何解决我的问题。任何人都可以帮助我 提前致谢!

update

package com.android.cdtech;

import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.net.ConnectivityManager;
import android.view.View;

class ReceiverName extends Activity {
    BroadcastReceiver r = new BroadcastReceiver(){

    @Override
    public void onReceive(Context context, Intent intent) {
        ConnectivityManager cm = ((ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE));
        if (cm == null)
            return;
        if (cm.getActiveNetworkInfo() != null && cm.getActiveNetworkInfo().isConnected()) {
            saveData();
        } else {
            // Do nothing or notify user somehow
        }

    }
    // code to handle broadcase

    private void saveData() {
        final saveData dh=new saveData(this); //Class for Creating a Database
        webService calService=new  webService();
        dh.open();
        Cursor c = dh.pay();

        String text = "";
        do {
            text = text + " " + "\n" + c.getString(4);
            System.out.println(c.getCount());
            // Toast.makeText(this,"Name:" +c.getString(1)+c.getString(2)+c.getString(3)+c.getString(4)+"",Toast.LENGTH_LONG).show();
            calService.paymentReceipt("PaymentReceipt", c.getString(1), c.getString(2), c.getString(3), c.getString(4), "gf", "0");
         }
         while (c.moveToNext()); 
         dh.close();
        }
    };
}

您可以在没有任何计时器的情况下完成此操作,只需注册接收器以侦听连接更改:

<receiver android:name=".ReceiverName" >
    <intent-filter >
        <action android:name="android.net.wifi.STATE_CHANGE" />
        <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
    </intent-filter>
</receiver>

并检查连接是否建立:

public class ReceiverName extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        ConnectivityManager cm = ((ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE));
        if (cm == null)
            return;
        if (cm.getActiveNetworkInfo() != null && cm.getActiveNetworkInfo().isConnected()) {
            // Send here
        } else {
            // Do nothing or notify user somehow
        }

    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Android 中经常检查互联网连接是否可用? 的相关文章

  • onActivityResult 中的完成活动不起作用

    我有一对必须同生共死的活动 基本上 AlphaActivity 会做一些工作 然后发送一个意图 startActivityForResult 对于 Beta 活动 当 Beta 活动完成时 我希望它发送一个意图 startActivity
  • android - EditText 打字速度很慢

    我的 EditText 在打字时响应速度很慢 这种滞后现象足以让我找到解决方案 我做了一些研究 发现了一个 SO 线程输入文本时 EditText 滞后 https stackoverflow com questions 6173591 a
  • doInBackground 运行时是否可以停止 asynctask?

    我正在 ActivityB Oncreate 中创建异步任务 在该任务中 我正在运行无限 while 循环doInBackground 当我转到上一个活动并再次回到该活动时 创建了另一个异步任务 我的问题现在是两个无限 while 循环正在
  • 无法解析符号 FlutterActivity

    我使用 VCS gt Checkout from Version Control 将 flutter 项目从 github 导入到 Android Studio 中 现在我面临的问题是 Cannot resolve symbol Flutt
  • 如何编辑 gradle 依赖项

    我正在开发一个 android 项目 该项目在我的 gradle 文件中使用以下依赖项 compile com mapzen on the road 1 1 1 我想编辑其中一个文件 以添加一些缺少的功能并为该项目做出贡献 如何下载该项目并
  • 下载图像并显示它

    应用程序的主要目的是下载和显示图像 但是当我尝试启动应用程序时它崩溃了 这是我的代码 private DownloadImageTask task protected void onCreate Bundle savedInstanceSt
  • 服务器到 Firebase HTTP POST 结果为响应消息 200

    使用 Java 代码 向下滚动查看 我使用 FCM 向我的 Android 发送通知消息 当提供正确的服务器密钥令牌时 我收到如下所示的响应消息 之后从 FCM 收到以下响应消息 Response 200 Success Message m
  • 如何将单选按钮状态保存到已保存/共享首选项?

    我可以在保存的首选项中保存字符串 但很难保存单选按钮 public class PersonalDetailsf extends Activity private SharedPreferences sharedPreferences pr
  • Android 在启动时启动服务,如何在设备重启后重新启动服务类?

    我需要在启动时启动一项服务 我搜索了很多 他们正在谈论广播接收器 由于我是 Android 开发新手 所以我对 Android 上的服务并没有清楚的了解 请提供一些源代码 您的接收者 public class MyReceiver exte
  • 如何在 Android 上的 HttpPost 中发送 unicode 字符

    我试图在我的应用程序中允许多语言支持 这会发出 HTTP post 来上传新消息 我需要做什么才能支持日语和其他非拉丁语语言 我的代码目前看起来像这样 note the msg string is a JSON message by the
  • Facebook LoginActivity 未正确显示

    我有一个使用 Facebook 登录的应用程序 我有 FacebookSDK 并且使用 com facebook LoginActivity 问题是 在 10 英寸平板电脑上 当显示软键盘时 活动无法正确显示 我使用的是 Samsung G
  • 版本 5 上带有 getBackground().setAlpha 的按钮 - 棒棒糖无法正常工作

    我有这段代码 适用于自 API 14 以来的每个版本 但在 Android 5 0 Lollipop 上无法正常工作 以下是我希望按钮出现的方式 单击按钮1 buttonArrivals getBackground setAlpha 180
  • 当应用程序未运行时如何堆叠 Firebase Cloud Messaging 通知?

    我在用Firebase Cloud Messaging将推送通知从我的服务器发送到我的 Android 应用程序 当应用程序运行时 通知是stacked因为我将它们设置为我的一个组FirebaseMessagingService 这很好 但
  • 如何从SurfaceView绘制到Canvas?

    我正在尝试做简单的画家 问题是Android看起来有三个独立的Canvas并给我它来顺序绘制 我用以下方式制作了用户界面SurfaceView 把霍尔德从中拿走 Override protected void onCreate Bundle
  • 如何在android sdk上使用PowerMock

    我想为我的 android 项目编写一些单元测试和仪器测试 然而 我遇到了一个困扰我一段时间的问题 我需要模拟静态方法并伪造返回值来测试项目 经过一些论坛的调查 唯一的方法是使用PowerMock来模拟静态方法 这是我的 gradle 的一
  • Google Android Drive api 在已安装版本上登录失败

    我开发了一个使用 GoogleDrive api 的 Android 应用程序 当处于调试状态或运行调试版本时 应用程序 工作正常 并正确验证附加的谷歌帐户 等 当我构建发行版本时 使用我的签名密钥 并且 安装apk文件 当我运行时 Goo
  • 按名称查找视图

    是否可以通过名称而不是 id 来查找视图 findViewById R id someView 但我想做这样的事情 findViewByName someView 在处理 xml 时 您必须通过标识符查找视图 但是您可以使用以下方式查找标识
  • 基于BluetoothChat示例通过蓝牙套接字发送文件

    大家好 根据我之前问的一个问题 我已经能够将文件转换为其他字节数组 以便使用以下写入方法 public void sendFile Log d TAG sending data InputStream inputStream null Ur
  • Android应用程序kill事件捕获

    我想在我的应用程序被终止时执行一些操作 可以使用哪种方法来实现此目的 我正在开发 Android 5 0 这个问题的关键在于 您必须了解您的申请是否可以收到任何 当您的应用程序在任何情况下被终止时的额外回调 下面的答案是由德文连线 http
  • 在 Android 中更新到 API 26 时,清单合并失败并出现多个错误

    我尝试使用 API 26 更新我的 gradle 安卓工作室2 3 3 但我在编译项目时遇到以下错误 这是我收到的错误的屏幕截图 应用级别build gradle Top level build file where you can add

随机推荐

  • 股指期权开通要什么条件?

    股指期权是一种金融衍生工具 它赋予持有者在未来某一特定日期按照约定的价格买入或卖出标的资产的权利 对于投资者来说 开通股指期权账户需要满足一定的条件 那么股指期权开通要什么条件 本文来自 财顺期权 开通股指期权账户需要的条件是 申请前20个
  • 一网打尽目前常用的聚类方法,详细介绍了每一种聚类方法的基本概念、优点、缺点!!

    目前常用的聚类方法 1 K 均值聚类 K Means Clustering 2 层次聚类 Hierarchical Clustering 3 DBSCAN聚类 DBSCAN Clustering 4 谱聚类 Spectral Cluster
  • 小程序项目基于微信点单小程序系统

    前言 本微信点单小程序是根据当前的实际情况开发的 在系统语言选择上我们使用的Java语言 数据库是小巧灵活的MySQL数据库 框架方便使用的是当前最主流的SPRING BOOT框架 本系统的开发可以极大的满足了人们在线点单的需求 微信点单小
  • 期权有杠杆吗?在哪里看期权有多少倍杠杠?

    期权有杠杆吗 在哪里看期权有多少倍杠杠 期权本身没有杠杆 期权合约自带杠杆 期权买方只需要缴纳较少的权利金就可以获得更高价值的标的资产波动所带来的收益 但是期权卖方不需要缴纳保证金 期权卖方需要付出保证金才可以建仓 这是因为期权卖方需要履行
  • 如何对大模型进行评估下

    如果从实现评估的纬度来分 可以将不同类型的评估分为三类 具体如下所示 更多理论的详细信息可以参见博客 如何对大模型进行评估上 接下来就从第一种类型出发 看看评估脚本是如何实现的 这里分析的源代码是 Qwen的评估脚本 如何使用选择题类型数据
  • 新书推介——《AI摄影绘画与PS优化从入门到精通》

    在这个数字化时代的浪潮中 人工智能技术以其惊人的创造力和创新性席卷全球 从智能助手到自动驾驶 从自然语言处理到机器学习 AI正日益成为我们日常生活和各个领域不可或缺的一部分 摄影和绘画领域也不例外 AI技术为我们提供了前所未有的创作和表达方
  • PyCharm的环境配置和使用

    最近要开发python项目 用到了编辑器PyCharm 这款工具用起来还是很方便的 自带代码提示功能和代码格式化 报错信息提示 调试代码很方便 我用的软件版本是 PyCharm 2021 3 2 Community Edition 安装完
  • 什么是虚值期权?什么是深度虚值期权?

    在期权市场里有一种合约的价格往往比较便宜 它就是虚值期权 也是最受欢迎的期权之一 虚值期权也就是高杠杆和波动被世人所爱 久闻的一日192倍行情就是出自于虚值期权 下文科普什么是虚值期权 什么是深度虚值期权 一 虚值期权是什么 虚值合约因为价
  • 基于Java的旅游路线系统网站

    前言 本基于Java web的旅游路线系统是根据当前我国旅游的大环境相关的内容实际情况开发的 在系统语言选择上我们使用的Java语言 数据库是小巧灵活的MySQL数据库 本系统的开发可以极大的提高旅游方面的管理 本基于Java web的旅游
  • 如何对大模型进行评估上

    大模型评估指标 对于AI大模型 可以从哪些方面来进行评估呢 要进行大模型评估 首先需要熟悉有哪些评估指标 大模型有哪些评估指标呢 先从查看开源大模型的官网开始 看看开源大模型给出了哪些评估指标数据 下图是Qwen Llama的评估指标 下图
  • 数据资产怎么治理

    在当今数字化时代 数据已经成为企业最重要的资产之一 然而 随着数据量的迅速增长和多样化 如何有效地管理和利用数据成为了一个迫切的问题 数据资产治理正是为了解决这个问题而提出的一种管理框架 旨在确保数据质量 安全性和价值的最大化 下面数聚就深
  • 完整的vite + ts + vue3项目,克隆就能用,傻瓜式保姆教程(第二篇)

    目录 前言 一 基础知识准备 1 1 接口请求 本篇重点内容 1 1 1 Fetch API 1 1 2 XMLHttpRequest 1 1 3 axios 推荐 1 1 4 EventSource 1 1 5 WebSocket 1 2
  • 基于springboot的精准扶贫管理系统

    收藏关注不迷路 文章目录 一 项目介绍 二 开发环境 三 功能介绍 四 核心代码 五 效果图 六 文章目录 一 项目介绍 本精准扶贫管理系统管理员和用户 管理员功能有个人中心 用户管理 贫困户管理 热门新闻管理 新闻类型管理 志愿者招聘管理
  • springboot基于web的音乐网站

    收藏关注不迷路 文章目录 一 项目介绍 二 开发环境 三 功能介绍 四 核心代码 五 效果图 六 文章目录 一 项目介绍 本音乐网站管理员功能有个人中心 用户管理 歌曲分类管理 歌曲信息管理 管理员管理 系统管理等 用户可以注册登录 试听歌
  • 基于springboot的校园社团信息管理系统

    收藏关注不迷路 文章目录 一 项目介绍 二 开发环境 三 功能介绍 四 核心代码 五 效果图 六 文章目录 一 项目介绍 本校园社团信息管理系统管理员功能有个人中心 学生管理 社长管理 社团分类管理 社团信息管理 加入社团管理 社团成员管理
  • 基于springboot的大型商场应急预案管理系统

    收藏关注不迷路 文章目录 一 项目介绍 二 开发环境 三 功能介绍 四 核心代码 五 效果图 六 文章目录 一 项目介绍 本大型商场应急预案管理系统管理员功能有个人中心 员工管理 预案信息管理 预案类型管理 事件类型管理 预案类型统计管理
  • Java基于springboot的厨艺交流平台的设计与实现

    收藏关注不迷路 文章目录 一 项目介绍 二 开发环境 三 功能介绍 四 核心代码 五 效果图 六 文章目录 一 项目介绍 这次开发的厨艺交流平台功能有个人中心 食材分类管理 用户管理 菜品分类管理 菜谱信息管理 食材信息管理 商品分类管理
  • 使用 Stdin.readLineSync() 时出错;在飞镖中

    在 VS Code 中 我在从用户获取代码的基本输入中收到此错误 我的完整代码 导入 dart io void main stdout write Enter your name var name stdin readLineSync st
  • Gradle 必须依赖 com.google.firebase:firebase-core 才能使 Firebase 服务按预期工作[重复]

    这个问题在这里已经有答案了 编译时我收到这样的警告 应用 Gradle 文件必须依赖 com google firebase firebase core 才能使 Firebase 服务按预期工作 只需添加以下行 updated implem
  • 在 Android 中经常检查互联网连接是否可用?

    我的应用程序是通过 NetConnection 保存 到服务器 数据 如果网络不可用 我会在本地保存 然后当网络再次可用时发送到服务器 我的问题是检查经常连接互联网所以我尝试了服务功能来检查网络连接 但只打了一次电话 如何解决我的问题 任何