2015-05-20 41 views
5

Mam więc napisaną szybką aplikację, do której chciałbym użyć precyzyjnych linków. Użytkownik kliknąłby na taki, który na trasie adresu URL zawierał różne informacje, takie jak identyfikator postu lub liczba podobnych polubień lub coś w tym stylu. Rozumiem, że można umieścić to w AppDelegate:Skonfiguruj precyzyjne linki w szybkim tempie?

func application(application: UIApplication,openURL url: NSURL,sourceApplication sourceApplication: String?,annotation annotation: AnyObject?) -> Bool { 
    println(url.host as String!) 
    return true 
} 

A to wszystko po appname:// drukuje. Ale w jaki sposób można uzyskać url.host do kontrolera widoku, który będzie przetwarzany w informacje, których potrzebuję. Jeśli deklaracja URL był poza tą funkcją wtedy będę mógł korzystać z tego:

let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate 
let InfoFromDeepLink = appDelegate.url.host 

ale ponieważ jest w środku tego wielkogabarytowych funkcji Objective-C, jestem bezradny. Jak Ty to robisz? Jestem kompletnie zaskoczony. Nie mogę nawet ustawić funkcji na return url.host, ponieważ nie pozwala na to. To właśnie zrobiłbym w JavaScript. Jeśli wiesz również, że JavaScript może to powiedzieć w kategoriach, które programista stron internetowych zrozumie, ponieważ jestem całkiem nowy w tym. To musi być tak proste dla programisty Swift, prawda? Czuję się tak głupi.

Odpowiedz

1

Polecam za pomocą tego cocoapods pakiet o nazwie DeepLinkKit HERE IS THE SOURCE CODE

pod "DeepLinkKit"

Można prosta droga i mają obsługę błędów:

// Matches the URL. 
router[@"timeline"] = ^{ … } 

// Does not match the URL. 
router[@"/timeline"] = ^{ … } 

Here is a good tutorial który pokazuje w głębi, jak to działa .

+0

Czy mogę korzystać z tej biblioteki w moim projekcie Swift? Widzę, że jest napisany w Objective C. – MarksCode

0

Apple nie obsługuje już Deep Links. Obecnie nosi nazwę Universal Links i działa nieco inaczej.

Źródło

teraz, że Apple nie obsługuje schematów URI dla głębokiego linkowania, deweloperzy muszą wdrożyć uniwersalny Links w celu głębokiego linku poprawnie na iOS. Jeśli używasz już schematów URI, zapoznaj się z naszym blogiem na temat przejścia na Universal Links.

Od: HERE

I HERE to kolejny artykuł Universal co one są linki i.