Mengelola Cloud Anchor di luar aplikasi ARCore menggunakan ARCore Cloud Anchor API Pengelolaan.
Memulai
Contoh operasi
- Mencantumkan semua Cloud Anchor
- Memperbarui waktu aktif Cloud Anchor ke waktu aktif maksimum yang diizinkan
- Menghapus Cloud Anchor
Otorisasi
Buat kunci akun layanan di Konsol Google Cloud Platform dan buat token OAuth2 untuk memberi otorisasi panggilan API pengelolaan Cloud Anchor.
Di menu navigasi Konsol Google Cloud Platform, buka APIs & Services > Credentials.
Pilih project yang diinginkan, lalu klik Create Credentials > Service account.
Di bagian Service account details, ketik nama untuk akun baru, lalu klik Create.
Di halaman Service account permissions, buka Select a role {i>dropdown<i}. Pilih Service Accounts > Service Account Token Creator, lalu klik Continue.
Di halaman Grant users access to this service account, klik Done. Tindakan ini akan membawa Anda kembali ke APIs & Services > Credentials.
Di halaman Credentials, scroll ke bawah ke bagian Service Accounts dan klik nama akun yang baru saja Anda buat.
Di halaman Service account details, scroll ke bawah ke bagian Keys dan pilih Add Key > Create new key.
Pilih JSON sebagai jenis kunci dan klik Create. Tindakan ini akan mendownload JSON file yang berisi kunci pribadi ke komputer Anda. Simpan JSON yang didownload file kunci Anda di lokasi yang aman.
Membuat token OAuth2
arcore.management
adalah cakupan OAuth untuk Cloud Anchors Management API. Menurut
secara {i>default<i}, {i>oauth2l<i} bekerja
pada {i>cache<i} token. Perintah fetch
mengambil
sebelumnya yang benar. Gunakan oauth2l untuk membuat OAuth2
token untuk otorisasi:
oauth2l fetch --json creds.json arcore.management
Untuk membuat token baru, tambahkan opsi --cache=""
ke fetch
perintah.
oauth2l fetch --cache="" --json creds.json arcore.management
Atau, panggil oauth2l reset
dan panggil perintah fetch
lagi.
oauth2l reset
oauth2l fetch --json creds.json arcore.management
Mencantumkan semua Cloud Anchor
Dapatkan halaman pertama Cloud Anchors, yang diurutkan secara opsional menurut expire_time
,
create_time
, atau last_localize_time
.
Permintaan:
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"
Respons:
{
"anchors": [
{
"name": "anchors/ua-a1cc84e4f11b1287d289646811bf54d1",
"createTime": "...",
"expireTime": "...",
"lastLocalizeTime": "...",
"maximumExpireTime": "..."
},
…
{
"name": "anchors/ua-41a3d0233471917875159f6f3c25ea0e",
"createTime": "...",
"expireTime": "...",
"lastLocalizeTime": "...",
"maximumExpireTime": "..."
}
],
nextPageToken: "some-long-string"
}
Jika respons kembali dengan nextPageToken
, akan ada lebih banyak anchor untuk
daftar. Gunakan parameter kueri next_page_token
pada permintaan berikutnya untuk mengambil
kumpulan hasil berikutnya.
Permintaan:
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"
Saat menggunakan next_page_token
, page_size
, dan order_by
harus konsisten
di seluruh permintaan. page_size
default 1000
dan order_by
default ke
expire_time_desc
.
Memperbarui waktu aktif Cloud Anchor ke waktu aktif maksimum yang diizinkan
Meminta Cloud Anchor tunggal untuk mengkueri lastLocalizeTime
dan
maximumExpireTime
.
Permintaan:
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"
Respons:
{
"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"
}
Setelah Anda memiliki anchor, update expireTime
-nya ke maximumExpireTime
.
Permintaan:
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" }'
Respons:
{
"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"
}
Menghapus Cloud Anchor
Menghapus satu Cloud Anchor:
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"
Hapus batch Cloud Anchor:
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" ]}'