在 Android 应用程序中处理无互联网连接的最佳方法是什么

sun*_*er3 5 android user-experience

我在 Android 开发领域工作了 4 年多,在我参与的所有项目中,人们总是问我哪种方法是处理无 Internet 连接用例的最佳方式。可以通过多种方式对其进行检查,但我仍在尝试确定有史以来最好的用户体验。

一个想法可能是让观察者检查互联网连接,每当它丢失时,在您当前的屏幕上显示一项活动,以通知用户他丢失了连接。当互联网恢复时,只需调用完成该活动即可。但这会阻止与应用程序的任何交互。

另一种方法是个性化应用程序的每个屏幕以显示自定义的无连接布局。但是,如果您有 20 个以上的屏幕,这可能会花费您大量的工作。

您认为在 Android 应用程序中处理无互联网连接的最佳方式是什么?

Zoh*_*mir 5

我会说Snackbar。它看起来不错,不会阻塞 UI,提供不强制用户执行的操作(与 Toast 不同)(与 Activity 和 Dialog 不同),并且只需要 1 行代码。就如此容易。

活动- 糟糕的选项,阻止 UI,需要用户输入,可能很烦人,带有样板
Toast - 看起来“令人满意”,但无法指定操作
对话框 - 使用户操作强制关闭,看起来不太好

对于 Snackbar,我能想到的只有一个缺点,它与 一起使用效果最好CoordinatorLayout,比如向上移动布局而不是重叠它。除此之外,它符合要求。

TYPE_APPLICATION_OVERLAY(根据经验)


Tas*_*mad 5

根据material.io,您可以显示cardview所需的视图,通知用户当前的网络状态。这样,就不会阻止用户与应用程序交互。在此输入图像描述