在我的詩麗吉示範項目,我做了MyMessageHandler
對象句柄INSendMessageIntent
,並實現了方法,通過協議INSendMessageIntentHandling
的一個定義:在我的詩麗吉的演示,應用:continueUserActivity:restorationHandler:法不叫
- (void)handleSendMessage:(INSendMessageIntent *)intent completion:(void (^)(INSendMessageIntentResponse * _Nonnull))completion {
NSLog(@"%@", NSStringFromSelector(_cmd));
NSUserActivity *userActivity = [[NSUserActivity alloc] initWithActivityType:NSStringFromClass([INSendMessageIntent class])];
userActivity.title = NSStringFromClass([INSendMessageIntent class]);
INSendMessageIntentResponse *response = [[INSendMessageIntentResponse alloc] initWithCode:INSendMessageIntentResponseCodeSuccess userActivity:userActivity];
completion(response);
}
我確實使用字符串設置了title
屬性的值,並確保userActivity
不是零對象。然後,我實現方法命名爲:(BOOL)application:continueUserActivity:restorationHandler:
上AppDelegate.m
並返回YES
而現在,問題來了:
運行主程序,然後,調試擴展程序。
方法(BOOL)application:continueUserActivity:restorationHandler:
沒有叫,我已經添加了一個名爲項目:INSendMessageIntent
用於在擴展程序Info.plist文件IntentsSupported陣列。
- 的Xcode 8.2.1
謝謝!
你有沒有解決這個問題?我遇到了同樣的問題。 –