Udostępnij za pośrednictwem


Możliwości programu Mac Catalyst

Na platformie Mac Catalyst wieloplatformowe aplikacje interfejsu użytkownika aplikacji platformy .NET (.NET MAUI) działają w piaskownicy, która udostępnia zestaw reguł, które ograniczają dostęp między aplikacją a zasobami systemowymi lub danymi użytkownika. Firma Apple oferuje możliwości, znane również jako usługi app Services, jako sposób rozszerzania funkcjonalności i rozszerzania zakresu możliwości aplikacji Mac Catalyst. Aby uzyskać więcej informacji na temat możliwości, zobacz Możliwości dotyczące developer.apple.com.

Możliwości są dodawane do profilu aprowizacji aplikacji i są używane podczas podpisywania kodu aplikacji. Profil aprowizacji musi zawierać identyfikator aplikacji zgodny z identyfikatorem pakietu aplikacji z włączonymi wymaganymi możliwościami. Profil aprowizacji powinien zostać utworzony na koncie dewelopera firmy Apple.

Możliwości są ściśle związane z koncepcją uprawnień. Obaj żądają rozszerzenia piaskownicy uruchomionej w aplikacji, aby zapewnić jej dodatkowe możliwości. Uprawnienia są zwykle dodawane podczas tworzenia aplikacji, natomiast funkcje są zwykle dodawane podczas podpisywania kodu aplikacji do dystrybucji. Aby uzyskać więcej informacji na temat uprawnień, zobacz Uprawnienia.

Dodawanie możliwości na koncie dewelopera firmy Apple

Możliwości można dodać do profilu aprowizacji aplikacji na koncie dewelopera firmy Apple. Jest to wieloetapowy proces, który wymaga utworzenia certyfikatu podpisywania, identyfikatora aplikacji i profilu aprowizacji.

Podczas dodawania nowej funkcji do profilu aprowizacji należy również dodać tę samą funkcję do pliku Entitlements.plist aplikacji i upewnić się, że aplikacja korzysta z tego pliku. Aby uzyskać więcej informacji, zobacz Uprawnienia. W przypadku niektórych możliwości może być również konieczne ustawienie kluczy prywatności w pliku Info.plist.

Tworzenie certyfikatu podpisywania

Utworzenie profilu aprowizacji wymaga wcześniejszego utworzenia certyfikatu podpisywania. Typ certyfikatu podpisywania zależy od zamierzonego kanału dystrybucji dla aplikacji:

Tworzenie identyfikatora aplikacji za pomocą usługi App Service

Identyfikator aplikacji jest podobny do ciągu odwrotnego DNS, który jednoznacznie identyfikuje aplikację i jest wymagany do zidentyfikowania dystrybuowanej aplikacji. Identyfikator aplikacji powinien być identyczny z identyfikatorem pakietu aplikacji.

Ważne

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.

Istnieją dwa typy identyfikatorów aplikacji — jawne i wieloznaczne. Jawny identyfikator aplikacji jest unikatowy dla pojedynczej aplikacji i zazwyczaj ma postać com.domainname.myid. Jawny identyfikator aplikacji umożliwia instalację jednej aplikacji z zgodnym identyfikatorem pakietu na urządzeniu. Jawne identyfikatory aplikacji są wymagane dla aplikacji, które umożliwiają korzystanie z funkcji specyficznych dla aplikacji.

Identyfikator aplikacji jawnej można utworzyć, wykonując następujące czynności:

  1. W przeglądarce internetowej przejdź do sekcji Identyfikatory konta dewelopera firmy Apple i kliknij + przycisk .

  2. Na stronie Rejestrowanie nowego identyfikatora wybierz pozycję Identyfikatory aplikacji i kliknij przycisk Kontynuuj.

  3. Na stronie Rejestrowanie nowego identyfikatora wybierz typ aplikacji i kliknij przycisk Kontynuuj.

  4. Na stronie Rejestrowanie identyfikatora aplikacji podaj opis i ustaw identyfikator pakietu na Jawne. Następnie wprowadź identyfikator aplikacji w formacie com.domainname.myid:

    Zrzut ekranu przedstawiający nową stronę rejestracji identyfikatora aplikacji z wypełnionymi wymaganymi polami.

  5. Na stronie Rejestrowanie identyfikatora aplikacji włącz wymagane możliwości na kartach Możliwości i usługi App Services :

    Zrzut ekranu przedstawiający możliwości włączone.

  6. Na stronie Rejestrowanie identyfikatora aplikacji kliknij przycisk Kontynuuj.

  7. Na stronie Potwierdzanie identyfikatora aplikacji przejrzyj informacje, a następnie kliknij przycisk Zarejestruj. Jeśli identyfikator aplikacji zostanie pomyślnie zarejestrowany, nastąpi powrót do sekcji Identyfikatory konta dewelopera firmy Apple.

  8. Na stronie Identyfikatory kliknij właśnie utworzony identyfikator aplikacji.

  9. Na stronie Edytuj konfigurację identyfikatora aplikacji wszystkie funkcje, które wymagają dodatkowej konfiguracji, będą miały przycisk Konfiguruj:

    Zrzut ekranu przedstawiający możliwości edytowania.

    Kliknij dowolne przyciski Konfiguruj , aby skonfigurować włączone możliwości. Aby uzyskać więcej informacji, zobacz Konfigurowanie możliwości aplikacji w developer.apple.com.

Tworzenie profilu aprowizacji

Po utworzeniu identyfikatora aplikacji należy utworzyć profil aprowizacji dla identyfikatora aplikacji. Utworzony profil aprowizacji będzie również zależeć od zamierzonego kanału dystrybucji dla aplikacji:

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.

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

Plik projektu aplikacji powinien zostać zaktualizowany w celu użycia certyfikatu podpisywania, profilu aprowizacji i pliku uprawnień. Można to osiągnąć, dodając następujące właściwości kompilacji do <PropertyGroup> pliku projektu:

Właściwości Wartość
<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.
<EnableCodeSigning> Ustaw wartość na true , aby włączono podpisywanie kodu.

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'">
  <EnableCodeSigning>True</EnableCodeSigning>
  <CodesignKey>Apple Distribution: John Smith (AY2GDE9QM7)</CodesignKey>
  <CodesignProvision>MyMauiApp</CodesignProvision>
  <CodesignEntitlements>Platforms\MacCatalyst\Entitlements.plist</CodesignEntitlements>
</PropertyGroup>

Rozwiązywanie problemów

Poniższa lista zawiera szczegółowe informacje o typowych problemach, które mogą powodować problemy podczas tworzenia aplikacji .NET MAUI Mac Catalyst korzystającej z możliwości:

  • Upewnij się, że prawidłowy identyfikator aplikacji został utworzony i zarejestrowany w sekcji Identyfikatory konta dewelopera firmy Apple.
  • Upewnij się, że funkcja została dodana do identyfikatora aplikacji i że funkcja została skonfigurowana przy użyciu poprawnych wartości.
  • Upewnij się, że profil aprowizacji został zainstalowany na maszynie deweloperskiej i że plik Info.plist aplikacji używa identyfikatora pakietu identycznego z identyfikatorem aplikacji.
  • Upewnij się, że plik Entitlements.plist aplikacji ma włączone poprawne uprawnienia.
  • Upewnij się, że wszystkie wymagane klucze prywatności są ustawione w pliku Info.plist.
  • Upewnij się, że aplikacja korzysta z pliku Entitlements.plist .