Ich habe eine Funktion in iOS-Code, der das Audio vom iPhone aufzeichnet.Verwenden Sie WatchKit Schaltfläche zum Aufzeichnen von iPhone
Jetzt möchte ich mit der Aufnahme beginnen, sobald ich einen Knopf aus der WatchKit App gedrückt habe. Die Aufnahme wird auf dem Handy gemacht, nicht Apple Watch.
Ich verwende den folgenden Code auf WatchKit, um das Signal an das iPhone zu senden, um die Aufnahme zu starten.
[self.session sendMessage:@{"command": "start"} replyHandler:nil errorHandler:nil]
Und ich habe den folgenden Handler auf iOS-Code.
Sobald ich den Befehl von WatchKit erhalte, rief ich meine Aufnahmefunktion auf iOS-Code.
Es wird erfolgreich ausgeführt. Die Ausgabedatei ist jedoch leer und die Datenlänge ist 0.
Ist es möglich, dies zu tun? Oder muss ich separat von WatchKit aufzeichnen?
Danke.
Vielleicht ist es ein Berechtigungsproblem, bei dem Ihre App nur Audio im Vordergrund aufnehmen kann. watchOS 'sendMessage' bringt die iOS App nicht in den Vordergrund. Zeichnet deine iOS App den Ton im Vordergrund oder im Hintergrund auf? –
@PetahChristian, meine App hat Hintergrundaufnahmen jetzt. Ich kann die rote doppelte Statusleiste sehen, als ich auf WatchKit drückte. Die Datenlänge meiner Datei ist jedoch immer noch Null. Danke ... – moeseth
@PetahChristian, ich konnte es lösen. Es ist, weil ich die Funktion von Hintergrundthread anrufe. Die Verwendung von GCD zum Aufrufen von Haupt-Thread löste es. Vielen Dank. – moeseth