2016-09-13 4 views
0

У меня есть более 20 целей в моем проекте XCode, и я часто добавляю или удаляю их.Избегайте явного указания каждой цели в подпикселе с помощью Cocoapods 1.x

Cocoapods v0.x создал libPods.a, который был связан со всеми моими целями.

Теперь, с Cocoapods v1.x, мне, кажется, нужно указать каждую цель в подпикселе. Он создает более 20 идентичных файлов библиотеки, и если я изменяю целевые объекты, мне нужно обновить подфайл и снова запустить программу установки.

Я не могу найти способ просто сделать «libPods.a» или «libPods-common.a». Используя abstract_target, он просто жалуется, что нет конкретных целей, если я не укажу реальные цели (вещь, которую я пытаюсь избежать).

Я могу заставить его сделать libPods-first_target_name.a и связать это с другими объектами, но имя библиотеки будет неправильным и запутанным в других целях.

Я думаю, что сделаю фиктивную «общую» цель в проекте и использую эту цель в подфайле, чтобы получить мою библиотеку, но, конечно, есть лучший способ?

ответ

0

Я не уверен, что он полностью решает вашу проблему, но я использую это в своем подпикселе.

project 'MyProject' 
platform :ios, '9.0' 

pod 'MagicalRecord', '~> 2.3' 
# etc.. 

for t in Xcodeproj::Project.open("MyProject.xcodeproj").targets.select { |t| t.is_a?(Xcodeproj::Project::Object::PBXNativeTarget) } do 
    target t.name 
end 

Вам не нужно явно определять все целевые имена, этот короткий код ruby ​​добавляет все Pods ко всем целям проекта.

Надеюсь, это поможет хотя бы немного!