iOS 两应用之间相互跳转
来源:互联网 发布:每周开户数据 编辑:程序博客网 时间:2024/05/29 18:02
最近在整理原来的东西发现跳转另外的应用其实用处还是挺大的,比如最近的”支付宝“比较火,还有微信╮(╯▽╰)╭
先把两个应用设为A和B
A到B
A首先要知道B的位置
那么B就要设置定位标记让A知道 在info.plist加url types
只是跳转过去是没有意义的,还要有参数传递这样才有意义
NSString *paramStr = [NSString stringWithFormat:@"MyAppTest://username=%@&age=%@&address=%@", @"test123", @"100", @"上海市"]; NSURL *url = [NSURL URLWithString:[paramStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; if ([[[UIDevice currentDevice]systemVersion] floatValue]>=10.0) { [[UIApplication sharedApplication] openURL:url options:nil completionHandler:^(BOOL success) { if (success) { NSLog(@"进入成功"); } }]; }else{ [[UIApplication sharedApplication] openURL:url]; }
需要注意的是解析汉字需要UTF8
最后就是B接收A的信息
iOS9之前用
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
iOS9之后用
-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options
解析url时候一定要转化
NSString *urlStr = [[NSString stringWithFormat:@"%@",url] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
这是解析的字符串,也可以用字典转字符串的方法
-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options{ NSString *urlStr = [[NSString stringWithFormat:@"%@",url] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; if ([urlStr hasPrefix:@"JumpTest://"]) { NSLog(@"TestAppDemo1 request params: %@", urlStr); urlStr = [urlStr stringByReplacingOccurrencesOfString:@"JumpTest://" withString:@""]; NSArray *paramArray = [urlStr componentsSeparatedByString:@"&"]; NSMutableDictionary *paramsDic = [[NSMutableDictionary alloc] initWithCapacity:0]; for (int i = 0; i < paramArray.count; i++) { NSString *str = paramArray[i]; NSArray *keyArray = [str componentsSeparatedByString:@"="]; NSString *key = keyArray[0]; NSString *value = keyArray[1]; [paramsDic setObject:value forKey:key]; NSLog(@"key:%@ ==== value:%@", key, value); } } return NO;}
A到B知道了,B到A大同小异
Demo http://download.csdn.net/detail/rpf2014/9697217
0 0
- iOS 两应用之间相互跳转
- iOS两个应用之间相互跳转
- iOS 应用之间相互跳转URL Schemes
- 两个应用之间相互跳转
- IOS应用之间跳转
- IOS应用之间跳转
- ios应用之间跳转
- iOS应用之间跳转
- IOS应用之间跳转
- iOS应用间相互跳转
- iOS应用间相互跳转
- iOS应用间相互跳转
- iOS应用间相互跳转
- iOS应用间相互跳转
- iOS 应用间相互跳转
- iOS App 之间的相互跳转
- IOS应用之间调用跳转
- iOS 应用之间的跳转
- linux系统下使用润乾报表设计器
- code[VS]1743反转卡片 SPlay
- 删除数组零元素
- gps各个模块的解析
- Sparse Matrix --- (0) Intro
- iOS 两应用之间相互跳转
- 非阻塞,et模型 epoll
- Python pandas 0.19.1 Indexing and Selecting Data文档翻译
- 状态模式案例分析
- python搭建本地服务器
- leetcode中的Container With Most Water(C语言)
- [FUNC]AHK获取当前选中的文件路径
- HeadFirst 命令模式 风扇撤回课本实现错误代码及利用栈的解决办法
- nginx访问量统计