iOS-使用URL Schemes进行应用内跳转处理

在App开发过程中,经常会碰到可以在平台配置网页链接、跳转等等事件;一个页面动态布局之后处理更是繁琐;一个单元格中包含多个按键多个链接。这个时候可以考虑使用URL Schemes来进行。

1、在Info -> URL Types中添加Schemes(如图1)

配置内容可以根据项目进行配置也可以视情况配置;这里举例:com.项目名.action

图1

2、在需要获取到点击事件处,统一添加代码;   

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"com.项目名.action://跳转链接?参数"]];

com.项目名.action -- 是在Schemes中配置的参数;

跳转链接 -- 是判定的依据,如information/detail 是跳转到详情页面去

参数 -- 是所需要传递的参数,如 information/detail?id=100 表示详情的id是100

3、AppDelegate 中找到方法 - (BOOL)application:(UIApplication*)app openURL:(NSURL*)url options:(NSDictionary *)options 

 在- (BOOL)application:(UIApplication*)app openURL:(NSURL*)url options:(NSDictionary *)options 方法中添加跳转事件处理;

其中打印参数url可以看出是第2步中处理的URL,可以依据链接、参数进行调整处理。


这种方式在制定约定之后,可在平台进行动态布局、链接等等配置,App端只需保证约定规范即可实现跳转事件处理。

推荐阅读更多精彩内容