Открытый URL-адрес с расширением Today
Я безуспешно пытаюсь открыть глубокую ссылку из моего виджета расширения на основное приложение.
//ExtensionViewController.swift
public func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let url = URL(string: "ACTION_TODAY://")
self.extensionContext?.open(url!, completionHandler: { (completed) in
})
}
Info.plist основного приложения: (Я думаю, ACTION_TODAY://
не нужно, но ACTION_TODAY
один дает мне тот же результат)
//AppDelegate.swift
func application(_ application: UIApplication, open url: URL,
sourceApplication: String?, annotation: Any) -> Bool {
let action_today = "ACTION_TODAY://"
if url.absoluteString.contains(action_today) {
return true
}
return false
}
func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool {
let action_today = "ACTION_TODAY://"
if url.absoluteString.contains(action_today) {
return true
}
return false
}
Когда я выбираю один из элементов collectionView, отображаемых в расширении today, консоль дает мне __55-[_NCWidgetExtensionContext openURL:completionHandler:]_block_invoke failed: Error Domain=NSOSStatusErrorDomain Code=-50 "(null)"
1 ответ
В сегодняшнем контроллере представления поместите следующий код, чтобы открыть главное приложение iOS из расширения.
let appURL = NSURL(string: "StarterApplication://") self.extensionContext?.open(appURL! as URL, completionHandler:nil)