إدارة Cloud Anchors خارج تطبيق ARCore باستخدام ARCore Cloud Anchor Management API:
الخطوات الأولى
أمثلة على العمليات
- سرد جميع منصات السحابة الإلكترونية
- تعديل وقت Cloud Anchor ليبلغ الحد الأقصى المسموح به للوقت
- حذف Cloud Anchors
التفويض
أنشئ مفتاح حساب خدمة في وحدة تحكُّم Google Cloud Platform وإنشاء رمز OAuth2 المميز للسماح باستدعاءات واجهة برمجة التطبيقات لإدارة Cloud Anchor Anchor.
في قائمة التنقل في وحدة تحكُّم Google Cloud Platform، انتقِل إلى APIs & Services Credentials
اختَر المشروع المطلوب، ثم انقر على Create Credentials >. Service account
ضمن Service account details، اكتب اسمًا للحساب الجديد، ثم انقر على Create.
في صفحة Service account permissions، انتقِل إلى Select a role. المنسدلة. اختيار Service Accounts > Service Account Token Creator, ثم انقر على Continue.
في صفحة Grant users access to this service account، انقر على Done. يعيدك هذا إلى APIs & Services >. Credentials
في صفحة Credentials، انتقِل للأسفل إلى القسم Service Accounts. وانقر على اسم الحساب الذي أنشأته للتوّ.
في صفحة Service account details، انتقِل للأسفل إلى القسم Keys. واختر Add Key > Create new key
اختَر نوع المفتاح JSON وانقر على Create. يؤدي هذا الإجراء إلى تنزيل ملف JSON يحتوي على المفتاح الخاص إلى جهازك. تخزين ملف JSON الذي تم تنزيله في مكان آمن.
إنشاء رمز OAuth2 مميز
arcore.management
هو نطاق OAuth لواجهة Cloud Anchors 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
سرد جميع Cloud Anchors
الحصول على الصفحة الأولى من Cloud Anchors، مرتبة اختياريًا حسب 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
تعديل وقت Cloud Anchor ليتم عرضه إلى أقصى مدة مسموح بها
يمكنك طلب خدمة Cloud Anchor واحدة للاستعلام عن 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 Anchors
حذف نقطة ارتساء 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"
حذف حزمة من Cloud Anchors:
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" ]}'