iOS18 MSSBrowse闪退

iOS18 MSSBrowse闪退

问题

最近升级了电脑系统(15.4.1),并且也升级了xcode(16.3)开发工具。之后打包公司很早之前开发的项目。

上线之后发现在苹果手机系统18以上,出现了闪退问题。

涉及到的是第三方MSSBrowse,在选择图片放大的时候会出现APP卡顿及闪退问题。
经过断点排查发现是第三方的MSSBrowseBaseViewController.m文件里面出现的问题。下面是解决方法。

方案

打开第三方MSSBrowseBaseViewController.m文件。

找到createBrowseView方法,将里面的

objectivec 复制代码
 _browseRemindView = [[MSSBrowseRemindView alloc]initWithFrame:_bgView.bounds];
        [_bgView addSubview:_browseRemindView];
复制代码
 修改为
objectivec 复制代码
  if([[[UIDevice currentDevice]systemVersion]floatValue] >= 18.0){
    [_bgView addSubview:_browseRemindView];
}else{
    _browseRemindView = [[MSSBrowseRemindView alloc]initWithFrame:_bgView.bounds];
    [_bgView addSubview:_browseRemindView];
}

结果

出现这个问题,可能是 iOS 18 引入的更严格的视图层级管理规则。

最终结果如下图

下面是修改后的文件,在项目中使用正常

MSSBrowseBaseViewController.m

相关推荐
皇上o_O6 小时前
深入理解 Swift Concurrency:从 async/await 到隔离域
ios
CocoaKier8 小时前
1月12日最新用户隐私保护政策出炉,政策解读
ios
Mr -老鬼11 小时前
移动端跨平台适配技术框架:从发展到展望
android·ios·小程序·uni-app
tiantian_cool1 天前
Claude Code 四大核心技能使用指南
ios
冰淇淋真好吃1 天前
iOS实现 WKWebView 长截图的优雅方案
ios
TG_imqfxt6661 天前
虚拟机下安装苹果系统,虚拟机下如何实现协议群发iMessage?
python·objective-c
前端不太难2 天前
Flutter / RN / iOS,在长期维护下的性能差异本质
flutter·ios
搜狐技术产品小编20232 天前
精通 UITableViewDiffableDataSource——从入门到重构的现代 iOS 列表开发指南
ios·重构
tangweiguo030519873 天前
SwiftUI 状态管理完全指南:从 @State 到 @EnvironmentObject
ios
Digitally3 天前
如何轻松地将文件从 PC 传输到 iPhone
ios·iphone