所以我认为这应该真的很容易,但是经过一天的谷歌搜索和玩耍之后,我似乎仍然无法正常工作。我有一个私有(private)的cocoapod,可以从私有(private)的git仓库下载代码。这是所有设置,并且工作正常。

我正在努力的是我需要在cocoapod中包括本地xib。我有一个LoginView,它是我们许多内部应用程序中共享的代码。但是,我们已经本地化了该 View 。据我所知,由于cocoapods扁平化结构的方式,它只是复制本地化的xib,这导致* .lproj目录丢失。然后,当我尝试使用cocoapod时,无论设备上的语言设置如何,它似乎都捡起了第一个xib。

我希望有人可以指导我如何保留文件夹希拉基,或者是否还有另一种方法可以将本地化的小臂包含在cocoapod中。

#
# Be sure to run `pod lib lint NAME.podspec' to ensure this is a
# valid spec and remove all comments before submitting the spec.
#
# To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html
#
Pod::Spec.new do |s|
  s.name             = "ios-XX-common"
  s.version          = "1.0"
  s.summary          = "XXXXXX"
  s.description      = "Pod containing common source code used across multiple apps"
  s.homepage         = "http://www.example.com"
  s.license          = 'Copyright'
  s.author           = { xxx }
  s.source           = { :git => "xxxx:/data/git/ios-xx-common.git", :tag => 'v1.0'}
  s.platform = :ios, '7.0'
  s.requires_arc = false
  s.header_dir = 'ios-xx-common'
  s.header_mappings_dir = 'CommonSourceCode'
  s.source_files = "CommonSourceCode/**/*.{h,m}", "CommonSourceCode/CustomUIObjects/**/*.{h,m}",
                   "CommonSourceCode/Data Objects/**/*.{h,m}", "CommonSourceCode/Helpers/**/*.{h,m}",
                   "CommonSourceCode/UID/**/*.{h,m}", "CommonSourceCode/UIViews/**/*.{h,m}",
                   "CommonSourceCode/ViewControllers/**/*.{h,m}"
  s.resource_bundles = { 'rr-common-xibs' => ['CommonResources/Xibs/*.lproj'],
                         'rr-common-other' => ['CommonResources/Icons/*.*', 'CommonResources/IPhone/*.*', 'CommonResources/IPhoneIPad/*.*', 'CommonResources/Sounds/*.*'] }
  s.public_header_files = '**/*.h'
  s.dependencies = { 'Parse-iOS-SDK' => '~> 1.2.19', 'CocoaLumberjack' => '~> 1.7.0',
   'MBProgressHUD' => '~> 0.8', 'AFNetworking' => '~> 1.0' }
end

谢谢

最佳答案

我想您可能会喜欢“发展 pod ”。

因此,我有两个项目,一个图书馆项目和一个特定于应用程序的项目。
在我的图书馆项目中,我有一个library.podspec文件

Pod::Spec.new do |s|
    s.name         = "Library"
    s.version      = "0.0.1"
    s.summary      = "Shared library."
    s.description  = "This is an iOS library for shared common code across all apps"
    s.homepage     = "http://blah.com"
    s.license      = 'COMMERCIAL'
    s.author             = { "My name" => "[email protected]" }
    s.social_media_url = "http://twitter.com/blah"
    s.platform     = :ios, '8.0'
    s.source       = { :git => "https://bitbucket.org/blah/library.git", :tag => '0.0.1' }
    s.source_files  = 'Library/Classes/**/*.{h,m}', 'Library/Models/**/*.{h,m}', 'Library/ViewModels/**/*.{h,m}', 'Library/Views/**/*.{h,m}'
    s.resources = "Library/Images/**/*.png", "Library/Images/**/*.jpg", 'Library/Views/**/*.xib', "Library/Fonts/*.otf"
    s.requires_arc = true
    s.framework    = 'MapKit', 'CoreLocation'
    s.dependency 'AFNetworking'
    s.dependency 'ReactiveCocoa'
    s.dependency 'JLRoutes'
end

然后在我特定的应用程序项目的Podfile中...
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
link_with 'Myapp', 'Myapp-Tests'

pod 'Library', :path => '../library/'

现在,当我为特定的应用程序项目运行“pod update”时,可以在Pod项目下而不是Pods下看到,我有一个名为Development Pods的新文件夹。
请注意,如果在“库”项目中添加新文件,请确保再次进行Pod更新。

和平。

关于ios - 在私有(private)cocoapod中包含本地化的xib文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24707889/

10-12 23:15