Aracılığıyla paylaş


Mac App Store dağıtımı için Mac Catalyst uygulaması yayımlama

Mac Catalyst uygulamalarını kullanıcılara dağıtmaya ilişkin en yaygın yaklaşım, Mac App Store üzerindendir. Uygulamalar, App Store Connect adlı çevrimiçi bir araç aracılığıyla Mac App Store'a gönderilir. Yalnızca Apple Geliştirici Programı'na ait geliştiriciler bu araca erişebilir. Apple Developer Enterprise Program üyelerinin erişimi yoktur. Mac App Store'a gönderilen tüm uygulamalar Apple'dan onay gerektirir.

Mac Catalyst uygulamasını dağıtmak için uygulamanın sağlama profili kullanılarak sağlanması gerekir. Sağlama profilleri, kod imzalama bilgilerinin yanı sıra uygulamanın kimliğini ve hedeflenen dağıtım mekanizmasını içeren dosyalardır.

.NET Çok Platformlu Uygulama Kullanıcı Arabirimi (.NET MAUI) Mac Catalyst uygulamasını dağıtmak için, buna özgü bir dağıtım sağlama profili oluşturmanız gerekir. Bu profil, mac'lere yüklenebilmesi için uygulamanın yayın için dijital olarak imzalanmasını sağlar. Dağıtım sağlama profili uygulama kimliği ve dağıtım sertifikası içerir. Henüz bir dağıtım sertifikanız yoksa kendinizi veya kuruluşunuzu tanımlamak için bir dağıtım sertifikası oluşturmanız gerekir. Ayrıca, uygulamanızın yükleyici paketini Mac App Store'a göndermek üzere imzalamak için bir Mac yükleyici sertifikası oluşturmanız gerekir.

Mac App Store aracılığıyla dağıtım için bir .NET MAUI Mac Catalyst uygulaması sağlama işlemi aşağıdaki gibidir:

  1. Sertifika imzalama isteği oluşturun. Daha fazla bilgi için bkz . Sertifika imzalama isteği oluşturma.
  2. Dağıtım sertifikası oluşturun. Daha fazla bilgi için bkz . Dağıtım sertifikası oluşturma.
  3. Bir yükleyici sertifikası oluşturun. Daha fazla bilgi için bkz . Yükleyici sertifikası oluşturma.
  4. Bir Uygulama Kimliği oluşturun. Daha fazla bilgi için bkz . Uygulama kimliği oluşturma.
  5. Uygulama Kimliğini yapılandırın. Daha fazla bilgi için bkz . Uygulama Kimliğini Yapılandırma.
  6. Sağlama profili oluşturun. Daha fazla bilgi için bkz . Sağlama profili oluşturma.
  7. Sağlama profilinizi indirin. Daha fazla bilgi için bkz . Xcode'da sağlama profilinizi indirme.

Ardından, sağlama tamamlandıktan sonra uygulamanızı yayımlamaya hazırlamanız ve ardından aşağıdaki işlemle yayımlamanız gerekir:

  1. Uygulamanıza gerekli yetkilendirmeleri ekleyin. Daha fazla bilgi için bkz . Yetkilendirme ekleme.
  2. Uygulamanın Info.plist dosyasını güncelleştirin. Daha fazla bilgi için bkz . Info.plist'i Güncelleştirme.
  3. Komut satırını kullanarak uygulamanızı yayımlayın. Daha fazla bilgi için bkz . Komut satırını kullanarak yayımlama.

Sertifika imzalama isteği oluşturma

Dağıtım sertifikası oluşturmadan önce Mac'teki AnahtarLık Erişimi'nde bir sertifika imzalama isteği (CSR) oluşturmanız gerekir:

  1. Mac bilgisayarınızda Anahtarlık Erişimi'ni başlatın.

  2. Anahtarlık Erişimi'nde Anahtarlık Erişimi Sertifika Yardımcısı > Sertifika Yetkilisinden Sertifika İste... menü öğesini seçin.>

  3. Sertifika Yardımcısı iletişim kutusunda, Kullanıcı E-posta Adresi alanına bir e-posta adresi girin.

  4. Sertifika Yardımcısı iletişim kutusunda Ortak Ad alanına anahtar için bir ad girin.

  5. Sertifika Yardımcısı iletişim kutusunda CA E-posta Adresi alanını boş bırakın.

  6. Sertifika Yardımcısı iletişim kutusunda Diske kaydedildi radyo düğmesini ve Devam'ı seçin:

    Sertifika yardımcısı iletişim kutusu.

  7. Sertifika imzalama isteğini bilinen bir konuma kaydedin.

  8. Sertifika Yardımcısı iletişim kutusunda Bitti düğmesini seçin.

  9. Anahtarlık Erişimi'ni kapatın.

Dağıtım sertifikası oluşturma

CSR, kimliğinizi onaylayan bir dağıtım sertifikası oluşturmanıza olanak tanır. Dağıtım sertifikası, Apple Geliştirici Hesabınızın Apple Kimliği kullanılarak oluşturulmalıdır:

  1. Bir web tarayıcısında Apple Geliştirici Hesabınızda oturum açın.

  2. Apple Geliştirici Hesabınızda Sertifikalar, Kimlikler ve Profiller sekmesini seçin.

  3. Sertifikalar, Tanımlayıcılar ve Profiller sayfasında yeni bir sertifika oluşturmak için düğmeyi + seçin.

  4. Yeni Sertifika Oluştur sayfasında, Devam düğmesini seçmeden önce Apple Dağıtım radyo düğmesini seçin:

    Apple dağıtım sertifikası oluşturun.

  5. Yeni Sertifika Oluştur sayfasında Dosya Seç'i seçin:

    Apple dağıtım sertifikanız için sertifika imzalama isteğinizi karşıya yükleyin.

  6. Karşıya Yüklenecek Dosyaları Seç iletişim kutusunda, daha önce oluşturduğunuz sertifika isteği dosyasını (dosya uzantısına sahip bir .certSigningRequest dosya) ve ardından Karşıya Yükle'yi seçin.

  7. Yeni Sertifika Oluştur sayfasında Devam düğmesini seçin:

    Dağıtım sertifikanızı oluşturmaya devam edin.

  8. Sertifikanızı İndir sayfasında İndir düğmesini seçin:

    Apple dağıtım sertifikanızı indirin.

    Sertifika dosyası (uzantılı bir .cer dosya) seçtiğiniz konuma indirilir.

  9. Mac bilgisayarınızda, indirilen sertifika dosyasına çift tıklayarak sertifikayı anahtarlığınıza yükleyin. Sertifika, Anahtarlık Erişimi'ndeki Sertifikalarım kategorisinde görünür ve Apple Dağıtımı ile başlar:

    Dağıtım sertifikalarını gösteren Anahtarlık Erişimi.

    Not

    Anahtarlık Erişimi'nde tam sertifika adını not edin. Uygulamanızı imzalarken gerekli olacaktır.

Yükleyici sertifikası oluşturma

CSR, Mac App Store'a göndermek üzere uygulamanızın yükleyici paketini imzalamak için gereken bir yükleyici sertifikası oluşturmanıza olanak tanır. Yükleyici sertifikası, Apple Geliştirici Hesabınızın Apple Kimliği kullanılarak oluşturulmalıdır:

  1. Apple Geliştirici Hesabınızda Sertifikalar, Kimlikler ve Profiller sekmesini seçin.

  2. Sertifikalar, Tanımlayıcılar ve Profiller sayfasında yeni bir sertifika oluşturmak için düğmeyi + seçin.

  3. Yeni Sertifika Oluştur sayfasında, Devam düğmesini seçmeden önce Mac Installer Dağıtım radyo düğmesini seçin:

    Mac Installer dağıtım sertifikası oluşturun.

  4. Yeni Sertifika Oluştur sayfasında Dosya Seç'i seçin:

    Mac yükleyici sertifikası için sertifika imzalama isteğinizi karşıya yükleyin.

  5. Karşıya Yüklenecek Dosyaları Seç iletişim kutusunda, daha önce oluşturduğunuz sertifika isteği dosyasını (dosya uzantısına sahip bir .certSigningRequest dosya) ve ardından Karşıya Yükle'yi seçin.

  6. Yeni Sertifika Oluştur sayfasında Devam düğmesini seçin:

    Yükleyici sertifikanızı oluşturmaya devam edin.

  7. Sertifikanızı İndir sayfasında İndir düğmesini seçin:

    Mac yükleyici sertifikanızı indirin.

    Sertifika dosyası (uzantılı bir .cer dosya) seçtiğiniz konuma indirilir.

  8. Mac bilgisayarınızda, indirilen sertifika dosyasına çift tıklayarak sertifikayı anahtarlığınıza yükleyin. Sertifika Anahtar Zinciri Erişimi'ndeki Sertifikalarım kategorisinde görünür ve 3. Taraf Mac Geliştirici Yükleyicisi ile başlar:

    Yükleyici sertifikayı gösteren Anahtarlık Erişimi.

    Not

    Anahtarlık Erişimi'nde tam sertifika adını not edin. Uygulamanızı imzalarken gerekli olacaktır.

Dağıtım profili oluşturma

Dağıtım sağlama profili, .NET MAUI Mac Catalyst uygulamanızın başka bir Mac'e yüklenebilmesi için yayın için dijital olarak imzalanmasını sağlar. Mac App Store dağıtımı için sağlama profili, uygulama kimliği ve dağıtım sertifikası içerir.

Uygulama Kimliği oluşturma

Dağıttığınız uygulamayı tanımlamak için bir Uygulama Kimliği gereklidir. Uygulama Kimliği, bir uygulamayı benzersiz olarak tanımlayan ve uygulamanızın paket tanımlayıcısıyla aynı olması gereken ters DNS dizesine benzer. Test için uygulamanızı bir cihaza dağıtırken kullandığınız Uygulama Kimliğinin aynısını kullanabilirsiniz.

İki tür Uygulama Kimliği vardır:

  • Joker karakter. Joker uygulama kimliği, birden çok uygulamayla eşleştirmek için tek bir Uygulama Kimliği kullanmanıza olanak tanır ve genellikle biçimindedir com.domainname.*. Joker karakterli Uygulama Kimliği birden çok uygulamayı dağıtmak için kullanılabilir ve uygulamaya özgü özellikleri etkinleştirmeyen uygulamalar için kullanılmalıdır.
  • Açık. Açık uygulama kimliği tek bir uygulama için benzersizdir ve genellikle biçimindedir com.domainname.myid. Açık uygulama kimliği, eşleşen paket tanımlayıcısı ile bir uygulamanın dağıtılmasına olanak tanır. Açık Uygulama Kimlikleri genellikle Apple Pay veya Game Center gibi uygulamaya özgü özellikleri etkinleştiren uygulamalar için kullanılır. Özellikler hakkında daha fazla bilgi için bkz . Özellikler.

Yeni bir Uygulama Kimliği oluşturmak için:

  1. Apple Geliştirici Hesabınızda Sertifikalar, Kimlikler ve Profiller'e gidin.

  2. Sertifikalar, Tanımlayıcılar ve Profiller sayfasında Tanımlayıcılar sekmesini seçin.

  3. Tanımlayıcılar sayfasında yeni bir Uygulama Kimliği oluşturmak için düğmeyi + seçin.

  4. Yeni tanımlayıcı kaydet sayfasında, Devam düğmesini seçmeden önce Uygulama Kimlikleri radyo düğmesini seçin:

    Bir Uygulama Kimliği oluşturun.

  5. Yeni tanımlayıcı kaydet sayfasında, Devam düğmesini seçmeden önce Uygulama'yı seçin:

    Uygulama Kimliğini kaydedin.

  6. Uygulama Kimliğini Kaydet sayfasında bir açıklama girin ve Açık veya Joker Karakter Paket Kimliği radyo düğmesini seçin. Ardından uygulamanızın Paket Kimliğini ters DS biçiminde girin:

    Uygulamanın paket tanımlayıcısını belirtin.

    Önemli

    Girdiğiniz Paket Kimliği, uygulama projenizdeki Info.plist dosyasındaki Paket tanımlayıcısına karşılık gelir.

    .NET MAUI uygulamasının paket tanımlayıcısı proje dosyasında Uygulama Kimliği özelliği olarak depolanır. Visual Studio'da Çözüm Gezgini .NET MAUI uygulama projenize sağ tıklayın ve Özellikler'i seçin. Ardından MAUI Paylaşılan > Genel sekmesine gidin. Uygulama Kimliği alanında paket tanımlayıcısı listelenir.

    Uygulama Kimliği alanının değeri güncelleştirildiğinde, Info.plist dosyasındaki Paket tanımlayıcısının değeri otomatik olarak güncelleştirilir.

  7. Uygulama Kimliğini Kaydet sayfasında, uygulamanın kullandığı özellikleri seçin. Tüm özellikler hem bu sayfada hem de uygulama projenizdeki Entitlements.plist dosyasında yapılandırılmalıdır. Daha fazla bilgi için bkz . Özellikler ve Yetkilendirmeler.

  8. Uygulama Kimliğini Kaydet sayfasında Devam düğmesini seçin.

  9. Uygulama Kimliğinizi onaylayın sayfasında Kaydet düğmesini seçin.

Uygulama Kimliğini Yapılandırma

Mac Catalyst uygulaması varsayılan olarak bir iOS uygulamasıyla aynı paket kimliğini kullanır, böylece uygulamaları Mac App Store'da evrensel bir satın alma işlemi olarak birlikte sunabilirsiniz. Alternatif olarak, uygulamayı ayrı bir ürün olarak sunmak için benzersiz bir paket kimliği belirtebilirsiniz.

Uygulama Kimliğini yapılandırmak için:

  1. Apple Geliştirici Hesabınızda Sertifikalar, Kimlikler ve Profiller'e gidin.

  2. Sertifikalar, Tanımlayıcılar ve Profiller sayfasında Tanımlayıcılar sekmesini seçin.

  3. Tanımlayıcılar sayfasında, yeni oluşturduğunuz Uygulama Kimliğini seçin.

  4. Uygulama Kimliği Yapılandırmanızı düzenleyin sayfasında sayfanın en altına kaydırın ve Mac Catalyst özelliği onay kutusunu etkinleştirin. Ardından Yapılandır düğmesini seçin:

    Mac Catalyst özelliğini etkinleştirin.

  5. Mac Catalyst için Paket Kimliğini Yapılandır açılır penceresinde Mevcut Mac Uygulama Kimliğini kullan radyo düğmesini seçin. Uygulama Kimliği açılan listesinde Mac Catalyst'inizin iş ortağı iOS uygulamasının Uygulama Kimliği'ni veya Mac Catalyst uygulamasını ayrı bir ürün olarak sunuyorsanız oluşturduğunuz Uygulama Kimliği'ni seçin. Ardından Kaydet düğmesini seçin:

    Mac Catalyst için Paket Kimliğini yapılandırın.

  6. Uygulama Kimliği Yapılandırmanızı düzenleyin sayfasında Kaydet düğmesini seçin:

    Mac Catalyst yapılandırmasını kaydedin.

  7. Uygulama Özelliklerini Değiştir açılır penceresinde Onayla düğmesini seçin:

    Uygulama özelliklerini değiştirin.

Sağlama profili oluşturma

Uygulama Kimliği oluşturulduktan ve yapılandırıldıktan sonra bir dağıtım sağlama profili oluşturmanız gerekir. Bu profil, mac'lere yüklenebilmesi için uygulamanın yayın için dijital olarak imzalanmasını sağlar.

Mac App Store dağıtımı için bir sağlama profili oluşturmak için:

  1. Apple Geliştirici Hesabınızın Sertifikalar, Tanımlayıcılar ve Profiller sayfasında Profiller sekmesini seçin.

  2. Profiller sekmesinde, yeni bir profil oluşturmak için düğmeye tıklayın+.

  3. Yeni Sağlama Profili Kaydet sayfasında, Devam düğmesine tıklamadan önce Mac App Store radyo düğmesini seçin:

    Uygulama mağazası dağıtımı için bir sağlama profili kaydedin.

  4. Sağlama Profili Oluştur sayfasında Mac radyo düğmesini seçin. Ardından, Uygulama Kimliği açılan listesinde Devam düğmesine tıklamadan önce oluşturduğunuz Uygulama Kimliğini seçin:

    Uygulama kimliğinizi seçin.

  5. Sağlama Profili Oluştur sayfasında, Devam düğmesine tıklamadan önce dağıtım sertifikanıza karşılık gelen radyo düğmesini seçin:

    Dağıtım sertifikanızı seçin.

  6. Sağlama Profili Oluştur sayfasında, Oluştur düğmesine tıklamadan önce sağlama profili için bir ad girin:

    Sağlama profilini oluşturun.

    Not

    Uygulamanızı imzalarken gerekli olacağı için sağlama profili adını not edin.

  7. Sağlama Profili Oluştur sayfasında, isteğe bağlı olarak, sağlama profilinizi indirmek için İndir düğmesine tıklayın.

    Not

    Sağlama profilinizi şimdi indirmeniz gerekmez. Bunun yerine, bunu Xcode'da yapacaksınız.

Xcode'da sağlama profilinizi indirme

Apple Geliştirici Hesabınızda bir sağlama profili oluşturduktan sonra, Xcode uygulamanızı imzalamak için kullanılabilir olması için bu profili indirebilir:

  1. Mac bilgisayarınızda Xcode'ı başlatın.

  2. Xcode'da Xcode > Tercihleri... menü öğesini seçin.

  3. Tercihler iletişim kutusunda Hesaplar sekmesini seçin.

  4. Hesaplar sekmesinde, Apple Geliştirici Hesabınızı Xcode'a eklemek için düğmeye tıklayın+:

    Tercihlerde Xcode Hesapları iletişim kutusu.

  5. Hesap türü açılır penceresinde Apple Kimliği'ni seçin ve ardından Devam düğmesine tıklayın:

    Xcode, açılır pencere eklemek istediğiniz hesap türünü seçin.

  6. Oturum açma açılır penceresinde Apple kimliğinizi girin ve İleri düğmesine tıklayın.

  7. Oturum açma açılır penceresinde Apple Kimliği parolanızı girin ve İleri düğmesine tıklayın:

    Xcode Apple hesabıyla oturum açma.

  8. Hesaplar sekmesinde Sertifikaları Yönet... düğmesine tıklayarak dağıtım sertifikanızın indirilmesini sağlayın.

  9. Hesaplar sekmesinde El ile Profilleri İndir düğmesine tıklayarak sağlama profillerinizi indirin:

    Xcode Apple Geliştirici Programı hesap ayrıntıları.

  10. İndirme işleminin tamamlanmasını bekleyin ve ardından Xcode'ı kapatın.

Yetkilendirme ekleme

Apple'ın Uygulama Korumalı Alanı, Mac uygulamalarında sistem kaynaklarına ve kullanıcı verilerine erişimi, bir uygulamanın gizliliğinin tehlikeye düşmesi durumunda zarar içerecek şekilde kısıtlar. Mac App Store aracılığıyla dağıtılan Mac Catalyst uygulamaları için etkinleştirilmelidir.

Bu, .NET MAUI uygulama projenizin Platforms/MacCatalyst klasörüne bir Entitlements.plist dosyası ekleyerek gerçekleştirilebilir:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>com.apple.security.app-sandbox</key>
    <true/>
  </dict>
</plist>

Uygulama Korumalı Alanı yetkilendirmesi, türündeki com.apple.security.app-sandbox booleananahtar kullanılarak tanımlanır. Uygulama Korumalı Alanı hakkında bilgi için bkz . developer.apple.com'da Uygulama Korumalı Alanı ile kullanıcı verilerini koruma. Uygulama Korumalı Alanı yetkilendirmesi hakkında bilgi için bkz . Uygulama Korumalı Alanı Yetkilendirmesi.

Uygulamanız giden ağ bağlantılarını açarsa, entitlements.plist dosyanıza türündeki booleananahtarı da eklemeniz com.apple.security.network.client gerekir:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>com.apple.security.app-sandbox</key>
    <true/>
    <key>com.apple.security.network.client</key>
    <true/>
  </dict>
</plist>

Giden ağ bağlantıları yetkilendirmesi hakkında bilgi için bkz . developer.apple.com'da com.apple.security.network.client .

Info.plist Dosyasını Güncelleştir

Uygulamanızı yayımlamadan önce, uygulamanın Mac App Store'a yüklenebilmesini sağlamak ve sorunsuz bir Mac App Store gözden geçirme işlemi sağlamaya yardımcı olmak için Info.plist dosyasını ek bilgilerle güncelleştirmeniz gerekir.

Kullanıcı arabirimi deyimini belirtme

Mac Catalyst uygulaması iPad veya Mac kullanıcı arabirimi deyiminde çalıştırılabilir:

  • iPad kullanıcı arabirimi deyimi, macOS'a uygulamanın kullanıcı arabirimini Mac ekran ortamıyla eşleşecek şekilde ölçeklendirmesini ve iPad benzeri görünümü korumasını söyler.
  • Mac kullanıcı arabirimi deyimi, uygulamanın kullanıcı arabirimini Mac ekran ortamıyla eşleşecek şekilde ölçeklendirmez. Bazı denetimler boyutlarını ve görünümlerini değiştirir ve bu denetimlerle etkileşime geçmek, denetimlerle etkileşime geçmekle AppKit aynıdır.

Varsayılan olarak, .NET MAUI Mac Catalyst uygulamaları iPad kullanıcı arabirimi deyimini kullanır. İstediğiniz davranış buysa, uygulamanın Info.plist dosyasının anahtarın değeri olarak yalnızca 2 değerini belirttiğinden UIDeviceFamily emin olun:

<key>UIDeviceFamily</key>
<array>
  <integer>2</integer>
</array>

Mac kullanıcı arabirimi deyimini benimsemek için, uygulamanın Info.plist dosyasını anahtarın değeri olarak 6 değerini belirtecek şekilde güncelleştirin UIDeviceFamily :

<key>UIDeviceFamily</key>
<array>
  <integer>6</integer>
</array>

Mac Catalyst kullanıcı arabirimi deyimleri hakkında daha fazla bilgi için bkz . Mac Catalyst uygulamanız için kullanıcı arabirimi deyimini belirtme.

Uygulama için varsayılan dili ve bölgeyi ayarlama

Uygulamanızın CFBundleDevelopmentRegion Info.plist dosyasındaki anahtarı yerelleştirme yerel geliştirme bölgesini temsil eden bir string olarak ayarlayın:

<key>CFBundleDevelopmentRegion</key>
<string>en</string>

Anahtarın değeri, isteğe bağlı bölge belirleyicisi olan bir dil belirleyicisi olmalıdır. Daha fazla bilgi için bkz . developer.apple.com üzerinde CFBundleDevelopmentRegion .

Uygulamanızın NSHumanReadableCopyright Info.plist dosyasındaki anahtarı, uygulamanız için insan tarafından okunabilen telif hakkı bildirimini temsil eden bir string olarak ayarlayın:

<key>NSHumanReadableCopyright</key>
<string>MyMauiApp © 2023</string>

Daha fazla bilgi için bkz . developer.apple.com üzerinde NSHumanReadableCopyright .

Uygulama kategorisini ayarlama

Kategoriler, kullanıcıların Uygulamanızı Mac App Store'da bulmasına yardımcı olur. Info.plist dosyanızda uygulamanın birincil kategorisini ayarlayabilirsiniz:

<key>LSApplicationCategoryType</key>
<string>public.app-category.utilities</string>

Daha fazla bilgi için bkz . developer.apple.com üzerinde LSApplicationCategoryType .

Not

Uygulamanızın birincil kategorisi, App Store Connect'te ayarladığınız birincil kategoriyle eşleşmelidir.

Uygulamanızın şifreleme kullandığını bildirme

Uygulamanız şifreleme kullanıyorsa ve bunu Birleşik Devletler veya Kanada dışında dağıtmayı planlıyorsanız, abd dışarı aktarma uyumluluk gereksinimlerine tabidir. Uygulamanızın bir sürümünü App Store Connect'e her gönderdiğinizde, bir şifreleme dışarı aktarma düzenlemeleri uyumluluk gözden geçirmesi yapılır. App Store Connect'in incelemede size yol gösterecek sorular sormasını önlemek için, uygulamanızın Info.plist dosyasında gerekli bilgileri sağlayabilirsiniz.

Bu, anahtarı uygulamanızın ITSAppUsesNonExemptEncryption Info.plist'ine uygulamanızın şifreleme kullanıp kullanmadığını gösteren bir boolean değerle ekleyerek gerçekleştirilir:

<key>ITSAppUsesNonExemptEncryption</key>
<false/>

Daha fazla bilgi için bkz . developer.apple.com'da Şifreleme Dışarı Aktarma Düzenlemelerine Uyma .

Komut satırını kullanarak yayımlama

Mac Catalyst uygulamanızı bir Mac'te komut satırından yayımlamak için bir terminal açın ve .NET MAUI uygulama projenizin klasörüne gidin. dotnet publish Komutunu çalıştırarak aşağıdaki parametreleri sağlayın:

Parametre Value
-f veya --framework Hedef çerçeve olan net8.0-maccatalyst.
-c veya --configuration Derleme yapılandırmasıdır Release.
-p:MtouchLink Projenin bağlantı modu ; , veya FullolabilirNoneSdkOnly.
-p:CreatePackage true derlemenin sonunda uygulama için bir paket (.pkg) oluşturulacak şekilde olarak ayarlayın.
-p:EnableCodeSigning Kod imzalamanın etkinleştirilmesi için true olarak ayarlayın.
-p:EnablePackageSigning true oluşturulan paketin imzalanacağı şekilde olarak ayarlayın.
-p:CodesignKey Kod imzalama anahtarının adı. Anahtarlık Erişimi'nde gösterildiği gibi dağıtım sertifikanızın adına ayarlayın.
-p:CodesignProvision Uygulama paketini imzalarken kullanılacak sağlama profili.
-p:CodesignEntitlements Uygulamanın gerektirdiği yetkilendirmeleri belirten yetkilendirmeler dosyasının yolu. Platforms\MacCatalyst\Entitlements.plist olarak ayarlayın.
-p:PackageSigningKey Paketi imzalarken kullanılacak paket imzalama anahtarı. Anahtar Zinciri Erişimi'nde gösterildiği gibi yükleyici sertifikanızın adına ayarlayın.

Uyarı

.NET MAUI çözümünü yayımlamaya çalışmak, komutun dotnet publish çözümdeki her projeyi tek tek yayımlamaya çalışmasıyla sonuçlanır ve bu da çözümünüze başka proje türleri eklediğinizde sorunlara neden olabilir. Bu nedenle, komutun dotnet publish kapsamı .NET MAUI uygulama projeniz olarak belirlenmiş olmalıdır.

Proje dosyanızda bir <PropertyGroup> içinde sağlanmamışsa, komut satırında ek derleme parametreleri belirtilebilir. Aşağıdaki tabloda yaygın parametrelerden bazıları listelemektedir:

Parametre Value
-p:ApplicationTitle Uygulamanın kullanıcı tarafından görünen adı.
-p:ApplicationId Uygulamanın benzersiz tanımlayıcısı, örneğin com.companyname.mymauiapp.
-p:ApplicationVersion Uygulamanın yinelemesini tanımlayan derleme sürümü.
-p:ApplicationDisplayVersion Uygulamanın sürüm numarası.

Derleme özelliklerinin tam listesi için bkz . Proje dosyası özellikleri.

Önemli

Bu parametrelerin tümünün değerlerinin komut satırında sağlanması gerekmez. Bunlar proje dosyasında da sağlanabilir. Komut satırında ve proje dosyasında bir parametre sağlandığında, komut satırı parametresi önceliklidir. Proje dosyanızda derleme özellikleri sağlama hakkında daha fazla bilgi için bkz . Proje dosyanızda derleme özelliklerini tanımlama.

Örneğin, Mac App Store aracılığıyla dağıtım için Mac'te bir .pkg oluşturmak ve imzalamak için aşağıdaki komutu kullanın:

dotnet publish -f net8.0-maccatalyst -c Release -p:MtouchLink=SdkOnly -p:CreatePackage=true -p:EnableCodeSigning=true -p:EnablePackageSigning=true -p:CodesignKey="Apple Distribution: John Smith (AY2GDE9QM7)" -p:CodesignProvision="MyMauiApp" -p:CodesignEntitlements="Platforms\MacCatalyst\Entitlements.plist" -p:PackageSigningKey="3rd Party Mac Developer Installer: John Smith (AY2GDE9QM7)"

Not

.NET 8'de dotnet publish komut varsayılan olarak yapılandırmaya sahiptir Release . Bu nedenle, derleme yapılandırması komut satırından atlanabilir.

Yayımlama işlemi uygulamayı oluşturur, imzalar ve paketler ve ardından .pkg bölme/Release/net8.0-maccatalyst/publish/ klasörüne kopyalar. Uygulamayı yalnızca tek bir mimari kullanarak yayımlarsanız, kutu/Release/net8.0-maccatalyst/{architecture}/publish/ klasörüne yayımlanır.

İmzalama işlemi sırasında oturum açma parolanızı girmeniz ve aşağıdakilere izin vermek codesign ve productbuild çalıştırmak gerekebilir:

Mac bilgisayarınızda birlikte tasarlamanın uygulamanızı imzalamasına izin verin.Productbuild uygulamasının Mac'inizde uygulamanızı imzalamasına izin verin.

Komut hakkında dotnet publish daha fazla bilgi için bkz . dotnet publish.

Proje dosyanızda derleme özelliklerini tanımlama

Komut satırında derleme parametrelerini belirtmenin bir alternatifi, bunları içindeki <PropertyGroup>proje dosyanızda belirtmektir. Aşağıdaki tabloda, yaygın derleme özelliklerinden bazıları listelenir:

Özellik Değer
<ApplicationTitle> Uygulamanın kullanıcı tarafından görünen adı.
<ApplicationId> Uygulamanın benzersiz tanımlayıcısı, örneğin com.companyname.mymauiapp.
<ApplicationVersion> Uygulamanın yinelemesini tanımlayan derleme sürümü.
<ApplicationDisplayVersion> Uygulamanın sürüm numarası.
<CodesignKey> Kod imzalama anahtarının adı. Anahtarlık Erişimi'nde gösterildiği gibi dağıtım sertifikanızın adına ayarlayın.
<CodesignEntitlements> Uygulamanın gerektirdiği yetkilendirmeleri belirten yetkilendirmeler dosyasının yolu. Platforms\MacCatalyst\Entitlements.plist olarak ayarlayın.
<CodesignProvision> Uygulama paketini imzalarken kullanılacak sağlama profili.
<CreatePackage> true derlemenin sonunda uygulama için bir paket (.pkg) oluşturulacak şekilde olarak ayarlayın.
<EnableCodeSigning> Kod imzalamanın etkinleştirilmesi için true olarak ayarlayın.
<EnablePackageSigning> true oluşturulan paketin imzalanacağı şekilde olarak ayarlayın.
<MtouchLink> Projenin bağlantı modu ; , veya FullolabilirNoneSdkOnly.
<PackageSigningKey> Paketi imzalarken kullanılacak paket imzalama anahtarı. Anahtar Zinciri Erişimi'nde gösterildiği gibi yükleyici sertifikanızın adına ayarlayın.

Derleme özelliklerinin tam listesi için bkz . Proje dosyası özellikleri.

Önemli

Bu derleme özelliklerine ilişkin değerlerin proje dosyasında sağlanması gerekmez. Bunlar, uygulamayı yayımladığınızda komut satırında da sağlanabilir. Bu, proje dosyanızdan belirli değerleri atlamanızı sağlar.

Aşağıdaki örnekte, Mac App Store dağıtımı için Mac Catalyst uygulamanızı oluşturmaya ve imzalamaya yönelik tipik bir özellik grubu gösterilmektedir:

<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net8.0-maccatalyst|AnyCPU'">
  <MtouchLink>SdkOnly</MtouchLink>
  <EnableCodeSigning>True</EnableCodeSigning>
  <EnablePackageSigning>true</EnablePackageSigning>
  <CreatePackage>true</CreatePackage>
  <CodesignKey>Apple Distribution: John Smith (AY2GDE9QM7)</CodesignKey>
  <CodesignProvision>MyMauiApp</CodesignProvision>
  <CodesignEntitlements>Platforms\MacCatalyst\Entitlements.plist</CodesignEntitlements>
  <PackageSigningKey>3rd Party Mac Developer Installer: John Smith (AY2GDE9QM7)</PackageSigningKey>
</PropertyGroup>

Bu örnek <PropertyGroup> , koşul denetimi geçmediği sürece ayarların işlenmesini engelleyen bir koşul denetimi ekler. Koşul denetimi iki öğeyi arar:

  1. Derleme yapılandırması olarak Releaseayarlanır.
  2. Hedef çerçeve, metnini net8.0-maccatalystiçeren bir şeye ayarlanır.
  3. Platform olarak AnyCPUayarlanır.

Bu koşullardan herhangi biri başarısız olursa, ayarlar işlenmez. Daha da önemlisi, <CodesignKey>, <CodesignProvision>ve ayarları ayarlanmamıştır ve <PackageSigningKey> uygulamanın imzalanmasını engeller.

Yukarıdaki özellik grubunu ekledikten sonra uygulama, bir terminal açarak ve .NET MAUI uygulama projenizin klasörüne giderek Mac'te komut satırından yayımlanabilir. Ardından şu komutu çalıştırın:

dotnet build -f net8.0-maccatalyst -c Release

Not

.NET 8'de dotnet publish komut varsayılan olarak yapılandırmaya sahiptir Release . Bu nedenle, derleme yapılandırması komut satırından atlanabilir.

Yayımlama işlemi uygulamayı oluşturur, imzalar ve paketler ve ardından .pkg bölme/Release/net8.0-maccatalyst/publish/ klasörüne kopyalar.

Mac App Store'a yükleme

Bir uygulama apple dağıtım sertifikasıyla imzalandıktan sonra yerel olarak çalıştırılamaz. Bunun yerine, yerel yürütmeyi etkinleştirmek için yeniden imzalanacağı App Store Connect'e yüklenmelidir.

Uygulamanızı Mac App Store veya TestFlight aracılığıyla dağıtmak için App Store Connect'te bir uygulama kaydı oluşturmanız gerekir. Bu kayıt, App Store'da görüneceği için uygulama hakkındaki tüm bilgileri ve dağıtım işlemi boyunca uygulamayı yönetmek için gereken tüm bilgileri içerir. Daha fazla bilgi için bkz . developer.apple.com üzerinde uygulama kaydı oluşturma.

Transporter , uygulamanızı Mac App Store'a göndermek için kullanılabilir. Ayrıca, başarılı gönderimi durduran uygulama paketleriyle ilgili hataların belirlenmesine de yardımcı olur.

Ayrıca bkz.