iOS项目开发中,同一个APP,在打包时,通常有三种版本:mobile版本,inhouse版本,App Store版本。前者用于程序员debug,inhouse用于测试同学、产品同学和公司其他同学的安装,最后的App Store则是发布版本。三个APP只是bundleID不同,证书不同。功能是完全一致。同一个设备上可安装三个APP,有些情况会给开发调试造成困扰,比如:APP带有第三方登录功能,用mobile版本APP登录,调起微信,授权后返回。由于mobile,inhouse,App Store三个APP都可相应URL schema。调起那个就要看系统的心情了。很可能不是你想要的mobile版。
        为了解决上述问题。可以针对不同的版本响应不同的URL schema(微信可以申请多个APPkey,正好一种版本,分配一个)
        在APP的info.plist中可以设置URL schema(在工程文件可视化配置中,同样可以设置)。URL schema不再写死,而是写成变量(XCCONFIG_URL_SCHEMA)如下图。

(注意看Item1的值,是个变量,不再写死)

在xcconfig中修改这个变量,如下代码:

// MOBILE || INHOUSE || APPSTORE
//在配置好自动打包脚本,该处会自动修改。
XCCONFIG_ACCOUNT = MOBILE
//防止安装多个app,url schema乱跳问题。仅仅对微信方式有效。微信可申请多个APP key
XCCONFIG_URL_SCHEMA_MOBILE = wxaaaf9a3
XCCONFIG_URL_SCHEMA_INHOUSE = wxe922e194
XCCONFIG_URL_SCHEMA_APPSTORE = wx3f994a5
//拼接起来
XCCONFIG_URL_SCHEMA =$(XCCONFIG_URL_SCHEMA_$(XCCONFIG_ACCOUNT))

随着XCCONFIG_ACCOUNT的改变,URL schema也会变。最终就是

iOS区分不同版本URL schema相关推荐

  1. 微信url schema,deep link

    2019独角兽企业重金招聘Python工程师标准>>> 微信url schema清单 *官方未公开的参数,不建议使用在生产环境,仅作学习参考. weixin://dl/scan 扫一 ...

  2. IOS 14.5版本之解档和归档的API学习

    IOS 14.5版本之解档和归档的API学习 第一部分 回顾一下老api的使用,将对象持久化至硬盘里面. 1.为什么我们要学习解档和归档, 有什么作用.当 plist 文件存储无法满足我们的需求的时候 ...

  3. iOS 11.2 版本紧急修复黑屏 Bug,却遇 FaceID 识别错误,真实原因在此

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 自 12 月 1 日起,陆续有很多苹果用户反映搭载 iOS 11.1.2 的 iPhone ...

  4. iOS 判断系统版本

    方案一 double systemVersion = [UIDevice currentDevice].systemVersion.boolValue;if (systemVersion >= ...

  5. iOS删除模拟器版本

    iOS删除模拟器版本 前往以下地址 /Library/Developer/CoreSimulator/Profiles/Runtimes ~/Library/Caches/com.apple.dt.X ...

  6. FaceBook URL schema

    名称 URL schema 首页 fb://feed 前台好友 fb://requests 通知 fb://notifications 照片 fb://albums id搜索好友 fb://page/ ...

  7. Xcode各版本官方下载及百度云盘下载, Mac和IOS及Xcode版本历史.

    Xcode各版本官方下载及百度云盘下载, Mac和IOS及Xcode版本历史. 官方下载, 用开发者账户登录,建议用Safari浏览器下载. 官方下载地址: https://developer.app ...

  8. XDAG iOS钱包Beta版本发布

    XDAG iOS钱包Beta版本发布 感谢Solar和Bill,经过一段时间调试XDAG iOS钱包目前已提供下载以供大家测试,请务必做好备份.(请使用钱包提供的备份功能) 目前仅提供企业包下载 下载 ...

  9. 如何给未越狱的ios下载历史版本的app?未越狱IOS系统安装历史版本软件的方法,iPhone未越狱的手机如何安装旧版本APP?

    如何给未越狱的ios下载历史版本的app?未越狱IOS系统安装历史版本软件的方法,iPhone未越狱的手机如何安装旧版本APP? IOS由于系统机制问题不支持版本回退 某些更新可能导致闪退 卡顿等未知 ...

最新文章

  1. shell 动态进程守护
  2. Xilinx 推出 reVISION,继续拓展机器学习市场
  3. Microsoft主要服务器产品使用的网络端口
  4. java增加缓存,java – 如何增加Integer对象的缓存大小
  5. MPlayer在ARM上的移植(S5PV210开发板)
  6. Netty 4.x – ByteBuf
  7. 收集的安装VS2005 sp1的注意事项
  8. Symbol Mc1000 Text文本阅读器整体代码
  9. WordPress删除重复文章插件
  10. 【转载】8天学通MongoDB——第八天 驱动实践
  11. Apizza 在线Api接口测试工具
  12. 循迹小车三个感应c语言程序,循迹小车的C语言程序(带注释)
  13. linux 时区文件的规则,linux – 如何将POSIX时间转换为Olson时区文件...
  14. 波许教授的《最后一课》有感
  15. 听说有人谋求稳定的工作?
  16. Numpy之数据归一化
  17. 喝一碗孟婆汤,走一趟奈何桥
  18. 如何把get请求改成post
  19. 第十一课_编程语言发展史
  20. 【腾讯快直播】IJK播放器改造:传输层低延迟播放优化

热门文章

  1. 用WCAT进行IIS压力测试
  2. iFLEX-Viper™是一款紧凑型多波长合束激光器,使用单模光纤耦合输出。最多将5钟波长(405, 4...
  3. 计算机主板性能最好,组装电脑之快速了解电脑主板性能,如果选购合适的主板...
  4. 移动NB模块M5311(lwm2m协议登录详解)
  5. Windows驱动程序的安装(一)
  6. 对String中intern()方法的认识
  7. 计算机应用城市轨道交通,计算机应用-201402-城市轨道交通系统运行仿真平台的设计与实现.pdf...
  8. 第一章(第一节):数、式、方程与方程组
  9. C - Concatenation
  10. 用两个重要极限求极限·常用的等价无穷小以及运算注意