【iOS】XCode14 & iOS16适配 pod签名 12.1闪退

一、iOS16手机开启开发者模式 “developer mode disable”

iOS16手机未打开开发者模式时:

  • 1、Xcode 无法选中 iOS16的设备,报错:developer mode disable
  • 2、无法打开升级前编译的App

解决办法:

在你的iPhone中操作调试手机–设置–隐私与安全–(滑动到最底部)开发者模式–开启开发者模式(需要重启手机)

二、Pod工程中的Bundle target签名报错

方法一:手动选择Pod工程中的Bundle target 签名中的Team,与主工程一致
方法二: 在 Podfile 文件 中设置你的开发者的Team ID
post_install do |installer|
  installer.generated_projects.each do |project|
    project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings["DEVELOPMENT_TEAM"] = "Your Team ID"
         end
    end
  end
end
方法三: 在 Podfile 文件 中设置 CODE_SIGN_IDENTITY (推荐此方法)
post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '10.0'
            
            config.build_settings['EXPANDED_CODE_SIGN_IDENTITY'] = ""
            config.build_settings['CODE_SIGNING_REQUIRED'] = "NO"
            config.build_settings['CODE_SIGNING_ALLOWED'] = "NO"
        end
    end
end

三、XCode14打出来的包多了一些系统库引起iOS 12.1及以下启动闪退

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Termination Description: DYLD, Library not loaded: /usr/lib/swift/libswiftCoreGraphics.dylib | Referenced from: /var/containers/Bundle/Application/9A2A2768-C90D-4044-9E39-9F46EF5F12D8/XXX.app/XXX
Reason: image not found
Triggered by Thread:  0

解决办法:

在Build Phases -> Link Binary With Librarires 里面添加 libswiftCoreGraphics.tbd。
否则xcode14打出来的包,在iOS12.1及以下的系统找不到 libswiftCoreGraphics.dylib而发生崩溃。

你可能感兴趣的:(Swift,iOS,Flutter,xcode,ios,macos)