JLRoutes的使用说明

JLRoutes原理:

1.它是通过url scheme来实现app内部,web到app,app与app之间跳转的第三方库

2代码分析:JLRoutes是个单例:有个字典routeControllersMap,然后字典是以scheme为key,routes(NSArray)为value,每次调用addRoute方法会将注册的url转换为JLRRouteDefinition类型,存在key为scheme的routes里。openurl时查找route,找到即回调block,具体的跳转我们可以在block里实现;

使用步骤

1 导入JLJLRoutes Roocoapods,编辑podfile,pod 'JLRoutes',然后pod install 即可 

2. 用Xcode打开.xcworkspace文件,打开项目的info.plist文件,并增加URL Types,在其中添加自定的scheme,URL identifier 最好设置复杂些 , 保证其唯一性可以像bundle id一样定义 如图:


JLRoutes的使用说明_第1张图片

3 .切换到Appdelegate.m文件,在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法中加入route{{ :cms:文档教程:iosroute1.png?}}  

如图:


JLRoutes的使用说明_第2张图片

4.实现- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary*)options方法,每次openUrl时都会调这个方法用来解析url

如图:

JLRoutes的使用说明_第3张图片

5.切换到想要route跳转的实现文件里,在跳转方法里用自定义死的route,通过openurl方式跳转如图:


JLRoutes的使用说明_第4张图片

Demo链接

你可能感兴趣的:(JLRoutes的使用说明)