Aracılığıyla paylaş


iOS için Objective-C veya Swift uygulamaları oluşturma

Önemli

Visual Studio App Center 31 Mart 2025'te kullanımdan kaldırılıyor. Tamamen kullanımdan kaldırılana kadar Visual Studio App Center'ı kullanmaya devam edebilirsiniz ancak geçiş yapmayı düşünebileceğiniz birkaç önerilen alternatif vardır.

Destek zaman çizelgeleri ve alternatifleri hakkında daha fazla bilgi edinin.

İlk yerel iOS uygulamanızı oluşturmak için aşağıdaki eylemleri gerçekleştirmeniz gerekir:

  1. Depo hizmeti hesabınıza bağlanma (GitHub, Bitbucket, VSTS, Azure DevOps)
  2. Uygulamanızın bulunduğu depo ve dalı seçin
  3. Derlemenin projesini veya çalışma alanını ve oluşturmak istediğiniz şemayı yapılandırma

Not

Uygulamayı gerçek bir cihazda çalıştırmak için derlemenin geçerli bir sağlama profili ve bir sertifikayla imzalanması gerekir.

1. Deponuzu bağlama

Daha önce depo hizmeti hesabınıza bağlanmadıysanız bağlantıyı yetkilendirmeniz gerekir. Hesabınız bağlandıktan sonra iOS projenizin bulunduğu depoyu seçin. App Center, hesabınızın bir depo için derleme ayarlamak için Yönetici ve Çekme iznine sahip olmasını gerektirir.

2. Dal seçme

Bir depo seçtikten sonra, oluşturmak istediğiniz dalı seçin. Varsayılan olarak, tüm etkin dallar listelenir.

3. İlk derlemenizi ayarlama

İlk derlemenizden önce iOS projenizi yapılandırın.

3.1 Proje/çalışma alanı ve şema

Derleme yapılandırması için bir Xcode projesi veya Xcode çalışma alanı ve paylaşılan bir düzen gereklidir. App Center dalınızdaki projeleri, çalışma alanlarını ve paylaşılan düzenleri (şemalar doğru klasörde olduğu sürece) otomatik olarak algılar. Oluşturmak istediğiniz projeyi veya çalışma alanını ve ilgili düzeni seçin.

Düzen bulunamazsa, istediğiniz düzenin paylaşıldığından ve kapsayıcısının seçtiğiniz proje veya çalışma alanı olduğundan emin olun. Ayrıca bu değişikliklerin yapılandırdığınız dala iade edildiğini de onaylamanız gerekir.

Bir dosyayı dışarı aktarıp projenin herhangi bir .xcscheme yerine yerleştiremezsiniz. Klasörde olmalıdır xcshareddata/xcschemes/ . Bu yolun dosyanızda .gitignore olmadığından emin olun.

Düzeni paylaşılan olarak işaretleme

3.2. Xcode sürümü

Derlemeyi çalıştırmak için Xcode sürümünü seçin.

3.3. Derleme tetikleyicileri

Varsayılan olarak, bir geliştirici yapılandırılmış bir dala her gönderildiğinde yeni bir derleme tetiklenir. Bu işlem "Sürekli Tümleştirme" olarak adlandırılır. Yeni bir derlemeyi el ile tetiklemek isterseniz, derleme yapılandırmasında bu ayarı değiştirebilirsiniz.

3.4. Derleme numarasını artırma

Etkinleştirildiğinde, CFBundleVersion uygulamanızın Info.plist içindeki her derleme için otomatik olarak artar. Değişiklik derleme öncesi gerçekleşir ve deponuza işlenmez.

Not

Artım derleme numarasının çalışmasını sağlamak için lütfen değerini gibi *Info.plistProduction-Info.plistadlandırın.plist file.

3.5. Testler

Seçilen düzende test hedefi seçili bir test eylemi varsa, testleri her derlemenin parçası olarak çalışacak şekilde yapılandırabilirsiniz. App Center şu anda XCTest birim testlerini çalıştırabilir.

3.6. Kod imzalama

Gerçek cihazlar için bir iOS uygulaması oluşturmak için geçerli kimlik bilgileriyle imzalamanız gerekir. App Center'da derlemeleri imzalamak için yapılandırma bölmesinde kod imzalamayı etkinleştirin ve sertifikanın parolası ile birlikte bir sağlama profili (.mobileprovision) ve geçerli bir sertifika (.p12) yükleyin.

Xcode projenizdeki ayarlar, karşıya yüklediğiniz dosyalarla uyumlu olmalıdır. Resmi Apple Geliştirici belgelerinde kod imzalama hakkında daha fazla bilgi edinebilirsiniz.

Uygulama veya watchOS uzantılı uygulamaların imzalanması için uzantı başına ek bir sağlama profili gerekir.

3.7. Başarılı derlemenizi gerçek bir cihazda başlatma

Uygulamanızın gerçek bir cihazda başlayıp başlamadiğini test etmek için yeni oluşturulan .ipa dosyanızı kullanın. Gerçek bir cihazda başlatıldığında toplam derleme süresine yaklaşık 10 dakika daha eklenir. Başlatma testlerini yapılandırma hakkında daha fazla bilgi edinin.

3.8. CocoaPods

App Center seçili dalı tarar ve bir Podfile bulursa, her derlemenin başında otomatik olarak bir pod install adım gerçekleştirir. Bu adım, tüm bağımlılıkların yüklenmesini sağlar.

Uyarı

Depoda zaten bir /Pods klasörü varsa, App Center deponuzdaki podları iade ettiğinizi varsayar ve artık gerçekleştirmez pod install. /Pods klasörünü kaldırır veya değiştirirseniz, güncelleştirmenin etkili olması için veya Save and Build kullanarak Save Derleme yapılandırmasını el ile yeniden kaydetmeniz gerekebilir.

3.9. Dağıtım grubuna dağıtma

Bir daldan her başarılı derlemeyi daha önce oluşturulmuş bir dağıtım grubuna dağıtılacak şekilde yapılandırabilirsiniz. Dağıt bölümünden yeni bir dağıtım grubu ekleyebilirsiniz. Her zaman uygulamaya erişimi olan tüm kullanıcıları içeren "Ortak Çalışanlar" adlı bir varsayılan dağıtım grubu vardır.

Yapılandırmayı kaydettikten sonra yeni bir derleme otomatik olarak başlatılır.

4. Derleme sonuçları

Bir derleme tetiklendikten sonra aşağıdaki durumlarda olabilir:

  • kuyruğa alındı - derleme, kaynakların boşaltılması beklenmek üzere kuyruğa alındı.
  • building - derleme önceden tanımlanmış görevleri çalıştırıyor.
  • başarılı - derleme tamamlandı ve başarılı oldu.
  • başarısız oldu - derleme tamamlandı ama başarısız oldu. Derleme günlüklerini inceleyerek sorun giderme işlemini yapabilirsiniz.
  • iptal edildi - derleme bir kullanıcı eylemi tarafından iptal edildi veya zaman aşımına uğradı

4.1. Derleme günlükleri

Tamamlanmış bir derleme (başarılı veya başarısız) için derlemenin nasıl gittiği hakkında daha fazla bilgi edinmek için günlükleri indirin. App Center aşağıdaki dosyaları içeren bir arşiv sağlar:

|-- 1_build.txt (this is the general build log)
|-- build (this folder contains a separate log file for each build step)
    |-- <build-step-1> (e.g. 2_Get Sources.txt)
    |-- <build-step-2> (e.g. 3_Pod install.txt)
    |--
    |-- <build-step-n> (e.g. n_Post Job Cleanup.txt)

Derleme adımına özgü günlükler (arşivin build/ dizininde bulunur), derlemenin hangi adımda ve neden başarısız olduğunu anlamak için sorun giderme ve anlama açısından yararlıdır.

4.2. Uygulama (.ipa)

Dosya .ipa , iOS uygulamasını içeren bir iOS cihaz uygulaması arşiv dosyasıdır.

  • İmzasız derlemeler dosya .ipa oluşturmaz. İmzasız bir derlemenin yapısı, Xcode Archives düzenleyicisiyle bir .ipa dosya oluşturmak için kullanılabilecek dosyadır.xcarchive.
  • Derleme doğru imzalanmışsa, .ipa dosya imzalama sırasında kullanılan sağlama profiline karşılık gelen gerçek bir cihaza yüklenebilir. App Center ile kod imzalama ve dağıtma hakkında daha fazla ayrıntı App Center'ın iOS kod imzalama belgelerinde bulunabilir.
  • Derleme imzalanmamışsa, .ipa dosya geliştirici tarafından imzalanabilir (örneğin, ortak tasarım kullanılarak yerel olarak) veya başka amaçlar için kullanılabilir (örneğin, gerçek cihazlarda ui testi için Test hizmetine yükleme veya simülatörde çalıştırma).

4.3. Simgeler dosyası (.dsym)

Dosyalar, .dsym uygulamanın hata ayıklama simgelerini içerir.

  • App Center SDK'sını daha önce uygulamanızda kilitlenme raporlama modülü etkin olarak tümleştirdiyseniz, kilitlenme raporlama hizmeti bir derlemenin insan tarafından okunabilir (sembolik) kilitlenme raporlarını görüntülemesi için bu .dsym dosyayı gerektirir.
  • Daha önce uygulamanızda kilitlenme raporlama amacıyla başka bir SDK'yı (örneğin HockeyApp SDK' sı) tümleştirdiyseniz ilgili hizmet, dosyanın okunabilir kilitlenme raporlarını görüntülemesini gerektirir .dsym .

kod imzalandıysa .dsym.ipadosyaların değişmediğini unutmayın. Derlemeyi daha sonra kod imzalamaya karar verirseniz, .dsym kod imzalamadan önce oluşturulan geçerli olmaya devam edecektir.

Desteklenen sürümler ve gereksinimler

Xcode derleme makinesi sürüm ayrıntıları, Xcode'un her yeni sürümü eklendiğinde güncelleştirilir. Apple tarafından yayınlanan en son sürümleri takip ediyoruz ve bunları derlemeleri çalıştırmak için kullanılan VM'lere en kısa sürede dahil ediyoruz.