虽然我的应用程序可以在没有任何互联网连接的情况下使用,但它可能会与Web服务器交换数据(以显示一些用户统计信息)。因此,我将该应用程序宣传为“不需要互联网连接”。随后,一些用户关闭了我的应用程序的移动数据,这完全没问题。但是当我的应用程序尝试交换数据时,这些用户会收到“已为[应用程序名称]关闭移动数据”的对话框,这对他们来说很烦人。
我想防止这些对话框的出现,并简单地跳过整个数据交换过程。
有 Apple's Reachability Sample Code。
但是,尽管我关闭了整个设备的WiFi和应用程序的移动数据,可达性仍确认了正面的互联网连接。更具体地说,它报告:
我想防止这些对话框的出现,并简单地跳过整个数据交换过程。
有 Apple's Reachability Sample Code。
但是,尽管我关闭了整个设备的WiFi和应用程序的移动数据,可达性仍确认了正面的互联网连接。更具体地说,它报告:
Reachability Flag Status: WR t------ networkStatusForFlags
无论我是否开启蜂窝数据,都不能进行数据交换。当然,当关闭蜂窝数据时,实际上无法连接到互联网,因此数据交换失败。但是,用户仍会收到蜂窝数据对话框。
有没有办法在考虑特定应用程序的蜂窝数据设置的情况下,检测iOS 7和iOS 8上是否有可用的互联网连接 - 而无需每次都使用蜂窝数据对话框麻烦用户?
我的应用程序目前没有任何设置面板,因此我希望避免设置一个(第二个,在应用内的)开关“不使用蜂窝数据”。此外,我也不想将数据交换限制为WiFi连接,因为大多数用户只需要传输2 KB的数据,这并不是一个大问题。