iOS Неожиданное состояние платформы (ожидаемое «os», «arch» или «swift») - достижимость - PullRequest
0 голосов
/ 26 сентября 2018

Я просто обновляю свои стручки.после обновления Reachability, вызывающее ошибку

Неожиданное состояние платформы (ожидаемое «os», «arch» или «swift»)

Я пытался собрать и очиститьНо это не работает.какое решение?Here's Screenshot

Пожалуйста, помогите мне исправить это.Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 27 сентября 2018

Вы можете попробовать, как говорит Мухаммед.

Я предлагаю следующий код, который очень легко поддерживать.Скопируйте, вставьте следующий код в файл и попробуйте сами.

import Foundation
import SystemConfiguration

class Network {

    // Declarations
    static let shared = Network()


    // Check has Network
    func isConnected() -> Bool  {

        var zeroAddress = sockaddr_in()
        zeroAddress.sin_len = UInt8(MemoryLayout.size(ofValue: zeroAddress))
        zeroAddress.sin_family = sa_family_t(AF_INET)

        let defaultRouteReachability = withUnsafePointer(to: &zeroAddress) {
            $0.withMemoryRebound(to: sockaddr.self, capacity: 1) {zeroSockAddress in
                SCNetworkReachabilityCreateWithAddress(nil, zeroSockAddress)
            }
        }

        var flags = SCNetworkReachabilityFlags()
        if !SCNetworkReachabilityGetFlags(defaultRouteReachability!, &flags) {
            return false
        }
        let isReachable = (flags.rawValue & UInt32(kSCNetworkFlagsReachable)) != 0
        let needsConnection = (flags.rawValue & UInt32(kSCNetworkFlagsConnectionRequired)) != 0
        return (isReachable && !needsConnection)
    }

}

Создайте файл swift и поместите вышеуказанный код в этот файл.Всякий раз, когда вы хотите проверить состояние сети, просто используйте следующий код

if Network.shared.isConnected() {

   print("Network available")
} else {

   print("Not connected")
}
0 голосов
/ 26 сентября 2018

используйте это 1

#if (arch(i386) || arch(x86_64)) && os(iOS)

#endif
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...