Udostępnij za pośrednictwem


Publikowanie aplikacji systemu iOS dla dystrybucji ze sklepu App Store

Najczęstszym podejściem do dystrybucji aplikacji systemu iOS do użytkowników jest sklep App Store. Aplikacje są przesyłane do sklepu 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 App Store wymagają zatwierdzenia od firmy Apple.

Dystrybucja aplikacji systemu iOS 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ę systemu iOS dla wielu platform platformy .NET (.NET MAUI), należy utworzyć profil aprowizacji dystrybucji specyficzny dla niego. Ten profil umożliwia cyfrowe podpisanie aplikacji na potrzeby wydania, aby można było ją zainstalować na urządzeniu z systemem iOS. Profil aprowizacji dystrybucji zawiera identyfikator aplikacji i certyfikat dystrybucji. Na potrzeby testowania możesz użyć tego samego identyfikatora aplikacji, który został użyty podczas wdrażania aplikacji na urządzeniu. Należy jednak utworzyć certyfikat dystrybucji, aby zidentyfikować siebie lub organizację, jeśli jeszcze go nie masz.

Proces tworzenia profilu aprowizacji dystrybucji w sklepie App Store jest następujący:

  1. Utwórz certyfikat dystrybucji. Aby uzyskać więcej informacji, zobacz Tworzenie certyfikatu dystrybucji.
  2. Utwórz identyfikator aplikacji. Aby uzyskać więcej informacji, zobacz Tworzenie identyfikatora aplikacji.
  3. Utwórz profil aprowizacji. Aby uzyskać więcej informacji, zobacz Tworzenie profilu aprowizacji.

Ważne

Firma Apple ma zasady ochrony prywatności dla aplikacji przeznaczonych dla systemu iOS w sklepie App Store. Wymaga to, aby aplikacja zawierała plik manifestu prywatności w pakiecie aplikacji, który zawiera listę typów danych aplikacji .NET MAUI lub dowolnych zestawów SDK i pakietów innych firm oraz przyczyny używania dowolnych wymaganych interfejsów API przyczyn. Jeśli używasz wymaganych interfejsów API przyczyny lub zestawów SDK innych firm, nie zostanie zadeklarowana w manifeście prywatności, aplikacja może zostać odrzucona przez sklep App Store. Aby uzyskać więcej informacji, zobacz Manifest prywatności firmy Apple.

Tworzenie certyfikatu dystrybucji

Certyfikat dystrybucji służy do potwierdzania tożsamości. Przed utworzeniem certyfikatu dystrybucji upewnij się, że konto dewelopera firmy Apple zostało dodane do programu Visual Studio. Aby uzyskać więcej informacji, zobacz Zarządzanie kontami firmy Apple.

Jeśli jeszcze go nie masz, musisz utworzyć certyfikat dystrybucji. Certyfikat dystrybucji należy utworzyć przy użyciu identyfikatora Apple ID dla konta dewelopera firmy Apple.

Aby utworzyć certyfikat dystrybucji w programie Visual Studio:

  1. W programie Visual Studio przejdź do pozycji Narzędzia > Opcje > konta Xamarin > Apple.
  2. W oknie dialogowym Konta deweloperów firmy Apple wybierz zespół i kliknij przycisk Wyświetl szczegóły...
  3. W oknie dialogowym Szczegóły kliknij pozycję Utwórz certyfikat i wybierz pozycję Dystrybucja systemu iOS. Zostanie utworzona nowa tożsamość podpisywania i zsynchronizuje się z firmą Apple, pod warunkiem, że masz odpowiednie uprawnienia.

Ważne

Klucz prywatny i certyfikat, który składają się na tożsamość podpisywania, również zostaną wyeksportowane do programu Keychain Access na hoście kompilacji na komputerze Mac, pod warunkiem, że środowisko IDE jest sparowane z nim. Aby uzyskać więcej informacji, zobacz Pair to Mac for iOS development (Parowanie do komputerów Mac na potrzeby programowania w systemie iOS).

Opis par kluczy certyfikatu

Profil dystrybucji zawiera certyfikaty, skojarzone z nimi klucze i wszystkie profile aprowizacji skojarzone z kontem dewelopera firmy Apple. Istnieją dwie wersje profilu dystrybucji — jedna istnieje na koncie dewelopera firmy Apple, a druga na komputerze lokalnym. Różnica między nimi to typ kluczy, które zawierają: profil na koncie dewelopera firmy Apple zawiera wszystkie klucze publiczne skojarzone z certyfikatami, podczas gdy kopia na komputerze lokalnym zawiera wszystkie klucze prywatne. Aby certyfikaty są prawidłowe, pary kluczy muszą być zgodne.

Ostrzeżenie

Utrata certyfikatu i skojarzonych kluczy może być niezwykle destrukcyjna, ponieważ będzie wymagać cofnięcia istniejących certyfikatów i ponownego utworzenia profilów aprowizacji.

Tworzenie profilu dystrybucji

Profil aprowizacji dystrybucji umożliwia cyfrowe podpisanie aplikacji .NET MAUI dla systemu iOS na potrzeby wydania, dzięki czemu można ją zainstalować na urządzeniu z systemem iOS. Profil aprowizacji dystrybucji 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 kliknij + przycisk , aby utworzyć nowy identyfikator aplikacji.

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

    Utwórz identyfikator aplikacji.

  5. Na stronie Rejestrowanie nowego identyfikatora wybierz pozycję Aplikacja przed kliknięciem 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 kliknij przycisk Kontynuuj.

  9. Na stronie Potwierdzanie identyfikatora aplikacji kliknij przycisk Zarejestruj.

Tworzenie profilu aprowizacji

Po utworzeniu identyfikatora aplikacji należy utworzyć profil aprowizacji dystrybucji. Ten profil umożliwia cyfrowe podpisanie aplikacji na potrzeby wydania, aby można było ją zainstalować na urządzeniu z systemem iOS.

Aby utworzyć profil aprowizacji dla dystrybucji sklepu 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 App Store przed kliknięciem przycisku Kontynuuj:

    Zarejestruj profil aprowizacji dla dystrybucji sklepu z aplikacjami.

  4. Na stronie Generowanie profilu aprowizacji na liście 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 programie Visual Studio.

Pobieranie profilów aprowizacji w programie Visual Studio

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

  1. W programie Visual Studio przejdź do pozycji Narzędzia > Opcje > konta Xamarin > Apple.
  2. W oknie dialogowym Konta deweloperów firmy Apple wybierz swój zespół i kliknij pozycję Wyświetl szczegóły.
  3. W oknie dialogowym Szczegóły sprawdź, czy nowy profil jest wyświetlany na liście Profile aprowizacji. Aby odświeżyć listę, może być konieczne ponowne uruchomienie programu Visual Studio.
  4. W oknie dialogowym Szczegóły kliknij pozycję Pobierz wszystkie profile.

Profile aprowizacji są pobierane w systemie Windows i eksportowane do hosta kompilacji komputera Mac, jeśli środowisko IDE jest sparowane z nim. Aby uzyskać więcej informacji, zobacz Pair to Mac for iOS development (Parowanie do komputerów Mac na potrzeby programowania w systemie iOS).

Opublikuj aplikację

Program Visual Studio może opublikować aplikację .NET MAUI dla systemu iOS dla dystrybucji ze sklepu App Store i przekazać ją do sklepu App Store. Jednak zanim będzie można przekazać aplikację do sklepu App Store, musisz:

  • Utwórz rekord dla aplikacji, którą chcesz przekazać do sklepu App Store 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ą za pośrednictwem procesu dystrybucji. Aby uzyskać więcej informacji, zobacz Tworzenie rekordu aplikacji na developer.apple.com.
  • Utwórz hasło specyficzne dla aplikacji. Aby uzyskać informacje na temat generowania hasła specyficznego dla aplikacji, zobacz Logowanie się do aplikacji przy użyciu identyfikatora Apple ID przy użyciu haseł specyficznych dla aplikacji w support.apple.com.

Aby opublikować aplikację .NET MAUI dla systemu iOS dla dystrybucji ze sklepu App Store:

  1. W programie Visual Studio upewnij się, że środowisko IDE jest sparowane z hostem kompilacji dla komputerów Mac. Aby uzyskać więcej informacji, zobacz Pair to Mac for iOS development (Parowanie do komputerów Mac na potrzeby programowania w systemie iOS).

  2. Na pasku narzędzi programu Visual Studio użyj listy rozwijanej Debuguj element docelowy, aby wybrać pozycję Urządzenia zdalne z systemem iOS, a następnie pozycję Urządzenie zdalne:

    Wybierz urządzenie zdalne w programie Visual Studio.

  3. Na pasku narzędzi programu Visual Studio użyj listy rozwijanej Konfiguracja rozwiązań, aby zmienić konfigurację debugowania na konfigurację wydania:

    Wybierz konfigurację wydania w programie Visual Studio.

  4. W Eksplorator rozwiązań kliknij prawym przyciskiem myszy projekt aplikacji .NET MAUI i wybierz pozycję Właściwości. Następnie przejdź do karty Podpisywanie pakietu dla systemu iOS i upewnij się, że opcja Schemat jest ustawiona na ręczne aprowizowanie, tożsamość podpisywania jest ustawiona na Wartość Dystrybucja (automatyczna), a profil aprowizacji jest ustawiony na Wartość Automatyczna:

    Zrzut ekranu przedstawiający kartę podpisywania pakietów dla systemu iOS w programie Visual Studio.

    Te ustawienia zapewnią, że program Visual Studio wybierze prawidłowy profil aprowizacji na podstawie identyfikatora pakietu w pliku Info.plist (który jest identyczny z wartością właściwości Identyfikator aplikacji w pliku projektu). Alternatywnie ustaw tożsamość podpisywania na odpowiedni certyfikat dystrybucji i profil aprowizacji na profil utworzony na koncie dewelopera firmy Apple.

  5. W Eksplorator rozwiązań kliknij prawym przyciskiem myszy projekt aplikacji .NET MAUI i wybierz pozycję Publikuj...:

    Wybierz element menu Publikuj w programie Visual Studio.

    Zostanie otwarty Menedżer archiwum, a program Visual Studio rozpocznie archiwizowanie pakietu aplikacji:

    Zrzut ekranu przedstawiający menedżera archiwum w programie Visual Studio.

    Proces archiwizowania podpisuje aplikację przy użyciu certyfikatu i profilów aprowizacji określonych na karcie Podpisywanie pakietu systemu iOS dla wybranej konfiguracji rozwiązania.

  6. W Menedżerze archiwum po pomyślnym zakończeniu archiwizacji upewnij się, że archiwum jest zaznaczone, a następnie wybierz przycisk Rozpowszechnij ... , aby rozpocząć proces pakowania aplikacji do dystrybucji:

    Zrzut ekranu przedstawiający menedżera archiwum w programie Visual Studio po zakończeniu archiwizacji.

    Zostanie wyświetlone okno dialogowe Dystrybucja — wybieranie kanału .

  1. W oknie dialogowym Dystrybucja — wybieranie kanału wybierz przycisk Sklep App Store:

    Zrzut ekranu przedstawiający wybieranie kanału dystrybucji w oknie dialogowym dystrybucji.

  2. W oknie dialogowym Dystrybucja — tożsamość podpisywania wybierz swój profil podpisywania i aprowizacji:

    Zrzut ekranu przedstawiający wybieranie tożsamości podpisywania w oknie dialogowym dystrybucji.

    Uwaga

    Należy użyć profilu podpisywania i aprowizacji utworzonego dla aplikacji i wybranego kanału dystrybucji.

  3. W oknie dialogowym Dystrybucja — tożsamość podpisywania wybierz przycisk Zapisz jako lub przycisk Przekaż do sklepu. Przycisk Zapisz jako umożliwi wprowadzenie nazwy pliku przed ponownym podpisaniem aplikacji i opublikowaniem jej w pliku ipa w systemie plików w celu późniejszego przekazania do sklepu App Store za pośrednictwem aplikacji, takiej jak Transporter. Przycisk Przekaż do sklepu ponownie podpisze aplikację i opublikuje ją w pliku ipa przed przekazaniem jej do sklepu App Store.

    1. Jeśli wybierzesz przycisk Przekaż do sklepu, zostanie wyświetlone okno dialogowe Przekazywanie do przechowywania poświadczeń po utworzeniu pliku ipa programu Visual Studio. W oknie dialogowym Przekazywanie do przechowywania poświadczeń wprowadź identyfikator Apple ID i hasło specyficzne dla aplikacji, a następnie wybierz przycisk OK:

      Zrzut ekranu przedstawiający wprowadzenie hasła specyficznego dla aplikacji w celu przekazania aplikacji do sklepu App Store.

    Program Visual Studio zweryfikuje pakiet aplikacji i przekaże go do sklepu App Store, pod warunkiem że utworzono rekord aplikacji w programie App Store Connect.

Aby uzyskać informacje na temat publikowania aplikacji systemu iOS przy użyciu interfejsu wiersza polecenia, zobacz Publikowanie aplikacji systemu iOS przy użyciu wiersza polecenia.

Rozwiązywanie problemów

Transporter może służyć do identyfikowania błędów z pakietami aplikacji, które przestają pomyślnie przesyłać do sklepu App Store.