2015-04-12 49 views

回答

6

当有人点击链接并将操作系统路由到您的应用程序时,您的UIApplicationDelegate中的两种方法之一将被调用。

  1. 如果应用程序已经在运行,那么该方法将是

- application:openURL:sourceApplication:annotation:

其中url参数将是吸引用户那里NSURL

  • 如果应用程序冷启动,则该方法将是
  • - application:didFinishLaunchingWithOptions:

    launchOptions参数将包含一个称为UIApplicationLaunchOptionsURLKey键的量,值将用于启动应用程序的NSURL

    在这两种情况下,你最终的NSURL,您可以通过获取absoluteString并在其上做字符串操作,或者使用类似NSURLComponents手动解析。

    为您的网址NSURLComponents的解决方案可能是:

    NSURLComponents *components = [NSURLComponents componentsWithURL:url resolvingAgainstBaseURL:NO]; 
    NSString *scheme = components.scheme; // travelbrand 
    NSString *host = components.host; // hotel 
    NSString *path = components.path; // /123 
    
    +0

    谢谢!我知道了。 – user10017