Pods中引用 YYText 出现警告 MobileCoreSe
2020-09-24 本文已影响0人
Onego
问题是这样的:
问题分析:
这个警告提示已经非常明确的指出了问题所在,只要把Pods中的第三方框架(这里是YYText)所依赖的 MobileCoreService
换成 CoreService
就可以。
或者 修改
Validate Workspace - Ignored Frameworks
也可以消除警告问题难点:
以上两种方法可以暂时性的解决警告,但是一旦执行了 pod install
或者类似的指令对库镜进行了更新那么所设置的配置信息就会被重置;需要再次重复设置才可以,每次来这么一下可不是个好的体验。
尝试解决:
从问题源头已经很清晰了,现在需要解决的是pod更新后能够保持状态就可以,也就是需要在 Podfile
中写点脚本
post_install do |installer|
installer.pods_project.frameworks_group["iOS"]["MobileCoreServices.framework"].remove_from_project
end
然后更新pod pod update
,Build一下哎呦嘿似乎解决了警告消除了,看一下引用Frameworks的情况
这是个什么鬼?似乎解决得不完美啊,
project.pbxproj
中的并没有被移除对脚本进行升级
post_install do |installer|
framework = installer.pods_project.frameworks_group["iOS"]["MobileCoreServices.framework"]
framework.referrers.each do |ref|
if ref.isa == "PBXBuildFile"
ref.remove_from_project
end
end
framework.remove_from_project
end
pod update,Build 好了完美。
扩展:
1.PBXBuildFile
PBXBuildFile 代表文件元素,被PBXBuildPhase等作为文件包含或被引用的资源,其实里面fileRef指向最终的文件PBXFileReference。
2.AssetsLibrary 也可以通过类似的方法解决
post_install do |installer|
framework = installer.pods_project.frameworks_group["iOS"]["AssetsLibrary.framework"]
framework.referrers.each do |ref|
if ref.isa == "PBXBuildFile"
ref.remove_from_project
end
end
framework.remove_from_project
end
参考:
How to silence Xcode 11.4 warnings about MobileCoreServices and AssetsLibrary?
Xcode工程文件pbxproj
Xcode工程文件project.pbxproj小结