Custom Framework’leri Cocoapods ile özel olarak(private) olarak yaygınlaştırma.

Ahmet Bekir Bakkal
DigiGeek
Published in
2 min readDec 7, 2021

Herkese merhabalar!

Bugün sizlere private(özel) kütüphanelerinizi Cocoapods üzerinden nasıl yaygınlaştırabileceğinizi kısaca anlatacağım.

Cocoapods aslında projelerinizi sadece open source(açık kaynaklı) olarak değil private olarak da yaygınlaştırabilmenizi sağlayan, entegrasyonlarınızı da oldukça kolaylaştıran bir dependency manager(bağımlılık yöneticisidir)’dır. Bu yöntem sayesinde custom framework’lerinizi private repository’ler üzerinden dilediğiniz kişilerle ve kurumlarla versiyonlamayı da sağlayarak kolaylıkla paylaşabilirsiniz.

Bunu çok basit bir kaç adımda anlatmaya çalışacağım.

Başlayalım!

Gereksinimler:

  • Mac’inizde Cocoapods’un yüklenmiş olması
  • Framework’lerinizi taşıyan bir private GitHub repository
  • PodSpec’lerinizi taşıyan bir private GitHub repository

1. CocoaPods üzerinden yaygınlaştıracağınız framework’ünüzü taşıyan repository’nizi oluşturun

2. CocoaPods PodSpec’lerinizi taşıyan repository’nizi oluşturun

PodSpec’ler sizin framework’ünüzün tüm özelliklerini taşıyan ve CocoaPods’un anlamlandırmasını sağlayan komutları içeren dosyalardır.

3. Podspec dosyanızı düzenleyin.

Podspec dosyanızı aşağıdaki gibi planlayabilirsiniz.

Not: Versiyonlama için repository’nizde tag vermeniz gerekir.

4. Cocoapods komutlarınızla projenizi CocoaPods’a push’layın

Bu işlemi yapmak için sırasıyla aşağıdaki komutları podspec dosyasının olduğu directory’de çalıştırın.

  • pod repo list

Bu komut sizin lokalinizde daha önce oluşturduğunuz spec repository’lerini listeler. Eğer yeni yükleyeceğiniz framework daha öncesinde burada yer alıyorsa bir alttaki remove komutunu çalıştırıp sonrasında ilerlemelisiniz.

  • pod repo remove [FRAMEWORK_NAME]

Bu komut lokalinizden ilgili spec repository’sini siler.

  • pod spec lint . --allow-warnings

Podspec dosyanızın içindeki komutların doğru bir şekilde çalışıp çalışmadığını kontrol eder. Burada framework’ünüzden kaynaklanan warningleri atlamak için “--allow-warnings” kullanılabilir. Dilerseniz uyarıları çözerek de ilerleyebilirsiniz.

  • pod repo add [FRAMEWORK_NAME] [FRAMEWORK_STORED_GIT]

Bu komut CocoaPods’un private repository’nizin hangi URL olduğunu bilmesini sağlar. ([FRAMEWORK_STORED_GIT] url’i)

  • pod repo push [FRAMEWORK_NAME] [FRAMEWORK_NAME].podspec --allow-warnings --skip-import-validation --use-libraries

Bu komut podspec’inizi doğrular ve ardından lokalinizdeki bir kopyasını cocoapods’a belirttiğiniz isimle ([FRAMEWORK_NAME]) gönderir.

Son olarak;

Bu aşamadan sonra podfile’ınıza gidip source url’inizi ve pod framework komutunuzu yazdığınızda private framework’ünüz projenize yalnızca header dosyaları ile birlikte eklenecektir.

Örnek podfile;

Herkese iyi çalışmalar..

--

--