15

After upgrading to Xcode 11.4 beta I've got those warnings from Pods subproject (specifically, from YYImage and Branch targets):

Target Integrity: MobileCoreServices has been renamed. Use CoreServices instead.

Target Integrity: AssetsLibrary is deprecated. Consider migrating to Photos instead.

I have inhibit_all_warnings! in my Podfile, but it has no effect on those.

Is there a way to silence those warnings until the creators of those pods will fix them?

Community
  • 1
  • 1
Alexander Vasenin
  • 11,437
  • 4
  • 42
  • 70
  • Change podspec's dependencies section, change `MobileCoreServices` to `CoreServices` – DawnSong Mar 09 '20 at 08:57
  • This can help if you're willing to fork pod's repository, but AFAIK, there is no way to patch *Podspec* with Cocoa Pods install hooks. – Alexander Vasenin Mar 09 '20 at 09:24
  • I'm having the same issue stemming from a 3rd party library that isn't coming in as a Pod. I really need a way to just be able to turn off that specific warning, but it doesn't seem to exist. – Codiak Apr 02 '20 at 20:42

3 Answers3

11

I noticed that manually removing those two frameworks from Pods/Frameworks/iOS project navigator group resolves those warnings. Since both frameworks embedded into iOS itself (not app bundle) removing them doesn't have any effect at runtime. Here is how to do it automatically in Podfile post-install hook:

post_install do |installer|
    installer.pods_project.frameworks_group["iOS"]["MobileCoreServices.framework"].remove_from_project
    installer.pods_project.frameworks_group["iOS"]["AssetsLibrary.framework"].remove_from_project
end

If this leaves a hanging (null) reference, you can do something like:

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
Colin Tremblay
  • 357
  • 1
  • 9
Alexander Vasenin
  • 11,437
  • 4
  • 42
  • 70
4

For mute this warning:

  1. Open Pod target's Build Settings
  2. Select Build Options
  3. Add framework (e.g. AssetsLibrary) to Validate Workspace - Ignored Frameworks

enter image description here

Igor
  • 12,165
  • 4
  • 57
  • 73
0

change platform :ios, '13.0' to platform :ios, '11.0' in iOS/Podfile

worked like a charm for me!