Wie auf nicht unterstützte Frameworks in Watch OS 2 verwiesen wird

Ich habe meine App auf die neueste SWIFT 2.0-Syntax aktualisiert. Dabei ist meine Watchkit-App kaputt gegangen. Das Problem ist, dass die Watchkit-App auf eine Klasse verweist, die auf das Framework AVFoundation verweist. WatchOS2 unterstützt offenbar einige der Standard-Frameworks nicht mehr:

Unterstützung für netzwerkbasierte Vorgänge umfasst die folgenden Technologien:

WatchKit-Erweiterungen können über ein NSURLSession-Objekt direkt auf das Netzwerk zugreifen. WatchKit-Erweiterungen haben uneingeschränkten Zugriff auf die NSURLSession-Funktionen, einschließlich der Möglichkeit, Dateien im Hintergrund herunterzuladen. Informationen zur Verwendung dieser Klasse finden Sie im URL Loading System Programming Guide. Das Watch Connectivity-Framework unterstützt die bidirektionale Kommunikation zwischen Ihrer Watch-App und der iOS-App. Verwenden Sie dieses Framework, um Aktivitäten zwischen den beiden Apps zu koordinieren. Siehe Kommunizieren mit Ihrer Companion iOS-App.

Verfügbare Systemtechnologien für WatchKit

So kann ich jetzt den Watch-Kit-Code nicht kompilieren, da "no such module found" eine Fehlermeldung ist, wenn versucht wird, das AVFoundation-Framework zu verwenden. Wie kann ich das umgehen und diese Klasse und dieses Framework in meiner Apple Watch-App weiter referenzieren? Sollte ich Daten zwischen dem Telefon und der Uhr austauschen? Gibt es eine Möglichkeit, das Framework mit der Erweiterung zu verknüpfen?

Was ich versuche, ist das folgende, in meinem InterfaceController:

 override func willActivate() {
    super.willActivate()

    let defaultsShared = NSUserDefaults(suiteName: "somesharedappgroup")
    let defaults = NSUserDefaults.standardUserDefaults()


     if let barcodeString = defaultsShared!.objectForKey("barcode") as? String {
        if let barcodeContent = RSUnifiedCodeGenerator.shared.generateCode(barcodeString, machineReadableCodeObjectType: AVMetadataObjectTypeCode39Code) {
            barcode.setImage(barcodeContent)
            label.setText("ID: \(barcodeString)")
        } else {
            label.setText("Please setup extensions in the settings of SHPID.")
            barcode.setImage(nil)
        }
    } else {

        label.setText("Please setup extensions in the settings of SHPID.")
        barcode.setImage(nil)

    }
}

DasRSUnifiedCodeGenerator ist eine Klasse, die AVFoundation verwendet, um Barcode-Bilder aus Zeichenfolgen zu generieren. Darüber hinaus ist der Typ, den der Generator annimmt, ein AVObject: AVMetadataObjectTypeCode39Code. Diese Lösung hat im ersten WatchOS gut funktioniert, ist aber in OS 2 weiterhin fehlerhaft. Ich sehe, dass WatchConnectivity möglicherweise eine Lösung ist, und habe nur den Barcode vom Telefon selbst weitergeleitet, aber dafür muss ich iOS 8 nicht mehr unterstützen. Was Ist dies nicht der Fall, ist dies die beste Lösung für die Verwendung von AVFoundation mit WatchOS 2. Wie kann ich dieses Bild bei einem Anruf vom Telefon auf die Uhr übertragen, wenn dies nicht möglich ist? Vielen Dank

Antworten auf die Frage(4)

Ihre Antwort auf die Frage