Как использовать Alamofire внутри каркаса? - PullRequest
1 голос
/ 04 июля 2019

Я бы хотел использовать Alamofire в view-контроллере моего фреймворка, чтобы выполнить сетевой запрос.

// Call
let myURLString = "https://jsonplaceholder.typicode.com/todos/1"
Alamofire.request(myURLString)
    .responseJSON { response in
        // do stuff with the JSON or error
}

Однако возвращается

No such module 'Alamofire'

enter image description here

1 Ответ

2 голосов
/ 04 июля 2019

Сначала вы должны создать цель вашей CocoaTouch Framework.

А затем вы должны добавить вашу CocoaTouch Framework в PodFile основного проекта:

# Uncomment the next line to define a global platform for your project
platform :ios, '9.0'

target 'MainApp' do
  use_frameworks!
end

target 'CocoaTouchFramework' do
  use_frameworks!
end

pod 'Alamofire'

Или выможно установить конкретные модули для фреймворков:

platform :ios, '9.0'
use_frameworks!

#Your custom framework's pods
def customframework_pods
    pod 'Alamofire'
end

target 'MainApp' do
    pod 'MyAwesomePod', '~>1.0'
    customframework_pods
end

target 'CocoaTouchFramework' do
    customframework_pods
end

Я нашел еще один ответ по этому поводу:

Источник: Средство Юваля Вакнина

# Uncomment this line to define a global platform for your project
platform :ios, '8.0'
# Uncomment this line if you're using Swift
# use_frameworks!
workspace 'YourWorkSpaceName'
xcodeproj 'Project/ProjectName.xcodeproj'
xcodeproj 'CustomFramework/Framework.xcodeproj'

def project_pods
    pod 'Alamofire'
end

def framework_pods
    pod 'Alamofire'
end

target 'ProjectName' do
    xcodeproj 'Project/ProjectName.xcodeproj'
    project_pods
end

target 'ProjectName' do
    xcodeproj 'Project/ProjectName.xcodeproj'
    project_pods
end

target 'Framework' do
    xcodeproj 'CustomFramework/Framework.xcodeproj'
    framework_pods
end

target 'Framework' do
    xcodeproj 'CustomFramework/Framework.xcodeproj'
    framework_pods
end

Я надеюсь, что это работает

Наслаждайтесь

...