• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

GLRouter:

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

GLRouter

开源软件地址:

https://gitee.com/GL9700/GLRouter

开源软件介绍:

logo

GLRouter

VersionLicensePlatform

快速开始

基本概念

  1. Router支持,三种路由方式
    • push 页面跳转
    • present 页面弹出
    • invoke 方法调用
  2. 目标如果需要被展示(push,present),则需要实现中的相应内容。
  3. 目标如果需要被调用(invoke),则调用的目标方法必须是类方法

使用(页面跳转)

  1. 在跳转目标TargetViewController中引入接口<GLRouterProtocol>,并实现相应的指定方法
  2. 使用如下代码
    /** C函数,无需类名,直接调用* rto_dsp(NSString *str, BOOL (^handle)(id tgt))*/// 从当前页面跳转至TargetViewControllerrto_dsp(@"SCHEME://push/TargetViewController", nil);// 在当前页面弹出TargetViewControllerrto_dsp(@"SCHEME://present/TargetViewController", nil);

使用(方法调用)

  1. 确认在目标Class存在该函数,例如
    // <Tools.h>@interface Tools : NSObject@end// <Tools.m>@implementation Tools- (BOOL)sendMessage:(NSString *)msg from:(NSString *)from to:(NSString *)to {    BOOL success = (msg!=nil && from!=nil && to!=nil);    if(success){        NSLog(@"%@ 给 %@ 发送了消息: %@", from, to, msg);    }else{        NSLog(@"发送失败");    }    return success;}@end
  2. 使用如下代码进行调用
    /** C函数,无需类名,直接调用* rto_ivk(NSString *str, void (^handle)(id ret))*/// 无返回值rto_ivk(@"SCHEME://invoke/Tools/sendMessage:from:to:?p1=Hello World&p2=Tom&p3=Jerry", nil); // output “Tom 给 Jerry 发送了消息: Hello World”// 有返回值rto_ivk(@"SCHEME://invoke/Tools/sendMessage:from:to:?p1=Hello World&p2=Tom&p3=Jerry", ^(id ret){    // ret 为返回值    BOOL result = [ret BoolValue];}); // output “Tom 给 Jerry 发送了消息: Hello World”

RouterURL的构成

安装

GLRouter is available through CocoaPods. To installit, simply add the following line to your Podfile:

pod 'GLRouter'

题外

目前市面上外部跳转入进app的方案,方式大致分为两种:

  • schema (iOS all)
    例如:weixin://dl/scan优势:调用简单劣势:部分浏览器无法跳入,例如微信中的网页浏览;无法通过JS判断app是否启动
  • Universal Link (iOS9+)
    必须:iOS开发时配置一个与app相关联的域名

History

  • 2.1.0
    • 增加了便捷初始化方案: rto_init_tab( scheme, routingTableName, routingTableBundle )

Author

LiGuoliang [email protected]

License

GLRouter is available under the MIT license. See the LICENSE file for more info.


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap