iOS之常见功能集合iOS进阶URL Scheme

深入浅出话iOS URL Scheme(二)实战上

2016-08-26  本文已影响1474人  Job_Yang

实战篇(上)

注册自定义URL Scheme

添加URL Types.png 定义URL identifier.png 添加URL Schemes.png 定义scheme.png

相应代码实现

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
    
    NSLog(@"从哪个app跳转而来 Bundle ID: %@", sourceApplication);
    NSLog(@"URL scheme:%@", [url scheme]);
    NSLog(@"URL query: %@", [url query]);
    
    // 提示并展示query
    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"打开URL Scheme成功"
                                                        message:[url query]
                                                       delegate:nil
                                              cancelButtonTitle:@"确定"
                                              otherButtonTitles:nil];
    [alertView show];
    
    return YES;
}

这段代码其实只做了2件事:打印一些必要的信息到控制台,然后弹出一个提示框告诉你Scheme是否打开成功。其中query为查询串,里面存储着参数信息。

打开Scheme

驼峰写法.png

你可以尝试一下②中的写法,效果是一样的。这也就是我上面说的Scheme对大小写并不敏感。


非驼峰写法.png 提示是否打开该链接.png

更复杂的Scheme

控制台的输出


控制台输出.png

在代码中直接打开Scheme

NSString *scheme = @"schemedemo://?parameter2=openScheme";
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:scheme]];

效果与在Safari中打开一致


直接打开Scheme.png
上一篇 下一篇

猜你喜欢

热点阅读