2017-07-28 1 views
0

Ich schaffe es endlich universelle Links zu machen, wenn ich auf den Link klicke öffnet sich meine App. aber es wird nicht in der Benutzeraktivität oder der Quellanwendung angezeigt. weil ich es auf den spezifischen View-Controller umleiten möchte. Beispiel, wenn ich öffne "https: // www.myWeb.com/forgotPassword"Universelle Links, continueUserActivity und sourceApplication werden nicht aufgerufen

Es wird auf forgowPasswordViewController umleiten, muss ich den Link lesen.

Warum ist es nicht angezeigt, in der Benutzeraktivität

func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool { 
    print(url) 
    let urlHost : String = url.host as String! 
    print("HELLO") 

     let main : UIStoryboard = UIStoryboard(name: "Main", bundle: nil) 
     let inner : ResetPasswordViewController = main.instantiateViewController(withIdentifier: "ResetPasswordViewController") as! ResetPasswordViewController 
     self.window?.rootViewController = inner 
     self.window?.makeKeyAndVisible() 
     return true; 



} 

func application(application: UIApplication, continueUserActivity userActivity: NSUserActivity, restorationHandler: ([AnyObject]?) -> Void) -> Bool { 
    if userActivity.activityType == NSUserActivityTypeBrowsingWeb { 
     let url = userActivity.webpageURL! 
     print(url) 
     print("HELLO WORLD") 
    } 
    return true 
} 

weiter und das ist, was mit der Quellanwendung geschehen ist, kann mir jemand sagen, warum es so ist?

sourceApplication

+0

"https: // www.myWeb.com/forgotPassword" - es ist ein Leerzeichen zwischen "https: //" und „www " – suhit

+0

der Platz, den ich nur hinzugefügt habe, um in diesem Beitrag angezeigt werden zu können, habe ich nicht Platz in der Verbindung –

+0

Bitte den Code als Code formatiert und nicht als Screenshot. –

Antwort

0

GELÖST es ist nur wegen der Datentyp, ich setzte ANYOBJECT statt Any. aber die Compiler mir nicht sagen, ob ANYOBJECT nicht

verwendet werden kann
func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Void) -> Bool { 
    print("Continue User Activity: ") 
    if userActivity.activityType == NSUserActivityTypeBrowsingWeb { 
     let url = userActivity.webpageURL! 
     print(url.absoluteString) 
     //handle url 
    } 
    return true 
} 
Verwandte Themen