有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java 安卓连接异常/丢失管理器

背景

所以我继承了一个安卓应用程序,它在不同的地方连接到web服务来发送或接收信息

正如现在一样,当连接失败时,安卓设备的用户会收到一条错误消息,对于大多数用户来说,这条消息被认为是模糊的

问题

因此,我要寻找的是一种模式或建议,说明如何在这个安卓应用程序中实现一个解决方案,该解决方案捕获所有java连接异常,并显示一个对话框,告诉用户他失去了internet连接,需要重试

有什么想法吗?:-)

编辑当前想法

我目前的想法是解决这个问题,或者让它更易于管理,而不是在每一个可能的连接上都使用断开的异常处理来处理这个问题。 每个通信实例/类将从一个超类继承,或实现一个强制使用该类的接口。此类包含连接异常的逻辑。现在我们把它叫做ConnectionExceptionManager。 问题只会在每个web服务调用的每个通信类中实现。在每个web服务调用异常中,我需要检查通信异常,如果出现,请在此捕获中使用ConnectionExceptionManager

然而,在每个通信类中复制到请求方法中仍然会很麻烦

有什么办法可以改进我目前的想法吗


共 (1) 个答案

  1. # 1 楼答案

    我从你的问题中了解到,在执行任何与互联网相关的操作之前,你需要检查互联网连接。为此,您只需创建公共静态布尔函数,即公共静态布尔isInternetConnected(){…}在全局类中,以便可以重用函数

    如果你想让你的应用程序自动检查互联网连接,那么你可以使用IntentService,它将在后台工作,并在其受保护的抽象void onHandleContent(Intent Intent)中,你可以检查isInternetConnected()是否返回true,如果不是,那么你可以打开AlertDialog

    要在应用程序运行时重复使用此后台服务,可以使用AlarmManager

    希望这有帮助