アプリにハンドオフを実装しました。アプリがフォアグラウンドまたはバックグラウンドで実行されている場合、Web からアプリへのハンドオフ、およびその逆で正常に動作しています。
ただし、アプリが実行されていない場合、ユーザーが web からアプリへのハンドオフからアプリを起動すると、launchOptions ディクショナリで が取得UIApplicationLaunchOptionsUserActivityDictionaryKey
されますが、アクティビティへの参照が欠落しています。
スクリーンショットを参照してください:
ご覧のとおり、の ID のみを取得していNSUserActivity
ます。これは iOS 9 のバグですか?
ID を使用してアクティビティへの参照を取得する方法はありますか?
編集、ここにコードがありますが、これは関係ないと思います
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
if (launchOptions && [[launchOptions allKeys] containsObject:UIApplicationLaunchOptionsUserActivityDictionaryKey]) {
__block NSUserActivity *activity;
NSDictionary *userActivityDictionary = [launchOptions objectForKey:UIApplicationLaunchOptionsUserActivityDictionaryKey];
if (userActivityDictionary) {
[userActivityDictionary enumerateKeysAndObjectsUsingBlock:^(id _Nonnull key, id _Nonnull obj, BOOL * _Nonnull stop) {
if ([obj isKindOfClass:[NSUserActivity class]]) {
activity = obj;
}
}];
}
//app was started by URL (deep linking), check parameters
if (activity) {
NSURL *url = activity.webpageURL;
//resume from URL
}
}
return YES;
}