【问题标题】:iOS programatic Cellular Data ControliOS 程序化蜂窝数据控制
【发布时间】:2016-05-02 17:49:25
【问题描述】:

有没有办法以编程方式访问有时显示在应用程序中的“蜂窝数据”选项?

背景

我有一个通过互联网上传数据文件的应用程序。我已为用户提供了在未连接到 WiFi 时禁用此上传功能的选项。

如何

我目前正在做的是我写了一个settings.bundle,它允许用户在我的代码中选择一个名为用户蜂窝数据的选项我正在使用来自 (@987654321 的Reachability.swift 文件@) - 这是对可达性 iOS api 的快速包装 - 基本上它可以告诉您是否有 Wifi 或蜂窝网络访问。

我的代码

在我的代码中,我在上传之前检查了一个 NSUserDefaults 值(由settings.bundle 设置)

let uploadOverCellular = NSUserDefaults.standardUserDefaults()
                         .boolForKey("allow_upload_over_cellular")

如果这是真的并且我有 Wifi 或蜂窝网络,我允许继续上传。如果这不是真的并且我有蜂窝网络,我会停止上传。

所以这很好用,然后突然我在查看我的应用程序的设置,我注意到我既有 System 级别的 Cellular Data 选项以及我的自定义使用蜂窝数据选项。出现

问题

显然,这可能给用户带来一些困惑 - 我想知道是否有 API 访问此系统级别 Cellualr Data 选项 - 或其他控制方式这个设置以编程方式 - 我怀疑没有,但我希望有人能证明我错了。

【问题讨论】:

    标签: ios swift networking settings


    【解决方案1】:

    我不知道是否可以访问全球蜂窝数据设置,但是如果您使用NSURLSession API 下载数据,您可以使用allowsCellularAccess = false 创建一个NSURLSessionConfiguration

    【讨论】:

      猜你喜欢
      • 2016-03-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-20
      • 1970-01-01
      • 2013-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多