Udostępnij za pośrednictwem


Publikowanie aplikacji Mac Catalyst dla dystrybucji sklepu Mac App Store

Najczęstszym podejściem do dystrybucji aplikacji Mac Catalyst dla użytkowników jest sklep Mac App Store. Aplikacje są przesyłane do sklepu Mac App Store za pośrednictwem narzędzia online o nazwie App Store Connect. Tylko deweloperzy należący do programu Apple Developer Program mają dostęp do tego narzędzia. Członkowie programu Apple Developer Enterprise Program nie mają dostępu. Wszystkie aplikacje przesłane do sklepu Mac App Store wymagają zatwierdzenia od firmy Apple.

Dystrybucja aplikacji Mac Catalyst wymaga aprowizacji aplikacji przy użyciu profilu aprowizacji. Profile aprowizacji to pliki zawierające informacje o podpisywaniu kodu, a także tożsamość aplikacji i jej zamierzony mechanizm dystrybucji.

Aby dystrybuować aplikację Mac Catalyst interfejsu użytkownika aplikacji wieloplatformowej platformy .NET (.NET MAUI), należy utworzyć profil aprowizacji dystrybucji specyficzny dla niego. Ten profil umożliwia cyfrowe podpisanie aplikacji na potrzeby wydania, dzięki czemu można ją zainstalować na komputerach Mac. Profil aprowizacji dystrybucji zawiera identyfikator aplikacji i certyfikat dystrybucji. Jeśli jeszcze go nie masz, musisz utworzyć certyfikat dystrybucji, aby zidentyfikować siebie lub organizację. Ponadto należy utworzyć certyfikat instalatora dla komputerów Mac w celu podpisania pakietu instalatora aplikacji w celu przesłania do sklepu Mac App Store.

Proces aprowizacji aplikacji .NET MAUI Mac Catalyst do dystrybucji za pośrednictwem sklepu Mac App Store jest następujący:

  1. Utwórz żądanie podpisania certyfikatu. Aby uzyskać więcej informacji, zobacz Tworzenie żądania podpisania certyfikatu.
  2. Utwórz certyfikat dystrybucji. Aby uzyskać więcej informacji, zobacz Tworzenie certyfikatu dystrybucji.
  3. Utwórz certyfikat instalatora. Aby uzyskać więcej informacji, zobacz Tworzenie certyfikatu instalatora.
  4. Utwórz identyfikator aplikacji. Aby uzyskać więcej informacji, zobacz Tworzenie identyfikatora aplikacji.
  5. Skonfiguruj identyfikator aplikacji. Aby uzyskać więcej informacji, zobacz Konfigurowanie identyfikatora aplikacji.
  6. Utwórz profil aprowizacji. Aby uzyskać więcej informacji, zobacz Tworzenie profilu aprowizacji.
  7. Pobierz profil aprowizacji. Aby uzyskać więcej informacji, zobacz Pobieranie profilu aprowizacji w środowisku Xcode.

Następnie po zakończeniu aprowizacji należy przygotować aplikację do publikowania, a następnie opublikować ją przy użyciu następującego procesu:

  1. Dodaj wymagane uprawnienia do aplikacji. Aby uzyskać więcej informacji, zobacz Dodawanie uprawnień.
  2. Zaktualizuj plik Info.plist aplikacji. Aby uzyskać więcej informacji, zobacz Update Info.plist (Aktualizowanie pliku Info.plist).
  3. Opublikuj aplikację przy użyciu wiersza polecenia. Aby uzyskać więcej informacji, zobacz Publikowanie przy użyciu wiersza polecenia.

Tworzenie żądania podpisania certyfikatu

Przed utworzeniem certyfikatu dystrybucji należy najpierw utworzyć żądanie podpisania certyfikatu (CSR) w programie Keychain Access na komputerze Mac:

  1. Na komputerze Mac uruchom program Keychain Access.

  2. W obszarze Dostęp do pęku kluczy wybierz asystenta > certyfikatów dostępu > łańcucha kluczy zażądać certyfikatu z poziomu elementu menu Urząd certyfikacji... .

  3. W oknie dialogowym Asystent certyfikatów wprowadź adres e-mail w polu Adres e-mail użytkownika.

  4. W oknie dialogowym Asystent certyfikatów wprowadź nazwę klucza w polu Nazwa pospolita.

  5. W oknie dialogowym Asystent certyfikatów pozostaw puste pole Adres e-mail urzędu certyfikacji.

  6. W oknie dialogowym Asystent certyfikatów wybierz przycisk radiowy Zapisane na dysku i wybierz pozycję Kontynuuj:

    Okno dialogowe Asystenta certyfikatów.

  7. Zapisz żądanie podpisania certyfikatu w znanej lokalizacji.

  8. W oknie dialogowym Asystent certyfikatów wybierz przycisk Gotowe.

  9. Zamknij pozycję Dostęp pęku kluczy.

Tworzenie certyfikatu dystrybucji

Csr umożliwia wygenerowanie certyfikatu dystrybucji, który potwierdza twoją tożsamość. Certyfikat dystrybucji należy utworzyć przy użyciu identyfikatora Apple ID dla konta dewelopera firmy Apple:

  1. W przeglądarce internetowej zaloguj się do konta dewelopera firmy Apple.

  2. Na koncie dewelopera firmy Apple wybierz kartę Certyfikaty, Identyfikatory i profile .

  3. Na stronie Certyfikaty, identyfikatory i profile wybierz + przycisk, aby utworzyć nowy certyfikat.

  4. Na stronie Tworzenie nowego certyfikatu wybierz przycisk radiowy Dystrybucja firmy Apple przed wybraniem przycisku Kontynuuj:

    Utwórz certyfikat dystrybucji firmy Apple.

  5. Na stronie Tworzenie nowego certyfikatu wybierz pozycję Wybierz plik:

    Przekaż żądanie podpisania certyfikatu dla certyfikatu dystrybucji firmy Apple.

  6. W oknie dialogowym Wybieranie plików do przekazania wybierz utworzony wcześniej plik żądania certyfikatu (plik z .certSigningRequest rozszerzeniem pliku), a następnie wybierz pozycję Przekaż.

  7. Na stronie Tworzenie nowego certyfikatu wybierz przycisk Kontynuuj:

    Kontynuuj generowanie certyfikatu dystrybucji.

  8. Na stronie Pobierz certyfikat wybierz przycisk Pobierz:

    Pobierz certyfikat dystrybucji firmy Apple.

    Plik certyfikatu (plik z rozszerzeniem) zostanie pobrany do wybranej .cer lokalizacji.

  9. Na komputerze Mac kliknij dwukrotnie pobrany plik certyfikatu, aby zainstalować certyfikat w pęku kluczy. Certyfikat jest wyświetlany w kategorii Moje certyfikaty w obszarze Dostęp do łańcucha kluczy i rozpoczyna się od dystrybucji firmy Apple:

    Dostęp pęku kluczy przedstawiający certyfikat dystrybucji.

    Uwaga

    Zanotuj pełną nazwę certyfikatu w programie Keychain Access. Będzie to wymagane podczas podpisywania aplikacji.

Tworzenie certyfikatu instalatora

Csr umożliwia wygenerowanie certyfikatu instalatora, który jest wymagany do podpisania pakietu instalatora aplikacji w celu przesłania do sklepu Mac App Store. Certyfikat instalatora należy utworzyć przy użyciu identyfikatora Apple ID dla konta dewelopera firmy Apple:

  1. Na koncie dewelopera firmy Apple wybierz kartę Certyfikaty, Identyfikatory i profile .

  2. Na stronie Certyfikaty, identyfikatory i profile wybierz + przycisk, aby utworzyć nowy certyfikat.

  3. Na stronie Tworzenie nowego certyfikatu wybierz przycisk radiowy Dystrybucja Instalatora Mac przed wybraniem przycisku Kontynuuj:

    Utwórz certyfikat dystrybucji Instalatora Mac.

  4. Na stronie Tworzenie nowego certyfikatu wybierz pozycję Wybierz plik:

    Przekaż żądanie podpisania certyfikatu dla certyfikatu instalatora dla komputerów Mac.

  5. W oknie dialogowym Wybieranie plików do przekazania wybierz utworzony wcześniej plik żądania certyfikatu (plik z .certSigningRequest rozszerzeniem pliku), a następnie wybierz pozycję Przekaż.

  6. Na stronie Tworzenie nowego certyfikatu wybierz przycisk Kontynuuj:

    Kontynuuj generowanie certyfikatu instalatora.

  7. Na stronie Pobierz certyfikat wybierz przycisk Pobierz:

    Pobierz certyfikat instalatora dla komputerów Mac.

    Plik certyfikatu (plik z rozszerzeniem) zostanie pobrany do wybranej .cer lokalizacji.

  8. Na komputerze Mac kliknij dwukrotnie pobrany plik certyfikatu, aby zainstalować certyfikat w pęku kluczy. Certyfikat jest wyświetlany w kategorii Moje certyfikaty w obszarze Dostęp do pęku kluczy i rozpoczyna się od instalatora dewelopera mac innej firmy:

    Dostęp pęku kluczy przedstawiający certyfikat instalatora.

    Uwaga

    Zanotuj pełną nazwę certyfikatu w programie Keychain Access. Będzie to wymagane podczas podpisywania aplikacji.

Tworzenie profilu dystrybucji

Profil aprowizacji dystrybucji umożliwia cyfrowe podpisanie aplikacji .NET MAUI Mac Catalyst na potrzeby wydania, dzięki czemu można ją zainstalować na innym komputerze Mac. Profil aprowizacji dystrybucji sklepu Mac App Store zawiera identyfikator aplikacji i certyfikat dystrybucji.

Tworzenie identyfikatora aplikacji

Identyfikator aplikacji jest wymagany do zidentyfikowania dystrybuowanych aplikacji. Identyfikator aplikacji jest podobny do ciągu odwrotnego DNS, który jednoznacznie identyfikuje aplikację i powinien być identyczny z identyfikatorem pakietu aplikacji. Na potrzeby testowania możesz użyć tego samego identyfikatora aplikacji, który został użyty podczas wdrażania aplikacji na urządzeniu.

Istnieją dwa typy identyfikatorów aplikacji:

  • Symbol wieloznaczny. Identyfikator aplikacji z symbolami wieloznacznymi umożliwia używanie jednego identyfikatora aplikacji do dopasowania wielu aplikacji i zazwyczaj ma postać com.domainname.*. Identyfikator aplikacji z symbolami wieloznacznymi może służyć do dystrybucji wielu aplikacji i powinien być używany w przypadku aplikacji, które nie umożliwiają obsługi funkcji specyficznych dla aplikacji.
  • Wyraźny. Jawny identyfikator aplikacji jest unikatowy dla pojedynczej aplikacji i zazwyczaj ma postać com.domainname.myid. Jawny identyfikator aplikacji umożliwia dystrybucję jednej aplikacji z pasującym identyfikatorem pakietu. Jawne identyfikatory aplikacji są zwykle używane w przypadku aplikacji, które umożliwiają korzystanie z funkcji specyficznych dla aplikacji, takich jak Apple Pay lub Game Center. Aby uzyskać więcej informacji na temat możliwości, zobacz Możliwości.

Aby utworzyć nowy identyfikator aplikacji:

  1. Na koncie dewelopera firmy Apple przejdź do pozycji Certyfikaty, identyfikatory i profile.

  2. Na stronie Certyfikaty, Identyfikatory i profile wybierz kartę Identyfikatory .

  3. Na stronie Identyfikatory wybierz + przycisk , aby utworzyć nowy identyfikator aplikacji.

  4. Na stronie Rejestrowanie nowego identyfikatora wybierz przycisk radiowy Identyfikatory aplikacji przed wybraniem przycisku Kontynuuj:

    Utwórz identyfikator aplikacji.

  5. Na stronie Rejestrowanie nowego identyfikatora wybierz pozycję Aplikacja przed wybraniem przycisku Kontynuuj:

    Zarejestruj identyfikator aplikacji.

  6. Na stronie Rejestrowanie identyfikatora aplikacji wprowadź opis i wybierz przycisk radiowy Jawny lub Wieloznaczny identyfikator pakietu. Następnie wprowadź identyfikator pakietu dla aplikacji w odwrotnym formacie DS:

    Określ identyfikator pakietu dla aplikacji.

    Ważne

    Wprowadzony identyfikator pakietu musi odpowiadać identyfikatorowi pakietu w pliku Info.plist w projekcie aplikacji.

    Identyfikator pakietu dla aplikacji MAUI platformy .NET jest przechowywany w pliku projektu jako właściwość Identyfikator aplikacji. W programie Visual Studio w Eksplorator rozwiązań kliknij prawym przyciskiem myszy projekt aplikacji .NET MAUI i wybierz pozycję Właściwości. Następnie przejdź do karty Ogólne udostępnione > usługi MAUI. Pole Identyfikator aplikacji zawiera listę identyfikatora pakietu.

    Po zaktualizowaniu wartości pola Identyfikator aplikacji wartość identyfikatora pakietu w pliku Info.plist zostanie automatycznie zaktualizowana.

  7. Na stronie Rejestrowanie identyfikatora aplikacji wybierz wszystkie możliwości używane przez aplikację. Wszystkie możliwości należy skonfigurować zarówno na tej stronie, jak i w pliku Entitlements.plist w projekcie aplikacji. Aby uzyskać więcej informacji, zobacz Możliwości i uprawnienia.

  8. Na stronie Rejestrowanie identyfikatora aplikacji wybierz przycisk Kontynuuj.

  9. Na stronie Potwierdzanie identyfikatora aplikacji wybierz przycisk Zarejestruj.

Konfigurowanie identyfikatora aplikacji

Domyślnie aplikacja Mac Catalyst używa tego samego identyfikatora pakietu co aplikacja systemu iOS, dzięki czemu możesz oferować aplikacje razem jako uniwersalny zakup w sklepie Mac App Store. Alternatywnie możesz określić unikatowy identyfikator pakietu, który będzie oferować aplikację jako oddzielny produkt.

Aby skonfigurować identyfikator aplikacji:

  1. Na koncie dewelopera firmy Apple przejdź do pozycji Certyfikaty, identyfikatory i profile.

  2. Na stronie Certyfikaty, Identyfikatory i profile wybierz kartę Identyfikatory .

  3. Na stronie Identyfikatory wybierz właśnie utworzony identyfikator aplikacji.

  4. Na stronie Edytowanie konfiguracji identyfikatora aplikacji przewiń w dół strony i włącz pole wyboru Możliwości katalizatora dla komputerów Mac. Następnie wybierz przycisk Konfiguruj :

    Włącz funkcję Katalizator dla komputerów Mac.

  5. W oknie podręcznym Konfigurowanie identyfikatora pakietu dla programu Mac Catalyst wybierz przycisk radiowy Użyj istniejącego identyfikatora aplikacji dla komputerów Mac. Z listy rozwijanej Identyfikator aplikacji wybierz identyfikator aplikacji Dla partnera mac Catalyst dla aplikacji dla systemu iOS lub identyfikator aplikacji, który został utworzony, jeśli oferujesz aplikację Mac Catalyst jako oddzielny produkt. Następnie wybierz przycisk Zapisz:

    Skonfiguruj identyfikator pakietu dla programu Mac Catalyst.

  6. Na stronie Edytowanie konfiguracji identyfikatora aplikacji wybierz przycisk Zapisz:

    Zapisz konfigurację programu Mac Catalyst.

  7. W oknie podręcznym Modyfikowanie możliwości aplikacji wybierz przycisk Potwierdź :

    Zmodyfikuj możliwości aplikacji.

Tworzenie profilu aprowizacji

Po utworzeniu i skonfigurowaniu identyfikatora aplikacji należy utworzyć profil aprowizacji dystrybucji. Ten profil umożliwia cyfrowe podpisanie aplikacji na potrzeby wydania, dzięki czemu można ją zainstalować na komputerach Mac.

Aby utworzyć profil aprowizacji dla dystrybucji sklepu Mac App Store:

  1. Na stronie Certyfikaty, identyfikatory i profile konta dewelopera firmy Apple wybierz kartę Profile .

  2. Na karcie Profile kliknij + przycisk , aby utworzyć nowy profil.

  3. Na stronie Rejestrowanie nowego profilu aprowizacji wybierz przycisk radiowy Sklep Mac App Store przed kliknięciem przycisku Kontynuuj:

    Zarejestruj profil aprowizacji dla dystrybucji sklepu z aplikacjami.

  4. Na stronie Generowanie profilu aprowizacji wybierz przycisk radiowy Mac. Następnie z listy rozwijanej Identyfikator aplikacji wybierz wcześniej utworzony identyfikator aplikacji przed kliknięciem przycisku Kontynuuj :

    Wybierz swój identyfikator aplikacji.

  5. Na stronie Generowanie profilu aprowizacji wybierz przycisk radiowy odpowiadający certyfikatowi dystrybucji przed kliknięciem przycisku Kontynuuj :

    Wybierz certyfikat dystrybucji.

  6. Na stronie Generowanie profilu aprowizacji wprowadź nazwę profilu aprowizacji przed kliknięciem przycisku Generuj:

    Wygeneruj profil aprowizacji.

    Uwaga

    Zanotuj nazwę profilu aprowizacji, ponieważ będzie ona wymagana podczas podpisywania aplikacji.

  7. Na stronie Generowanie profilu aprowizacji opcjonalnie kliknij przycisk Pobierz, aby pobrać profil aprowizacji.

    Uwaga

    Teraz nie trzeba pobierać profilu aprowizacji. Zamiast tego zrobisz to w środowisku Xcode.

Pobieranie profilu aprowizacji w środowisku Xcode

Po utworzeniu profilu aprowizacji na koncie dewelopera firmy Apple program Xcode może go pobrać, aby był dostępny do podpisywania aplikacji:

  1. Na komputerze Mac uruchom program Xcode.

  2. W programie Xcode wybierz element menu Preferencje programu Xcode > ... .

  3. W oknie dialogowym Preferencje wybierz kartę Konta.

  4. Na karcie Konta kliknij + przycisk , aby dodać konto dewelopera Apple do programu Xcode:

    Okno dialogowe Konta programu Xcode w preferencjach.

  5. W oknie podręcznym typ konta wybierz pozycję Apple ID , a następnie kliknij przycisk Kontynuuj :

    Xcode wybierz typ konta, które chcesz dodać, wyskakujące okienko.

  6. W oknie podręcznym logowania wprowadź swój identyfikator Apple ID i kliknij przycisk Dalej .

  7. W oknie podręcznym logowania wprowadź hasło identyfikatora Apple ID i kliknij przycisk Dalej :

    Logowanie się do konta firmy Apple za pomocą programu Xcode.

  8. Na karcie Konta kliknij przycisk Zarządzaj certyfikatami... , aby upewnić się, że certyfikat dystrybucji został pobrany.

  9. Na karcie Konta kliknij przycisk Pobierz profile ręczne, aby pobrać profile aprowizacji:

    Szczegóły konta programu Xcode Dla deweloperów firmy Apple.

  10. Poczekaj na zakończenie pobierania, a następnie zamknij program Xcode.

Dodawanie uprawnień

Piaskownica aplikacji firmy Apple ogranicza dostęp do zasobów systemowych i danych użytkownika w aplikacjach dla komputerów Mac, aby zawierać uszkodzenia w przypadku naruszenia zabezpieczeń aplikacji. Musi być włączona dla aplikacji Mac Catalyst, które są dystrybuowane za pośrednictwem sklepu Mac App Store.

Można to osiągnąć, dodając plik Entitlements.plist do folderu Platforms/MacCatalyst projektu aplikacji .NET MAUI:

<?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>

Uprawnienie piaskownicy aplikacji jest definiowane przy użyciu com.apple.security.app-sandbox klucza typu boolean. Aby uzyskać informacje na temat piaskownicy aplikacji, zobacz Ochrona danych użytkownika za pomocą piaskownicy aplikacji w developer.apple.com. Aby uzyskać informacje o uprawnieniach piaskownicy aplikacji, zobacz Uprawnienia piaskownicy aplikacji.

Jeśli aplikacja otworzy wychodzące połączenia sieciowe, musisz również dodać com.apple.security.network.client klucz typu boolean, do pliku Entitlements.plist :

<?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>

Aby uzyskać informacje o upoważnieniu wychodzących połączeń sieciowych, zobacz com.apple.security.network.client w developer.apple.com.

Aktualizowanie pliku Info.plist

Przed opublikowaniem aplikacji należy zaktualizować jego plik Info.plist o dodatkowe informacje, aby upewnić się, że można przekazać aplikację do sklepu Mac App Store i zapewnić sprawny proces przeglądu sklepu Mac App Store.

Określanie idiomu interfejsu użytkownika

Aplikacja Mac Catalyst może działać w idiom interfejsu użytkownika iPad lub Mac:

  • Idiom interfejsu użytkownika tabletu iPad nakazuje systemowi macOS skalowanie interfejsu użytkownika aplikacji w celu dopasowania środowiska wyświetlania komputerów Mac przy jednoczesnym zachowaniu wyglądu przypominającego tablet iPad.
  • Idiom interfejsu użytkownika dla komputerów Mac nie skaluje interfejsu użytkownika aplikacji w celu dopasowania go do środowiska wyświetlania komputerów Mac. Niektóre kontrolki zmieniają swój rozmiar i wygląd i współdziałają z nimi tak samo, jak w przypadku interakcji z kontrolkami AppKit .

Domyślnie aplikacje .NET MAUI Mac Catalyst używają idiomu interfejsu użytkownika tabletu iPad. Jeśli jest to żądane zachowanie, upewnij się, że plik Info.plist aplikacji określa tylko 2 jako wartość UIDeviceFamily klucza:

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

Aby wdrożyć idiom interfejsu użytkownika dla komputerów Mac, zaktualizuj plik Info.plist aplikacji, aby określić wartość 6 jako wartość UIDeviceFamily klucza:

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

Aby uzyskać więcej informacji na temat idiomów interfejsu użytkownika Narzędzia Mac Catalyst, zobacz Określanie idiom interfejsu użytkownika dla aplikacji Mac Catalyst.

Ustawianie domyślnego języka i regionu dla aplikacji

CFBundleDevelopmentRegion Ustaw klucz w pliku Info.plist aplikacji na wartość string , która reprezentuje region programowania natywnego lokalizacji:

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

Wartość klucza powinna być projektantem języka z opcjonalnym projektantem regionu. Aby uzyskać więcej informacji, zobacz CFBundleDevelopmentRegion w developer.apple.com.

NSHumanReadableCopyright Ustaw klucz w pliku Info.plist aplikacji na wartość string reprezentującą czytelne dla człowieka powiadomienie o prawach autorskich dla aplikacji:

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

Aby uzyskać więcej informacji, zobacz NSHumanReadableCopyright w developer.apple.com.

Ustawianie kategorii aplikacji

Kategorie ułatwiają użytkownikom odnajdywanie aplikacji w sklepie Mac App Store. Możesz ustawić kategorię podstawową aplikacji w pliku Info.plist :

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

Aby uzyskać więcej informacji, zobacz LSApplicationCategoryType w developer.apple.com.

Uwaga

Podstawowa kategoria aplikacji musi być zgodna z podstawową kategorią ustawioną w programie App Store Connect.

Deklarowanie użycia szyfrowania aplikacji

Jeśli aplikacja korzysta z szyfrowania i planujesz rozpowszechnić ją poza Stany Zjednoczone lub Kanadą, będzie ona objęta wymaganiami dotyczącymi zgodności eksportu w STANACH Zjednoczonych. Za każdym razem, gdy przesyłasz wersję aplikacji do programu App Store Connect, przechodzi przegląd zgodności przepisów eksportu szyfrowania. Aby uniknąć zadawania pytań przez program App Store Connect, możesz podać wymagane informacje w pliku Info.plist aplikacji.

Jest to realizowane przez dodanie ITSAppUsesNonExemptEncryption klucza do pliku Info.plist aplikacji z wartością wskazującąboolean, czy aplikacja używa szyfrowania:

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

Aby uzyskać więcej informacji, zobacz Zgodność z przepisami dotyczącymi eksportu szyfrowania w developer.apple.com.

Publikowanie przy użyciu wiersza polecenia

Aby opublikować aplikację Mac Catalyst z poziomu wiersza polecenia na komputerze Mac, otwórz terminal i przejdź do folderu dla projektu aplikacji .NET MAUI. dotnet publish Uruchom polecenie , podając następujące parametry:

Parametr Wartość
-f lub --framework Struktura docelowa, czyli net8.0-maccatalyst.
-c lub --configuration Konfiguracja kompilacji, czyli Release.
-p:MtouchLink Tryb linku dla projektu, który może być None, SdkOnlylub Full.
-p:CreatePackage Ustaw wartość na true , aby pakiet (.pkg) został utworzony dla aplikacji na końcu kompilacji.
-p:EnableCodeSigning Ustaw wartość na true , aby włączono podpisywanie kodu.
-p:EnablePackageSigning Ustaw wartość na true , aby utworzony pakiet został podpisany.
-p:CodesignKey Nazwa klucza podpisywania kodu. Ustaw nazwę certyfikatu dystrybucji, jak pokazano w sekcji Dostęp do pęku kluczy.
-p:CodesignProvision Profil aprowizacji do użycia podczas podpisywania pakietu aplikacji.
-p:CodesignEntitlements Ścieżka do pliku uprawnień, który określa uprawnienia wymagane przez aplikację. Ustaw wartość Platforms\MacCatalyst\Entitlements.plist.
-p:PackageSigningKey Klucz podpisywania pakietu do użycia podczas podpisywania pakietu. Ustaw nazwę certyfikatu instalatora, jak pokazano w sekcji Dostęp pęku kluczy.

Ostrzeżenie

Próba opublikowania rozwiązania MAUI platformy .NET spowoduje dotnet publish , że polecenie podejmie próbę opublikowania każdego projektu w rozwiązaniu osobno, co może powodować problemy podczas dodawania innych typów projektów do rozwiązania. W związku z dotnet publish tym polecenie powinno być ograniczone do projektu aplikacji .NET MAUI.

Dodatkowe parametry kompilacji można określić w wierszu polecenia, jeśli nie są one podane w <PropertyGroup> pliku projektu. W poniższej tabeli wymieniono niektóre typowe parametry:

Parametr Wartość
-p:ApplicationTitle Nazwa widoczna dla użytkownika dla aplikacji.
-p:ApplicationId Unikatowy identyfikator aplikacji, taki jak com.companyname.mymauiapp.
-p:ApplicationVersion Wersja kompilacji identyfikującej iterację aplikacji.
-p:ApplicationDisplayVersion Numer wersji aplikacji.

Aby uzyskać pełną listę właściwości kompilacji, zobacz Właściwości pliku projektu.

Ważne

Wartości dla wszystkich tych parametrów nie muszą być podane w wierszu polecenia. Można je również udostępnić w pliku projektu. Jeśli parametr jest udostępniany w wierszu polecenia i w pliku projektu, parametr wiersza polecenia ma pierwszeństwo. Aby uzyskać więcej informacji na temat udostępniania właściwości kompilacji w pliku projektu, zobacz Definiowanie właściwości kompilacji w pliku projektu.

Na przykład użyj następującego polecenia, aby skompilować i podpisać .pkg na komputerze Mac, aby przeprowadzić dystrybucję za pośrednictwem sklepu Mac App Store:

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)"

Uwaga

W programie .NET 8 dotnet publish polecenie jest domyślnie ustawione na konfigurację Release . W związku z tym konfigurację kompilacji można pominąć z wiersza polecenia.

Publikowanie kompilacji, znaków i pakietów aplikacji, a następnie kopiuje .pkg do folderu bin/Release/net8.0-maccatalyst/publish/ . Jeśli opublikujesz aplikację przy użyciu tylko jednej architektury, zostanie ona opublikowana w folderze bin/Release/net8.0-maccatalyst/{architecture}/publish/ .

Podczas procesu podpisywania może być konieczne wprowadzenie hasła logowania i zezwolenie codesign na productbuild jego uruchomienie:

Zezwól na codesign na podpisywanie aplikacji na komputerze Mac.Zezwól programowi productbuild na podpisywanie aplikacji na komputerze Mac.

Aby uzyskać więcej informacji o poleceniu dotnet publish , zobacz dotnet publish (Publikowanie dotnet).

Definiowanie właściwości kompilacji w pliku projektu

Alternatywą do określenia parametrów kompilacji w wierszu polecenia jest określenie ich w pliku projektu w pliku <PropertyGroup>. W poniższej tabeli wymieniono niektóre typowe właściwości kompilacji:

Właściwości Wartość
<ApplicationTitle> Nazwa widoczna dla użytkownika dla aplikacji.
<ApplicationId> Unikatowy identyfikator aplikacji, taki jak com.companyname.mymauiapp.
<ApplicationVersion> Wersja kompilacji identyfikującej iterację aplikacji.
<ApplicationDisplayVersion> Numer wersji aplikacji.
<CodesignKey> Nazwa klucza podpisywania kodu. Ustaw nazwę certyfikatu dystrybucji, jak pokazano w sekcji Dostęp do pęku kluczy.
<CodesignEntitlements> Ścieżka do pliku uprawnień, który określa uprawnienia wymagane przez aplikację. Ustaw wartość Platforms\MacCatalyst\Entitlements.plist.
<CodesignProvision> Profil aprowizacji do użycia podczas podpisywania pakietu aplikacji.
<CreatePackage> Ustaw wartość na true , aby pakiet (.pkg) został utworzony dla aplikacji na końcu kompilacji.
<EnableCodeSigning> Ustaw wartość na true , aby włączono podpisywanie kodu.
<EnablePackageSigning> Ustaw wartość na true , aby utworzony pakiet został podpisany.
<MtouchLink> Tryb linku dla projektu, który może być None, SdkOnlylub Full.
<PackageSigningKey> Klucz podpisywania pakietu do użycia podczas podpisywania pakietu. Ustaw nazwę certyfikatu instalatora, jak pokazano w sekcji Dostęp pęku kluczy.

Aby uzyskać pełną listę właściwości kompilacji, zobacz Właściwości pliku projektu.

Ważne

Wartości tych właściwości kompilacji nie muszą być podane w pliku projektu. Można je również udostępnić w wierszu polecenia podczas publikowania aplikacji. Dzięki temu można pominąć określone wartości z pliku projektu.

W poniższym przykładzie przedstawiono typową grupę właściwości do tworzenia i podpisywania aplikacji Mac Catalyst dla dystrybucji sklepu Mac App Store:

<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>

W tym przykładzie <PropertyGroup> dodano sprawdzanie warunku, co uniemożliwia przetworzenie ustawień, chyba że sprawdzanie warunku zostanie pomyślnie zrealizowane. Sprawdzanie warunku wyszukuje dwa elementy:

  1. Konfiguracja kompilacji jest ustawiona na Releasewartość .
  2. Platforma docelowa jest ustawiona na wartość zawierającą tekst net8.0-maccatalyst.
  3. Platforma jest ustawiona na AnyCPUwartość .

Jeśli którykolwiek z tych warunków nie powiedzie się, ustawienia nie są przetwarzane. Co ważniejsze, <CodesignKey>ustawienia , <CodesignProvision>i <PackageSigningKey> nie są ustawione, uniemożliwiając podpisanie aplikacji.

Po dodaniu powyższej grupy właściwości aplikację można opublikować z poziomu wiersza polecenia na komputerze Mac, otwierając terminal i przechodząc do folderu projektu aplikacji .NET MAUI. Następnie uruchom następujące polecenie:

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

Uwaga

W programie .NET 8 dotnet publish polecenie jest domyślnie ustawione na konfigurację Release . W związku z tym konfigurację kompilacji można pominąć z wiersza polecenia.

Publikowanie kompilacji, znaków i pakietów aplikacji, a następnie kopiuje .pkg do folderu bin/Release/net8.0-maccatalyst/publish/ .

Przekazywanie do sklepu Mac App Store

Gdy aplikacja została podpisana przy użyciu certyfikatu dystrybucji firmy Apple, nie można jej uruchomić lokalnie. Zamiast tego należy przekazać go do programu App Store Connect, gdzie zostanie ponownie podpisany, aby włączyć wykonywanie lokalne.

Aby dystrybuować aplikację za pośrednictwem sklepu Mac App Store lub TestFlight, musisz utworzyć rekord aplikacji w programie App Store Connect. Ten rekord zawiera wszystkie informacje o aplikacji, które będą wyświetlane w sklepie App Store i wszystkie informacje potrzebne do zarządzania aplikacją w całym procesie dystrybucji. Aby uzyskać więcej informacji, zobacz Tworzenie rekordu aplikacji na developer.apple.com.

Transporter może służyć do przesyłania aplikacji do sklepu Mac App Store. Pomoże to również zidentyfikować błędy z pakietami aplikacji, które przestaną pomyślnie przesyłać.

Zobacz też