7

私は自分のアプリに内部で使用するために独自のCocoaPodsポッドを作成しました。このポッドもコアデータを使用する必要があります。ファイルxy.xcdatamodeldをソースファイルに追加しましたが、xy.momdフォルダーにコンパイルされていません。

Core Dataを機能させるには、ポッドに他のプロパティを設定する必要がありますか?

私の現在のポッドファイル:

 Pod::Spec.new do |s|
 s.name         = "Test"
 s.version      = "1.0"
 s.summary      = "..."
 s.homepage     = "..."
 s.license      = 'MIT (example)'
 s.author       = { "Felix Krause" => "xy@xy.com" }
 s.source       = { :git => "http://EXAMPLE/Example.podspec.git", :tag => "0.0.1" }
 s.platform     = :ios, '6.0'
 s.source_files = 'TS/Classes/**/*.{h,m}', 'TS/Views/**/*.{h,m}', 'TS/TSResources/**/*.{json,xcdatamodeld}'
 s.resources = "TS/TSResources/**/*"
 s.frameworks = 'CoreData', 'QuartzCore', 'Accounts', 'MessageUI', 'CoreLocation', 'CoreGraphics', 'MobileCoreServices', 'SystemConfiguration'
 s.requires_arc = true
 s.ios.xcconfig = { 'HEADER_SEARCH_PATHS' => '$(PODS_ROOT)/../../TS/**' }
 s.ios.xcconfig ={ 'FRAMEWORK_SEARCH_PATHS' => '"$(PODS_ROOT)/../.." "$(PODS_ROOT)/.." "$(SRCROOT)/.."' }
 s.xcconfig = { 'OTHER_LDFLAGS' => '-all_load' }
 s.dependency 'JSONKit'
 end
4

4 に答える 4

10

これに戻ることができるように、実際にサポートされています。あなたがする必要があるのはあなたのポッドスペックが.xcdatamodeld不足しているリソースをリストしていることを確認することです。効果のあるもの:

Pod::Spec.new do |s|
    s.name = "MyPod"
    s.version = "0.1"
    s.platform = :ios, '8.0'
    s.requires_arc = true

    s.public_header_files = 'Pod/Classes/**/*.h'
    s.source_files = 'Pod/Classes/**/*{h,m}'
    s.resources = 'Pod/Classes/CoreData/*.xcdatamodeld'
    s.frameworks = 'CoreData'
end
于 2015-08-17T09:40:54.147 に答える
2

現在、これに対する明示的なサポートはありません。これがあなたがそれをすることができる方法の例です。ただし、そのコードはテストされていませんが、それらの線に沿ったものである必要があることに注意してください。その特定のユーザーは、モデル定義をコードに移動しました。

HTH

于 2012-10-16T17:37:23.920 に答える
1

以下を見てください。

https://github.com/CocoaPods/Xcodeproj/issues/81#issuecomment-23142404 https://github.com/Ashton-W/CoreDataPodSample

于 2015-03-11T11:41:27.977 に答える
0

私はRubyがあまり得意ではないので、alloyの例がわかりません。私がしていることは、xcdatamodeldがソースファイルとして含まれていることを確認してから、プロジェクト内でPodsディレクトリ内のそのソースファイルへの参照を作成することです。

パスは、のようになり'../Pods/[PathToMyPod]/[MyDataModel].xcdatamodeld'ます。

ちょっとしたハックですが、仕事は簡単にできます。

于 2012-12-13T04:53:14.213 に答える