VipinYadav
VipinYadav

Reputation: 815

Cocoapods : Issue with pod which contains resource folder Assets.xcassets

I am creating my own cocoapods. I am getting an error as shown in screenshot. I think , there is some issue with Assets.xcassets folder linking. In case, there is no image in assets.xcassets folder, then there is no issue with it. When I am adding any image in assets, then contents.json will be generated automatically with respect to those images, and then this below issue started coming.

enter image description here

Upvotes: 6

Views: 1886

Answers (4)

Narendra Jagne
Narendra Jagne

Reputation: 446

I have same solution as Vipin given with minor correction.

s.source_files = 'RepoName/**/*.{swift}'
s.resources = 'RepoName/**/*.{storyboard,xib,xcassets,json,png, jpg, jpeg, plist}'

I have removed the plist from source file and added into resource file.

Upvotes: 1

Mohammad Kamran Usmani
Mohammad Kamran Usmani

Reputation: 878

You can use following YourPod.podspec file making minor changes

Pod::Spec.new do |s|
    s.name             = 'YourPod'
    s.version          = '0.1.0'
    s.summary          = 'Pod summary here'
    s.description      = 'Use description here and it must be larger than summary'
    s.swift_version = '4.2'
    s.homepage         = 'https://github.com/githubusername/YourPod'
    s.license          = { :type => 'MIT', :file => 'LICENSE' }
    s.author           = { 'Vipin' => '[email protected]' }
    s.source           = { :git => 'https://github.com/githubusername/YourPod.git', :tag => s.version.to_s }
    s.ios.deployment_target = '11.0'
    s.source_files = 'ECGame/**/*.{swift, plist}'
    s.resources = 'ECGame/**/*.{png,jpeg,jpg,storyboard,xib,xcassets,json}'
    s.framework = "UIKit"
    s.dependency 'MBProgressHUD'
    s.dependency 'Alamofire'
end

Upvotes: 2

VipinYadav
VipinYadav

Reputation: 815

I have modified these two lines and now it's working.

s.source_files = 'ECGame/**/*.{swift, plist}' s.resources = 'ECGame/**/*.{storyboard,xib,xcassets,json,png}'

Upvotes: 6

denis_lor
denis_lor

Reputation: 6547

Either you do:

s.subspec 'Resources' do |resources|
    resources.resource_bundle = {'ECGame' => ['Resources/**/*.{json,png}']}
end

Or you do:

s.resources = "ECGame/Assets/*.xcassets"

Upvotes: 1

Related Questions