Я пытаюсь создать собственный Cocoapod для обработки всех моих сетевых вызовов для моего приложения iOS. Проблема, с которой я сталкиваюсь, заключается в том, что некоторые мои файлы, которые должны быть частью моего нового Cocoapod / framework, не обнаруживаются, когда я пытаюсь ссылаться на них в коде.
Я следовал этому руководству https://www.raywenderlich.com/5823-how-to-create-a-cocoapod-in-swift и успешно создал проект Cocoapod .xcworkspace (названный: ios-oauth2-rest-template) и добавил его в bitbucket, а также создал частное репозиторий PodSpec в bitbucket (названный : KPodSpec) (два отдельных репозитория).
Мне удалось пройти этот урок, но я застрял в части «Использование вашего нового CocoaPod». Мне удалось выполнить следующие команды, чтобы добавить Cocoapod в мой репозиторий PodSpec:
pod repo add KPodSpecs [Your RWPodSpecs Git URL]
pod repo push KPodSpecs ios-oauth2-rest-template.podspec
Когда я пытаюсь использовать мой новый модуль в существующем проекте (названном: KApp), на некоторые файлы, которые есть в моем Cocoapod, можно ссылаться, в то время как другие не будут автозаполняться даже после I import ios_oauth2_rest_template
.
Я не уверен, что мне просто не хватает фреймворка для ios-oauth2-rest-template
внутри моего KApp
проекта. Любая помощь будет высоко ценится.
KApp Podfile:
# Uncomment the next line to define a global platform for your project
platform :ios, '12.0'
source 'https://github.com/CocoaPods/Specs.git'
source 'https://bitbucket.org/kpodspecs.git'
target 'KApp' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
# Pods for KApp
target 'KAppTests' do
inherit! :search_paths
# Pods for testing
end
target 'KAppUITests' do
inherit! :search_paths
# Pods for testing
end
pod 'LBTAComponents'
pod 'SwiftyJSON', '~> 4.0'
pod 'TRON', '~>4.0'
pod 'ios-oauth2-rest-template', '~> 0.0.1'
end
Подспец ios-oauth2-rest-template:
Pod::Spec.new do |s|
# 1
s.platform = :ios
s.ios.deployment_target = '12.0'
s.name = "ios-oauth2-rest-template"
s.summary = "My summary here"
s.requires_arc = true
# 2
s.version = "0.0.1"
# 3
s.license = { :type => "Proprietary", :file => "LICENSE" }
# 4 - Replace with your name and e-mail address
s.author = { "My Name" => "myemail@email.com" }
# 5 - Replace this URL with your own GitHub page's URL (from the address bar)
s.homepage = "https://bitbucket.org/myStuff"
# 6 - Replace this URL with your own Git URL from "Quick Setup"
s.source = { :git => "https://bitbucket.org/myStuff.git",
:tag => "#{s.version}" }
# 7
s.framework = "UIKit"
s.dependency 'Heimdallr', '~> 3.6.1'
# 8
s.source_files = "ios-oauth2-rest-template/**/*.{swift}"
# 9
#s.resources = "RWPickFlavor/**/*.{png,jpeg,jpg,storyboard,xib,xcassets}"
# 10
# s.swift_version = "4.0"
end
ios-oauth2-rest-template Podfile:
# Uncomment the next line to define a global platform for your project
platform :ios, '12.0'
target 'ios-oauth2-rest-template' do
# Uncomment the next line if you're using Swift or would like to use dynamic frameworks
use_frameworks!
# Pods for ios-oauth2-rest-template
pod 'Heimdallr', '~> 3.6.1'
target 'ios-oauth2-rest-templateTests' do
inherit! :search_paths
# Pods for testing
end
end
Спасибо заранее. Я безрезультатно изучал интернет, почему это может происходить, и я в замешательстве, поскольку у меня нет такого большого опыта работы с CocoaPods.
UPDATE
Вот несколько скриншотов
Секция Стручков KApp, чтобы показать некоторые из моих классов. Когда я пытаюсь использовать ApplicationUtils
, он работает просто отлично и автозаполняется, но когда я пытаюсь использовать BaseClass
, он не может его найти.
Фазы сборки под настройками, чтобы показать, что все 30 файлов находятся в исходниках компиляции. 30 файлов соответствуют 30 файлам из проекта ios-oauth2-rest-template
Xcode. 31-й файл - ios-oauth2-rest-template-dummy.m
.
Изображение, показывающее структуру папок проекта ios-oauth2-rest-template
Cocoapod.