Kör exempelappen: iOS – Xcode (Swift eller Objective-C)

Den här snabbstarten beskriver hur du kör Azure Spatial Anchors-exempelappen för iOS-enheter med Xcode (Swift eller Objective-C). Azure Spatial Anchors är en plattformsoberoende utvecklartjänst som du kan använda för att skapa upplevelser med mixad verklighet med hjälp av objekt som bevarar sin plats mellan enheter över tid. När du är klar har du en ARKit iOS-app som kan spara och återkalla en spatial fästpunkt.

Du lär dig följande:

  • Skapa ett Spatial Anchors-konto
  • Konfigurera kontoidentifierare och kontonyckel för Spatial Anchors
  • Distribuera och köra på en iOS-enhet

Om du inte har en Azure-prenumeration skapar du ett kostnadsfritt Azure-konto innan du börjar.

Förutsättningar

Kontrollera att du har följande för genomföra den här snabbstarten:

  • En utvecklaraktiverad macOS-dator med den senaste versionen av Xcode och CocoaPods installerad.
  • Git installerat via HomeBrew:
    1. Ange följande kommando som en enda rad i terminalen: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)".
    2. Kör brew install git och brew install git-lfs.
    3. Uppdatera din git-konfiguration med git lfs install (för den aktuella användaren) eller git lfs install --system (för hela systemet).
  • En utvecklaraktiverad ARKit-kompatibel iOS-enhet.

Skapa en Spatial Anchors-resurs

Gå till Azure-portalen.

Välj Skapa en resurs i den vänstra rutan.

Använd sökrutan för att söka efter Spatial Anchors.

Screenshot showing the results of a search for Spatial Anchors.

Välj Spatial Anchors och välj sedan Skapa.

Gör följande i fönstret Spatial Anchors-konto :

  • Ange ett unikt resursnamn med hjälp av vanliga alfanumeriska tecken.

  • Välj den prenumeration som du vill koppla resursen till.

  • Skapa en resursgrupp genom att välja Skapa ny. Ge den namnet myResourceGroup och välj sedan OK.

    En resursgrupp är en logisk container där Azure-resurser, till exempel webbappar, databaser och lagringskonton, distribueras och hanteras. Du kan exempelvis välja att ta bort hela resursgruppen i ett enkelt steg längre fram.

  • Välj en plats (region) där du vill placera resursen.

  • Välj Skapa för att börja skapa resursen.

Screenshot of the Spatial Anchors pane for creating a resource.

När resursen har skapats visar Azure-portalen att distributionen är klar.

Screenshot showing that the resource deployment is complete.

Välj Gå till resurs. Nu kan du visa resursegenskaperna.

Kopiera resursens konto-ID-värde till en textredigerare för senare användning.

Screenshot of the resource properties pane.

Kopiera även resursens kontodomänvärde till en textredigerare för senare användning.

Screenshot showing the resource's account domain value.

Under Inställningar väljer du Åtkomstnyckel. Kopiera värdet Primärnyckel , Kontonyckel, till en textredigerare för senare användning.

Screenshot of the Keys pane for the account.

Öppna exempelprojektet

Använd terminalen för att utföra följande åtgärder.

Klona exempellagringsplatsen genom att köra följande kommandon:

git clone https://github.com/Azure/azure-spatial-anchors-samples.git
cd ./azure-spatial-anchors-samples

Installera nödvändiga poddar med hjälp av CocoaPods:

Navigera till iOS/Swift/.

cd ./iOS/Swift/

Kör pod install --repo-update för att installera CocoaPods för projektet.

Kommentar

Använd följande kommando om du har macOS Monterey (12.2.1)

Kör pod update för att installera CocoaPods för projektet.

Öppna nu .xcworkspace i Xcode.

Kommentar

Se felsökningsstegen här om du har Problem med CocoaPod efter uppgradering till macOS Catalina (10.15).

open ./SampleSwift.xcworkspace

Konfigurera konto-ID och -nyckel

Nästa steg är att konfigurera appen så att den använder din kontoidentifierare och kontonyckel. Du kopierade dem till en textredigerare när du konfigurerade Spatial Anchors-resursen.

Öppna iOS/Swift/SampleSwift/ViewControllers/BaseViewController.swift.

Leta upp fältet spatialAnchorsAccountKey och ersätt Set me med kontonyckeln.

Leta upp fältet spatialAnchorsAccountId och ersätt Set me med konto-ID.

Leta upp fältet spatialAnchorsAccountDomain och ersätt Set me med kontodomänen.

Distribuera appen till din iOS-enhet

Ansluta iOS-enheten till Mac-datorn och ange det aktiva schemat till iOS-enheten.

Select the device

Välj Build and then run the current scheme (Skapa och kör sedan det aktuella schemat).

Deploy and run

Kommentar

Om du ser felet library not found for -lPods-SampleObjC har du sannolikt öppnat filen .xcodeproj i stället för .xcworkspace. Öppna .xcworkspace och försök igen.

I Xcode stoppar du appen genom att trycka på Stoppa.

Felsökning

CocoaPods-problem på macOS Catalina (10.15)

Om du nyligen uppdaterade till macOS Catalina (10.15) och hade CocoaPods installerat i förväg, kan CocoaPods vara i ett trasigt tillstånd och misslyckas med att konfigurera dina poddar och .xcworkspace projektfiler korrekt. För att lösa det här problemet måste du installera om CocoaPods genom att köra följande kommandon:

brew update
brew install cocoapods --build-from-source
brew link --overwrite cocoapods

Appen kraschar när den distribueras till iOS 10.3.1 från en personlig etableringsprofil/utvecklarkonto

Om du distribuerar din iOS-app på iOS 10.3.1 från ett personligt etableringsprofil-/utvecklarkonto kan det här felet visas: Library not loaded: @rpath/ADAL....

Så här löser du problemet:

  • Använd en etableringsprofil som inte är en personlig teamprofil (betalt utvecklarkonto).
  • Distribuera din app till en iOS-enhet som kör iOS 13.3 eller tidigare, eller till en som kör beta- eller versionsversionen för iOS 13.4.
  • Läs mer om det här problemet på Stack Overflow.

Rensa resurser

I de föregående stegen skapade du Azure-resurser i en resursgrupp. Om du inte tror att du behöver dessa resurser i framtiden, kan du ta bort dem genom att ta bort resursgruppen.

På menyn eller startsidan i Azure-portalen väljer du Resursgrupper. Välj sedan myResourceGroupsidan Resursgrupper.

På sidan myResourceGroup kontrollerar du att resurserna i listan är de som du vill ta bort.

Välj Ta bort resursgrupp, skriv myResourceGroup i textrutan för att bekräfta och välj sedan Ta bort.

Nästa steg

I den här snabbstarten skapade du ett Spatial Anchors-konto. Sedan konfigurerade och distribuerade du en app för att spara och återkalla spatiala fästpunkter. Om du vill veta mer om hur du förbättrar appen så att den kan dela rumsliga fästpunkter med andra enheter fortsätter du till nästa självstudie.