הגרסה הישנה של ARCore Cloud עוגן API הוצאה משימוש, ולא תהיה לה תמיכה אחרי 31 באוגוסט 2023. אם האפליקציה שלך משתמשת ב-API הזה, עליך לעדכן אותה כדי להשתמש בנקודת הקצה החדשה של ARCore API בהקדם האפשרי.

ARCore Cloud anchor Management API

קל לארגן דפים בעזרת אוספים אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.

ניהול 'עוגנים בענן' מחוץ לאפליקציית ARCore באמצעות ARCore Cloud anchor Management API.

תחילת העבודה

פעולות לדוגמה

הרשאה

יש ליצור מפתח לחשבון השירות במסוף Google Cloud Platform וליצור אסימון OAuth2 כדי לאשר קריאות ל-Cloud anchor Management API.

  1. בתפריט הניווט של מסוף Google Cloud Platform, נכנסים אל APIs & Services > Credentials.

  2. יש לבחור את הפרויקט הרצוי ולאחר מכן ללחוץ על Create Credentials > Service account.

  3. בקטע Service account details, מקלידים שם לחשבון החדש ואז לוחצים על Create.

  4. בדף Service account permissions, עוברים אל התפריט הנפתח Select a role. בוחרים באפשרות Service Accounts >Service Account Token Creator, ואז לוחצים על Continue.

  5. בדף Grant users access to this service account לוחצים על Done. הלחיצה תחזיר אותך אל APIs & Services &gt. Credentials

  6. בדף Credentials, יש לגלול למטה אל הקטע Service Accounts וללחוץ על שם החשבון שיצרת כרגע.

  7. בדף Service account details, גוללים למטה לקטע Keys ובוחרים באפשרות Add Key > Create new key.

  8. יש לבחור את סוג המפתח JSON וללחוץ על Create. הפעולה הזו מורידה קובץ JSON שמכיל את המפתח הפרטי למכונה שלך. מאחסנים את קובץ המפתח מסוג JSON שמורידים במיקום מאובטח.

יצירת אסימון OAuth2

arcore.management הוא היקף OAuth עבור ה-Cloud עוגן Management API. כברירת מחדל, oauth2l פועל במטמון אסימון. הפקודה fetch מאחזרת את אותו אסימון. יש להשתמש ב-oauth2l כדי ליצור אסימון OAuth2 להרשאה:

oauth2l fetch --json creds.json arcore.management

כדי ליצור אסימון חדש, יש להוסיף אפשרות --cache="" לפקודה fetch.

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

אפשר גם להתקשר אל oauth2l reset ולפנות שוב לפקודה fetch.

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

הצגת כל רשימת העוגנים בענן

אפשר לקבל את הדף הראשון של עוגן בענן, לפי בחירתך, לפי expire_time, create_time או last_localize_time.

בקשה:

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"

תשובה:

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

אם התגובה מגיעה עם nextPageToken, ישנם עוגנים נוספים לרשימה. יש להשתמש בפרמטר השאילתה next_page_token בבקשה הבאה כדי לאחזר את קבוצת התוצאות הבאה.

בקשה:

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"

בעת שימוש ב-next_page_token, page_size ו-order_by חייבים להיות עקביים בבקשות שונות. ברירת המחדל של page_size היא 1000 וברירת המחדל של order_by היא expire_time_desc.

יש לעדכן את השעה שבה נמצא עוגן של ענן כדי לחיות עד לזמן המקסימלי המותר

בקשת עוגן יחיד בענן כדי להריץ שאילתות על lastLocalizeTime ועל maximumExpireTime.

בקשה:

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"

תשובה:

{
  "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"
}

לאחר קבלת העוגן, יש לעדכן את ה-expireTime שלו ל-maximumExpireTime.

בקשה:

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" }'

תשובה:

{
  "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 עוגן

מחיקת עוגן יחיד בענן:

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"

מחיקת קבוצה של עוגן בענן:

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" ]}'