Lo he usado use_frameworks
en CocoaPods Podfile
muchas veces. Me pregunto por qué lo usamos. No pude obtener la respuesta directa.
Ejemplo:
platform :ios, '8.0'
use_frameworks!
target "CityWhether" do
pod 'Alamofire'
pod 'SwiftyJSON'
end
ios
frameworks
cocoapods
static-libraries
harikrista
fuente
fuente
Respuestas:
use_frameworks
le dice a CocoaPods que desea utilizar Frameworks en lugar de Bibliotecas estáticas. Dado que Swift no es compatible con las bibliotecas estáticas, debe utilizar marcos.En otra respuesta, expliqué las diferencias entre las bibliotecas estáticas y los marcos:
Fuentes: Mi otra respuesta | Blog de AddThis.com
fuente
use_frameworks!
le dice a las mazorcas de cacao que usen bibliotecas dinámicas, y fue muy frecuente en un momento debido, en particular, a que Swift no admite bibliotecas estáticas, lo que significa que no había otra opción, sin embargo, a menudo ya no las necesitause_frameworks!
.A partir de Xcode 9 beta 4 y CocoaPods 1.5.0, ahora se admiten bibliotecas estáticas rápidas. La principal ventaja son los tiempos de inicio de la aplicación más rápidos, especialmente si tiene muchos pods: iOS 10 y 11 no son los más rápidos cuando tiene muchos dylibs.
CocoaPods 1.5.0 fue lanzado a principios de abril 2018 , por lo que puede que tenga que actualizar conseguirlo:
sudo gem install cocoapods
.Sin embargo, encontré varios pods que aún no funcionan correctamente con bibliotecas estáticas, por lo que su kilometraje puede variar.
fuente
No such module
errores. ¿Es eso un problema en esos cocoapods?use_modular_headers!
a mi Podfile para que funcione con pods que presumiblemente lo requieren pero que aún no lo habilitan por sí mismos.use_frameworks
declara que desea utilizar marcos dinámicos , en lugar de bibliotecas estáticas .Con Xcode 9.0 y CocoaPods 1.5.0 lanzados, puede usar bibliotecas estáticas con rapidez si no las usa
use_frameworks
.Un problema con
use_frameworks
es que todo su marco en Pods / Productos son marcos.Aquí hay un artículo relacionado: Descripción básica de marcos estáticos y dinámicos en ios
fuente
One performance with use_frameworks is that all your framework in Pods/Products is frameworks.
Una actuación qué?[Acerca de] de Cocoapod
use_frameworks!
es responsable del tipo de binario:use_frameworks!
está presente -dynamic framework
use_frameworks!
está presente -static library
use_frameworks!
tiene un reflejo enMach-O Type
[Acerca de] en un objetivo correspondiente delPods
proyecto.Línea de tiempo:
use_frameworks!
que tenías que usar para Swift Pod[Vocabulario]
fuente
Añadiendo
en Podfile significa que queremos que los marcos enumerados se instalen dinámicamente en lugar de marcos estáticos.
fuente