iOS开发 打开第三方应用并且传参数

 时间:2024-10-12 20:23:58

1、创建两个App,一个作为主端(打开方,传递参数),一个作为接收端(被打开方,接收参数)。适配iOS 8 ~ iOS 10。如打开baidumap、mqq、weixin/wechat、sinaweibo、alipay、taobao、openapp.jdmobile等。往这几个App传参需要看他们的开发文档咯,这样才能打开指定页并传参数。

iOS开发 打开第三方应用并且传参数

2、配置接收端 1、设Bundle Identifier为com.company.openapp 2、选中工程文件,TARGETS -> Info,找到最下面的URL Types项添加一个Item; 3、将URL Schemes设置为openapp(大小写都可以,推荐小写)。

iOS开发 打开第三方应用并且传参数

3、配置主端 1、设Bundle Identifier为com.company.mainapp(随意) 2、找到Info.plist文件,选中按右键,Open As -> Source Code,添加上面Schemes的值openapp到白名单列表。 <key>LSApplicationQueriesSchemes</key> <array> <string>openapp</string> </array>

iOS开发 打开第三方应用并且传参数

4、在主端添加打开接收端方法 1、添加一个按钮,并实现点击事件; 2、拼接参数到字符串openapp://后面; 3、配置析箦睬鬏链接,实现苹果打开第三方协议。注:有中文字符的要记得转换一下。NSString *string = [NSString stringWithFormat:@"openapp://%@", @"我是好人"];NSURL *url = [NSURL URLWithString:[string stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];[[UIApplication sharedApplication] openURL:url];

iOS开发 打开第三方应用并且传参数

5、在接收端实现接收参数方法 1、打开AppDelegate.m文件; 2、添加系统自带代理方法,接收Url参数。- (BOOL)application:(U朐袁噙岿IApplication *)application handleOpenURL:(NSURL *)url{ if ([[url scheme] isEqualToString:@"openapp"]) { NSString *text = [[url host] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; NSLog(@"接收到:%@", text); return YES; } return NO;}

iOS开发 打开第三方应用并且传参数

6、完成。运行两个App,然后在主端打开,弹出权限提示,允许后就发现会跳转到接收端,并显示接收到的参数。

7、如果您喜欢,请按投票;如果有疑问,欢迎一起探讨。

iOS开发 打开第三方应用并且传参数
  • Mac 安装Corel Painter 2019
  • Win10如何阻止计算机加入家庭组
  • ipadOS如何分屏
  • 苹果手机如何不用iTunes导入本地歌曲和通讯录
  • 抹茶冻的家常做法
  • 热门搜索
    关于圣诞节的英语手抄报 2020鼠年手抄报 防震手抄报 环保手抄报模板 英语手抄报题目 诚信手抄报图片大全 元宵节手抄报图片大全 欢庆六一节手抄报 英语手抄报设计 建国手抄报文字内容