Wprowadzenie do systemu iOS

Ważne

Program Visual Studio App Center ma zostać wycofany 31 marca 2025 r. Chociaż możesz nadal używać programu Visual Studio App Center do momentu jego pełnego wycofania, istnieje kilka zalecanych alternatyw, do których można rozważyć migrację.

Dowiedz się więcej o osiach czasu pomocy technicznej i alternatywach.

Zestaw SDK centrum aplikacji korzysta z architektury modułowej, dzięki czemu można używać dowolnych lub wszystkich usług.

Informacje o danych zebranych przez centrum aplikacji można znaleźć na stronach Zestawy SDK centrum aplikacji, Ogólne rozporządzenie o ochronie danych i strony często zadawanych pytań . Ponadto często zadawane pytania zawierają odpowiedzi, które należy podać dla App Store konfiguracji prywatności.

Zacznijmy od konfigurowania zestawu SDK systemu iOS w usłudze App Center w aplikacji w celu używania analizy Centrum aplikacji i awarii Centrum aplikacji. Aby dodać usługę App Center Distribute do aplikacji, zapoznaj się z dokumentacją dotyczącą dystrybucji centrum aplikacji.

1. Wymagania wstępne

Aby można było korzystać z zestawu SDK centrum aplikacji, należy spełnić następujące wymagania:

  • Projekt systemu iOS jest skonfigurowany w środowisku Xcode 13 lub nowszym w systemie macOS w wersji 10.14.4 lub nowszej.
  • Dotyczy to urządzeń z systemem ios 11.0 lub nowszym.
  • Nie używasz żadnej innej biblioteki, która udostępnia funkcję raportowania awarii (tylko w przypadku awarii centrum aplikacji).
  • Jeśli używasz narzędzia CocoaPods do integracji z usługą App Center, potrzebujesz narzędzia CocoaPods w wersji 1.10 lub nowszej.

Analiza i awarie zestawu SDK usługi App Center są zgodne z narzędziem Mac Catalyst za pośrednictwem narzędzia XCFramework lub SwiftPM.

2. Tworzenie aplikacji w portalu Centrum aplikacji w celu uzyskania wpisu tajnego aplikacji

Jeśli aplikacja została już utworzona w portalu Centrum aplikacji, możesz pominąć ten krok.

  1. Przejdź do appcenter.ms.
  2. Zarejestruj się lub zaloguj się i naciśnij niebieski przycisk w prawym górnym rogu portalu z komunikatem Dodaj nową i wybierz pozycję Dodaj nową aplikację z menu rozwijanego.
  3. Wprowadź nazwę i opcjonalny opis aplikacji.
  4. Wybierz system iOS jako system operacyjny i język Objective-C/Swift jako platformę.
  5. Naciśnij przycisk w prawym dolnym rogu z komunikatem Dodaj nową aplikację.

Po utworzeniu aplikacji możesz uzyskać jej wpis tajny aplikacji na stronie Ustawienia w portalu Centrum aplikacji. W prawym górnym rogu strony Ustawienia kliknij potrójne pionowe kropki i wybierz, Copy app secret aby uzyskać wpis tajny aplikacji.

3. Dodawanie modułów zestawu SDK centrum aplikacji

Zestaw SDK usługi App Center dla systemu iOS można dodać do aplikacji za pomocą narzędzia Cocoapods, Carthage, Swift Package Manager lub ręcznie dodając pliki binarne do projektu.

Uwaga

4.0.0 Wprowadzono zmiany powodujące niezgodność w usłudze App Center. Postępuj zgodnie z sekcją Migrate to App Center SDK 4.0.0 and higher (Migrowanie do zestawu APP Center SDK 4.0.0 i nowszych), aby przeprowadzić migrację centrum aplikacji z poprzednich wersji.

3.1 Integracja za pośrednictwem kakapodów

Uwaga

Symulatory ARM64 (gdy są uruchamiane z programu Xcode działającego na komputerze Apple Silicon Mac) nie są obsługiwane za pośrednictwem platformy CocoaPods, należy rozważyć użycie innych metod integracji do pracy.

  1. Dodaj do aplikacji podfile następujące zależności, aby uwzględnić usługi App Center Analytics i App Center Crash w aplikacji. Ta akcja ściąga następujące struktury: AppCenter, AppCenterAnalytics i AppCenterCrashes. Zamiast tego możesz określić żądane usługi w aplikacji. Każda usługa ma własny podsekec i wszystkie korzystają z programu AppCenter. Zostanie automatycznie ściągnięty.

     # Use the following line to use App Center Analytics and Crashes.x
     pod 'AppCenter'
    
     # Use the following lines if you want to specify which service you want to use.
     pod 'AppCenter/Analytics'
     pod 'AppCenter/Crashes'
     pod 'AppCenter/Distribute'
    
  2. Uruchom polecenie pod install , aby zainstalować nowo zdefiniowany zasobnik i otworzyć projekt .xcworkspace.

Uwaga

Jeśli podczas uruchamiania pod installzostanie wyświetlony błąd [!] Unable to find a specification for `AppCenter` , uruchom polecenie pod repo update , aby pobrać najnowsze zasobniki z repozytorium Cocoapods, a następnie uruchom polecenie pod install.

Teraz, po zintegrowaniu struktur w aplikacji, nadszedł czas, aby uruchomić zestaw SDK i korzystać z usług App Center.

3.2 Integracja za pośrednictwem Carthage

Poniżej przedstawiono procedurę integrowania zestawu SDK centrum aplikacji w projekcie Xcode przy użyciu pakietu Carthagew wersji 0.30 lub nowszej, zdecentralizowanego menedżera zależności, który tworzy zależności i udostępnia struktury binarne.

Uwaga

Integracja z Carthage nie działa w środowisku Xcode 12. Aby to działało, zapoznaj się z tą instrukcją Carthage

  1. Dodaj następujące zależności do elementu Cartfile , aby uwzględnić centrum aplikacji. Te zależności ściągają wszystkie struktury. Następnie możesz połączyć tylko te struktury, których chcesz używać w aplikacji.

    # Use the following line to get the latest version of App Center
    github "microsoft/appcenter-sdk-apple"
    
    # Use the following line to get the specific version of App Center
    github "microsoft/appcenter-sdk-apple" ~> X.X.X
    
  2. Uruchom polecenie carthage update , aby pobrać zależności do folderu Carthage/Checkouts . Następnie skompiluj każdą strukturę.

  3. Otwórz kartę Ustawienia ogólne aplikacji docelowej. Przeciągnij i upuść pliki AppCenter.framework, AppCenterAnalytics.framework i AppCenterCrashes.framework z folderu Carthage/Build/iOS do nawigatora projektu Xcode. Do uruchomienia zestawu SDK jest wymagany program AppCenter.framework . Jeśli nie zostanie dodany do projektu, inne moduły nie będą działać, a aplikacja nie zostanie skompilowana.

  4. Zostanie wyświetlone okno dialogowe, upewnij się, że element docelowy aplikacji jest zaznaczony. Następnie kliknij przycisk Zakończ.

    Uwaga

    Jeśli używasz carthage copy-frameworks ich w fazie kompilacji , nie należy tam dodawać zestawów SDK Centrum aplikacji, ponieważ są one dostarczane jako struktury statyczne.

Teraz, po zintegrowaniu struktur w aplikacji, nadszedł czas, aby uruchomić zestaw SDK i korzystać z usług App Center.

3.3 Integracja za pośrednictwem menedżera pakietów Swift

  1. W menu programu Xcode kliknij pozycję File Swift Packages > Add Package Dependency (Dodaj > zależność pakietu).
  2. W wyświetlonym oknie dialogowym wprowadź adres URL repozytorium: https://github.com/microsoft/appcenter-sdk-apple.git.
  3. W obszarze Wersja wybierz pozycję Do następnego majora i wybierz opcję domyślną.
  4. Wybierz potrzebne moduły w kolumnie Package Product (Produkt pakietu ).

Teraz, po zintegrowaniu struktur w aplikacji, nadszedł czas, aby uruchomić zestaw SDK i korzystać z usług App Center.

Uwaga

Jeśli integrujesz usługę App Center za pośrednictwem usługi SwiftPM i chcesz jej używać również w miejscu docelowym rozszerzenia aplikacji, upewnij się, że został on w podanej DISABLE_DIAMOND_PROBLEM_DIAGNOSTIC=YES konfiguracji. Jest to konieczne, aby uniknąć ograniczeń swiftPM podczas łączenia modułu z wieloma miejscami docelowymi.

3.4 Integracja przez skopiowanie plików binarnych do projektu

Poniżej przedstawiono procedurę integrowania skompilowanych plików binarnych w projekcie Xcode w celu skonfigurowania usługi App Center Analytics i App Center Crash dla aplikacji systemu iOS.

Uwaga

Zestaw SDK usługi App Center obsługuje korzystanie z usługi XCframework. Jeśli chcesz zintegrować aplikację XCframeworks z projektem, pobierz AppCenter-SDK-Apple-XCFramework.zip ze strony wydań i rozpakuj go. Wynikowa zawartość folderu nie jest specyficzna dla platformy, a nie zawiera XCframeworks dla każdego modułu. Można je zintegrować w taki sam sposób jak zwykłe struktury, jak opisano poniżej.

  1. Pobierz struktury zestawu SDK centrum aplikacji udostępnione jako plik zip.

  2. Rozpakuj plik i zobaczysz folder o nazwie AppCenter-SDK-Apple zawierający różne struktury dla każdej usługi App Center w każdym folderze platformy. Struktura o nazwie AppCenter jest wymagana w projekcie, ponieważ zawiera kod współużytkowany między różnymi modułami.

  3. [Opcjonalnie] Utwórz podkatalog dla bibliotek innych firm.

    • Najlepszym rozwiązaniem jest to, że biblioteki innych firm są zwykle w podkatalogu, często nazywanego dostawcą. Jeśli projekt nie jest zorganizowany za pomocą podkatalogu dla bibliotek, utwórz teraz podkatalog Vendor .
    • Utwórz grupę o nazwie Vendor wewnątrz projektu Xcode, aby naśladować strukturę plików na dysku.
  4. Otwórz rozpakowany folder AppCenter-SDK-Apple w programie Finder i skopiuj folder do folderu projektu w lokalizacji, w której chcesz. Folder zawiera struktury w podfolderach dla innych platform, które obsługuje zestaw SDK centrum aplikacji, więc może być konieczne usunięcie podfolderów, których nie potrzebujesz.

  5. Dodaj struktury zestawu SDK do projektu w środowisku Xcode:

    • Upewnij się, że nawigator projektu jest widoczny ((*)+1).
    • Teraz przeciągnij & upuść plik AppCenter.framework, AppCenterAnalytics.framework i AppCenterCrashes.framework z narzędzia Finder (w lokalizacji z poprzedniego kroku) do nawigatora projektu Xcode. Do uruchomienia zestawu SDK jest wymagany program AppCenter.framework . Jeśli nie zostanie on dodany do projektu, inne moduły nie będą działać, a aplikacja nie zostanie skompilowana.
    • Zostanie wyświetlone okno dialogowe, upewnij się, że element docelowy aplikacji jest zaznaczony. Następnie kliknij przycisk Zakończ.

Teraz, po zintegrowaniu struktur w aplikacji, nadszedł czas, aby uruchomić zestaw SDK i korzystać z usług App Center.

4. Uruchamianie zestawu SDK

Aby użyć usługi App Center, wybierz moduły, których chcesz użyć. Domyślnie podczas uruchamiania zestawu SDK nie są uruchamiane żadne moduły.

Poniższe instrukcje różnią się nieco w zależności od używanego cyklu życia. Począwszy od środowiska Xcode 12, możesz wybrać jeden z dwóch cykli życia: "Aplikacja interfejsu użytkownika Swift" (domyślnie wybrana w środowisku Xcode 12) i "UI Kit AppDelegate". Jeśli tworzysz rozszerzenie, zapoznaj się ze stroną Wprowadzenie do rozszerzenia.

4.1 Dodawanie instrukcji importu

Otwórz plik AppDelegate projektu (dla cyklu życia zestawu UI Kit AppDelegate) lub <plik ProjectName>App.swift (dla cyklu życia aplikacji swift interfejsu użytkownika) i dodaj następujące instrukcje importowania:

@import AppCenter;
@import AppCenterAnalytics;
@import AppCenterCrashes;
import AppCenter
import AppCenterAnalytics
import AppCenterCrashes

4.2 Dodawanie start:withServices: metody

Zestaw interfejsu użytkownika AppDelegate

Dodaj kod inicjowania do didFinishLaunchingWithOptions metody delegata:

[MSACAppCenter start:@"{Your App Secret}" withServices:@[[MSACAnalytics class], [MSACCrashes class]]];
AppCenter.start(withAppSecret: "{Your App Secret}", services: [Analytics.self, Crashes.self])

Cykl życia aplikacji interfejsu użytkownika usługi Swift

Aby upewnić się, że zestaw SDK centrum aplikacji działa prawidłowo z interfejsem użytkownika swift, zainicjuj go po załadowaniu interfejsu użytkownika. Najprostszym sposobem osiągnięcia tego celu jest użycie elementu UIApplicationDelegate:

class AppDelegate: NSObject, UIApplicationDelegate {
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {
          AppCenter.start(withAppSecret: "{Your App Secret}", services:[
            Crashes.self, Analytics.self, Distribute.self])
        return true
    }
}

Następnie użyj polecenia UIApplicationDelegateAdaptor w pliku struct:

@main
struct YourAppName: App {

  @UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate

    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}

Jeśli masz aplikację Catalyst, możesz jednocześnie przekazywać wpisy tajne aplikacji dla systemów iOS i macOS:

AppCenter.start(withAppSecret:"ios={Your iOS App Secret};macos={Your macOS App Secret}", services: [Analytics.self, Crashes.self])

Ostrzeżenie

Nie zaleca się osadzania wpisu tajnego aplikacji w kodzie źródłowym.

Jeśli musisz uruchomić usługi App Center oddzielnie, należy wykonać następujące kroki:

  1. Skonfiguruj lub uruchom go za pomocą wpisu tajnego aplikacji.
  2. Jeśli kod można wywołać wiele razy, sprawdź, czy centrum aplikacji jest już skonfigurowane.
  3. Uruchom wymagane usługi bez wpisu tajnego aplikacji.
[MSACAppCenter configureWithAppSecret:@"{Your App Secret}"];
if ([MSACAppCenter isConfigured]) {
   [MSACAppCenter startService:[MSACAnalytics class]];
   [MSACAppCenter startService:[MSACCrashes class]];
}
AppCenter.configure(withAppSecret: "{Your App Secret}")
if AppCenter.isConfigured {
    AppCenter.startService(Analytics.self)
    AppCenter.startService(Crashes.self)
}

4.3 Zastąp symbol zastępczy kluczem tajnym aplikacji

Pamiętaj, aby zastąpić {Your App Secret} tekst rzeczywistą wartością aplikacji. Wpis tajny aplikacji można znaleźć na stronie Wprowadzenie lub stronie Ustawienia w portalu Centrum aplikacji.

Strona Wprowadzenie zawiera powyższy przykładowy kod z wpisem tajnym aplikacji, możesz skopiować cały przykład.

W powyższym przykładzie pokazano, jak używać start:withServices metody (start(withAppSecret:services:) for Swift) i uwzględnić zarówno usługę App Center Analytics, jak i awarie centrum aplikacji.

Jeśli nie chcesz używać jednej z dwóch usług, usuń odpowiedni parametr z powyższego wywołania metody.

Jeśli nie określisz jawnie każdego modułu jako parametru w metodzie startowej, nie można użyć tej usługi Centrum aplikacji. start:withServices Ponadto interfejs API (start(withAppSecret:services:)dla języka Swift) może być używany tylko raz w cyklu życia aplikacji — wszystkie inne wywołania będą rejestrować ostrzeżenie do konsoli i będą dostępne tylko moduły zawarte w pierwszym wywołaniu.

Na przykład — jeśli chcesz dołączyć do usługi App Center Analytics, należy zmodyfikować wywołanie interfejsu start:withServices API (start(withAppSecret:services:) for Swift) w następujący sposób:

[MSACAppCenter start:@"{Your App Secret}" withServices:@[[MSACAnalytics class]]];
AppCenter.start(withAppSecret: "{Your App Secret}", services: [Analytics.self])

Wszystko jest gotowe do wizualizacji danych analizy i awarii w portalu, który zestaw SDK zbiera automatycznie.

Zapoznaj się z dokumentamiusługi App Center Analytics i Dokumentami awarii usługi App Center, aby dowiedzieć się, jak dostosowywać i korzystać z bardziej zaawansowanych funkcji obu usług.

Aby dowiedzieć się, jak rozpocząć pracę z aktualizacjami w aplikacji, zapoznaj się z dokumentacją usługi App Center Distribute.