Ich versuche, die übergeordnete iOS-App aus der Watchkit-App zu starten. Ich verwende URL-Schema, um die App zu starten. Aber es scheint wiehandleWatchKitExtensionRequest heißt nicht
-(void)application:(UIApplication *)application handleWatchKitExtensionRequest:(NSDictionary *)userInfo reply:(void (^)(NSDictionary *))reply
ist nie genannt. Es sieht so aus, als ob die Watch App die App im Hintergrund startet. Die übergeordnete App verarbeitet jedoch nicht die Watchkit-Anfrage. Ich habe meinen Ansatz in einem neuen Projekt versucht und es funktioniert perfekt. Gibt es etwas, worauf ich achten muss?
Ich habe bereits versucht, Debug> Attach to process> myapp und setzen Sie einen Haltepunkt in handleWatchKitExtensionRequest-Methode, um zu bestätigen, ob es aufgerufen wird und es nicht aufgerufen wird.
Hier ist der Fortschritt, ich rufe openParentApplication auf, wenn eine Schaltfläche in Watch app geklickt wird.
@IBAction func viewOniPhoneAction() {
let userInfo: [NSObject : AnyObject] = [
"userID" : user.userID
]
WKInterfaceController.openParentApplication(userInfo, reply: { (userInfo : [NSObject : AnyObject]!, error : NSError!) -> Void in
})
}
Hier ist mein App delegeate
- (void)application:(UIApplication *)application handleWatchKitExtensionRequest:(NSDictionary *)userInfo reply:(void(^)(NSDictionary *replyInfo))reply
{
NSDictionary *replyDict = @{@"response": @"done"};
reply(replyDict);
}
ich reply()
in handleWatchKitExtensionRequest
versucht, aber ich habe diesen Fehler in dem Antwortblock von Merk App
Error Error Domain=com.apple.watchkit.errors Code=2 "The UIApplicationDelegate in the iPhone App never called reply() in -[UIApplicationDelegate application:handleWatchKitExtensionRequest:reply:]" UserInfo=0x60800026e0c0 {NSLocalizedDescription=The UIApplicationDelegate in the iPhone App never called reply() in -[UIApplicationDelegate application:handleWatchKitExtensionRequest:reply:]}
Nein, ich habe bereits versucht, dass ein. Ich glaube das Problem ist, um eine Hintergrundaufgabe in handleWatchKitExtensionRequest zu starten, muss die Methode aufgerufen werden. Damit kann der Code innerhalb der Methode ausgeführt werden. Es scheint, als ob die Methode nicht einmal aufgerufen wird. – cloudy45man
Haben Sie das versucht? http://stackoverflow.com/questions/28112445/handlewatchkitextensionrequest-not-respondering-to-openparentapplication-in-watchk – vomako
Ja, es funktioniert nicht. Gibt es eine Einstellung, die ich prüfen kann, ob die Eltern-App und die Watch-App korrekt verknüpft sind? – cloudy45man