【问题标题】:How can I obtain the WLAN ISP name in iOS?如何在 iOS 中获取 WLAN ISP 名称?
【发布时间】:2018-02-28 04:14:02
【问题描述】:

小伙伴们,

我正在使用最新的 SDK (11.2)Swift 4 开发一个 iOS 应用程序

我正在寻找一种方法来获取 WLAN ISP 名称。

(例如,我家的 ISP 叫 NET1 Ltd.

提前致谢!

【问题讨论】:

  • 欢迎来到 Stackoverflow。这不是代码编写服务,而且不清楚你在说什么 SDK?
  • 嗨,@vadian,我正在使用最新的 SDK (iOS 11.2) 开发一个应用程序。 Swift 4 被选为语言版本。
  • 那么您想要用户连接的网络的 ISP 名称吗?
  • 没错,@CodeDifferent。

标签: ios swift3 swift4 wifi


【解决方案1】:

CTCarrier 只会在您的 iOS 设备有 SIM 卡时返回运营商信息。获得它的更好方法是通过像ipinfo.io 这样的网络服务。这是 Playground 中的一个示例:

import PlaygroundSupport
import Foundation

PlaygroundPage.current.needsIndefiniteExecution = true

let url = URL(string: "https://ipinfo.io/org")!
URLSession.shared.dataTask(with: url) { data, response, error in
    guard error == nil else { print(error!); return }
    guard let data = data else { print("Empty data"); return }

    if let ispName = String(data: data, encoding: .utf8) {
        print(ispName)
    } else {
        print("Can't obtain ISP name")
    }
}.resume()

【讨论】:

    【解决方案2】:

    Core WLAN 框架提供 API 用于查询 AirPort 接口和选择网络。

    Core Telephony 框架提供有关用户的蜂窝服务提供商的信息。您可以使用CTCarrier 类获取有关用户家庭蜂窝服务提供商的信息。

    【讨论】:

    • 嗨,@Rocky,我没有指定我正在开发的平台是我的错误。我正在制作一个 CoreWLAN 不可用的 iOS 应用程序。我正在使用 CTCarrier 获取有关蜂窝网络 WWAN 的一些信息。谢谢!
    猜你喜欢
    • 2012-06-13
    • 2012-03-06
    • 2020-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-13
    • 1970-01-01
    相关资源
    最近更新 更多