iOS12&Xcode10适配问题调研

刘海屏判断

#define isNotchMobile ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? (CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size)||CGSizeEqualToSize(CGSizeMake(1242, 2688), [[UIScreen mainScreen] currentMode].size)||CGSizeEqualToSize(CGSizeMake(828, 1792), [[UIScreen mainScreen] currentMode].size)) : NO)
  • 环境

    Xcode 10.0 beta 3
    iOS12模拟器
    iPhone 6 iOS 12.0 beta 3

一:iOS12&Xcode10问题

1:libstdc++库在xcode 10被移除

解决方案

  • 临时解决方案

    将libstdc++6.0.9.tbd从xcode 9中拷贝至 xcode 10中,这将导致无法使用模拟器。并且苹果方面也表示这种方式可能会不让过审。

  • 永久解决方案

    将依赖libstdc++的代码迁移到libc++。参考Where is libstdc++.6.dylib in xcode10 beta?

2:Copy Pods Resources失效

解决方案

需要升级CocoaPods版本>=1.4.0以上.参考Xcode10 beta can't load bundles from CocoaPods

3:网络状态

有些app为了通过状态栏的网络状态指示器去判断手机当前联网状态,iOS12 更改了StatusBar内部结构。参考iOS12 网络状态

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容