ARCore Cloud Anchor Management API

Cloud Anchors außerhalb der ARCore App mit ARCore Cloud Anchor verwalten Management API

Erste Schritte

Beispielvorgänge

Autorisierung

Erstellen Sie einen Dienstkontoschlüssel in der Google Cloud Platform Console und generieren Sie Ein OAuth2-Token, um Aufrufe der Cloud Anchor-Verwaltungs-API zu autorisieren

  1. Im Navigationsmenü der Google Cloud Platform Console: APIs & Services > Credentials.

  2. Wählen Sie das gewünschte Projekt aus und klicken Sie auf Create Credentials > Service account.

  3. Geben Sie unter Service account details einen Namen für das neue Konto ein und Klicken Sie auf Create.

  4. Rufen Sie auf der Service account permissions-Seite Select a role auf. aus. Wählen Sie Service Accounts aus > Service Account Token Creator, Klicken Sie dann auf Continue.

  5. Klicken Sie auf der Seite Grant users access to this service account auf Done. Dadurch gelangen Sie zurück zu APIs & Services. > Credentials.

  6. Scrollen Sie auf der Seite Credentials nach unten zum Abschnitt Service Accounts. und klicken Sie auf den Namen des gerade erstellten Kontos.

  7. Scrollen Sie auf der Seite Service account details nach unten zum Abschnitt Keys. und wähle Add Key > Create new key.

  8. Wählen Sie als Schlüsseltyp JSON aus und klicken Sie auf Create. Dadurch wird eine JSON-Datei heruntergeladen, mit dem privaten Schlüssel auf Ihren Computer übertragen. Heruntergeladene JSON speichern an einem sicheren Ort speichern.

OAuth2-Token generieren

arcore.management ist der OAuth-Bereich für die Cloud Anchors Management API. Von funktioniert oauth2l standardmäßig mit einem Token-Cache. Mit dem Befehl fetch wird dasselbe Ergebnis Token. Verwenden Sie oauth2l zum Generieren eines OAuth2. Token für Autorisierung:

oauth2l fetch --json creds.json arcore.management

Fügen Sie dem fetch die Option --cache="" hinzu, um ein neues Token zu generieren .

oauth2l fetch --cache="" --json creds.json arcore.management

Alternativ können Sie oauth2l reset und den Befehl fetch noch einmal aufrufen.

oauth2l reset
oauth2l fetch --json creds.json arcore.management

Alle Cloud-Anchors auflisten

Rufen Sie die erste Seite von Cloud-Ankern ab, optional sortiert nach expire_time, create_time oder last_localize_time.

Anfrage:

export BEARER_TOKEN=`(oauth2l fetch --json creds.json arcore.management)`
curl -H "Authorization: Bearer $BEARER_TOKEN" \
"https://arcore.googleapis.com/v1beta2/management/anchors?page_size=50&order_by=last_localize_time%20desc"

Antwort:

{
  "anchors": [
    {
      "name": "anchors/ua-a1cc84e4f11b1287d289646811bf54d1",
      "createTime": "...",
      "expireTime": "...",
      "lastLocalizeTime": "...",
      "maximumExpireTime": "..."
    },
   …
    {
      "name": "anchors/ua-41a3d0233471917875159f6f3c25ea0e",
      "createTime": "...",
      "expireTime": "...",
      "lastLocalizeTime": "...",
      "maximumExpireTime": "..."
    }
  ],
  nextPageToken: "some-long-string"
}

Wenn die Antwort mit nextPageToken zurückgegeben wird, sind weitere Anker vorhanden, Liste. Verwenden Sie den Abfrageparameter next_page_token in der nächsten Anfrage, um die nächste Ergebnismenge.

Anfrage:

curl -H "Authorization: Bearer $BEARER_TOKEN" \
"https://arcore.googleapis.com/v1beta2/management/anchors?page_size=50&order_by=last_localize_time%20desc&next_page_token=your-next-page-token-here"

Bei Verwendung von next_page_token müssen page_size und order_by einheitlich sein für alle Anfragen. Die Standardeinstellung für page_size ist 1000 und für order_by ist dies die Standardeinstellung expire_time_desc.

Gültigkeitsdauer eines Cloud-Anchors auf die maximal zulässige Gültigkeitsdauer aktualisieren

Einzelnen Cloud-Anchor anfordern, um dessen lastLocalizeTime und maximumExpireTime.

Anfrage:

export BEARER_TOKEN=`(oauth2l fetch --json creds.json arcore.management)`
curl -H "Authorization: Bearer $BEARER_TOKEN" \
"https://arcore.googleapis.com/v1beta2/management/anchors/your-anchor-id-here"

Antwort:

{
  "name": "anchors/ua-f21be53fd8ea57f0169c69fbf827f6b7",
  "createTime": "2020-06-29T21:00:00Z",
  "expireTime": "2020-08-28T22:00:00Z",
  "lastLocalizeTime": "2020-06-29T21:00:00Z",
  "maximumExpireTime": "2021-06-29T21:00:00Z"
}

Sobald Sie den Anker haben, aktualisieren Sie sein expireTime auf sein maximumExpireTime.

Anfrage:

curl -H "Authorization: Bearer $BEARER_TOKEN" -H "Content-Type: application/json" -X "PATCH" \
"https://arcore.googleapis.com/v1beta2/management/anchors/your-anchor-id-here?updateMask=expire_time" \
-d '{ expireTime: "2021-06-29T21:00:00Z" }'

Antwort:

{
  "name": "anchors/ua-f21be53fd8ea57f0169c69fbf827f6b7",
  "createTime": "2020-06-29T21:00:00Z",
  "expireTime": "2021-06-29T21:00:00Z",
  "lastLocalizeTime": "2020-06-29T21:00:00Z",
  "maximumExpireTime": "2021-06-29T21:00:00Z"
}

Cloud-Anchors löschen

Einzelnen Cloud-Anchor löschen:

export BEARER_TOKEN=`(oauth2l fetch --json creds.json arcore.management)`
curl -H "Authorization: Bearer $BEARER_TOKEN" -X "DELETE" \
"https://arcore.googleapis.com/v1beta2/management/anchors/your-anchor-id-here"

Löschen Sie einen Batch von Cloud-Ankern:

export BEARER_TOKEN=`(oauth2l fetch --json creds.json arcore.management)`
curl -H "Authorization: Bearer $BEARER_TOKEN" -H "Content-Type: application/json" -X "POST" \
"https://arcore.googleapis.com/v1beta2/management/anchors:batchDelete" \
-d '{ names: [ "anchors/your-anchor-id-here", "anchors/your-anchor-id-here" ]}'