代码拉取完成,页面将自动刷新
push
页面跳转present
页面弹出invoke
方法调用push
,present
),则需要实现中的相应内容。invoke
),则调用的目标方法必须是类方法
。TargetViewController
中引入接口<GLRouterProtocol>
,并实现相应的指定方法/*
* C函数,无需类名,直接调用
* rto_dsp(NSString *str, BOOL (^handle)(id tgt))
*/
// 从当前页面跳转至TargetViewController
rto_dsp(@"SCHEME://push/TargetViewController", nil);
// 在当前页面弹出TargetViewController
rto_dsp(@"SCHEME://present/TargetViewController", nil);
// <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
/*
* 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”
GLRouter is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'GLRouter'
目前市面上外部跳转入进app的方案,方式大致分为两种:
例如:weixin://dl/scan
优势:调用简单
劣势:部分浏览器无法跳入,例如微信中的网页浏览;无法通过JS判断app是否启动
必须:iOS开发时配置一个与app相关联的域名
LiGuoliang 36617161@qq.com
GLRouter is available under the MIT license. See the LICENSE file for more info.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
代码活跃度
社区活跃度
团队健康
流行趋势
影响力
:与代码提交频次相关
:与项目和用户的issue、pr互动相关
:与团队成员人数和稳定度相关
:与项目近期受关注度相关
:与项目的star、下载量等社交指标相关