Panduan memulai Cloud Anchors untuk Android

Coba hosting dan selesaikan Cloud Anchors di aplikasi contoh cloud_anchor_java dan persistent_cloud_anchor_java.

Aplikasi contoh mana yang seharusnya Anda gunakan?

Cloud Anchor adalah anchor yang dihosting di endpoint cloud ARCore API. API ini memungkinkan pengguna berbagi pengalaman di aplikasi yang sama. Persistent Cloud Anchor adalah Cloud Anchor yang dapat dihosting selama lebih dari 24 jam.

  • persistent_cloud_anchor_java adalah implementasi kasus penggunaan project kolaboratif. Library ini menggunakan otorisasi tanpa kunci untuk mengizinkan panggilan API ARCore. Karena tidak menggunakan backend Firebase untuk berbagi ID Cloud Anchor antar-perangkat, penyiapan dan pengoperasian menjadi lebih mudah.
  • cloud_anchor_java adalah implementasi kasus penggunaan multi-pemain. Perintah ini menggunakan kunci API untuk mengizinkan panggilan API ARCore.

Prasyarat

Persyaratan

Hardware

Software

  • Android Studio versi 3.0 atau yang lebih baru dengan Android SDK Platform versi 7.0 (API level 24) atau yang lebih tinggi
  • ARCore SDK untuk Android, yang bisa Anda dapatkan dengan salah satu dari dua cara:
    • Download dari GitHub dan ekstrak di komputer Anda
    • Clone repositori dengan perintah berikut:
      git clone https://github.com/google-ar/arcore-android-sdk.git

Membuka aplikasi contoh di Android Studio

ARCore SDK menyediakan aplikasi contoh cloud_anchor_java dan persistent_cloud_anchor_java untuk mendemonstrasikan fungsi Cloud Anchors. Ikuti langkah-langkah berikut untuk membuka aplikasi di Android Studio.

Persistent Cloud Anchors

  1. Di Android Studio, klik Open.

  2. Buka tempat direktori arcore-android-sdk disimpan di komputer Anda. Jangan buka seluruh folder SDK. Sebagai gantinya, buka sampel > persistent_cloud_anchor_java, lalu klik Open.

Cloud Anchor

  1. Di Android Studio, klik Open.

  2. Buka tempat direktori arcore-android-sdk disimpan di komputer Anda. Jangan buka seluruh folder SDK. Sebagai gantinya, buka sampel > cloud_anchor_java dan klik Open.

Menyiapkan berbagi ID Cloud Anchor

ID Cloud Anchor adalah string yang mengidentifikasi Cloud Anchor yang dihosting. Anchor tersebut digunakan untuk me-resolve, atau merender objek 3D yang melekat pada, anchor yang dihosting.

Persistent Cloud Anchors

Berbagi ID Cloud Anchor dikelola secara lokal dalam aplikasi. Anda tidak perlu melakukan apa pun di sini.

Cloud Anchor

Aplikasi contoh cloud_anchor_java menggunakan Realtime Database Firebase untuk berbagi ID Cloud Anchor antar-perangkat. Anda dapat menggunakan solusi berbeda di aplikasi Anda sendiri.

  1. Tambahkan Firebase ke aplikasi Anda secara manual. Nama paket cloud_anchor_java adalah com.google.ar.core.examples.java.cloudanchor. Anda dapat menemukannya di main/AndroidManifest.xml.
  2. Download file google-services.json yang dihasilkan saat menambahkan Firebase ke aplikasi Anda.
  3. Buat Realtime Database dengan Firebase.
  4. Di Android Studio, tambahkan file google-services.json ke direktori app project Anda.

Mengizinkan panggilan ARCore API

Otorisasi panggilan ke ARCore API untuk menghosting dan me-resolve Cloud Anchors untuk . Ikuti langkah-langkah untuk Menggunakan ARCore API di Google Cloud dan gunakan Keyless otorisasi untuk Persistent Cloud Anchors atau otorisasi Kunci API untuk Cloud Anchor.

Mem-build dan menjalankan aplikasi contoh

Persistent Cloud Anchors

Menjalankan aplikasi

  1. Pastikan perangkat Anda telah mengaktifkan opsi developer dan proses debug USB.
  2. Hubungkan perangkat Anda melalui USB ke mesin pengembangan.
  3. Di Android Studio, pilih perangkat Anda sebagai target deployment dan klik Run.

persistent_cloud_anchor_java akan diluncurkan di perangkat Anda, meminta ARCore untuk mendeteksi pesawat di depan kamera perangkat.

Jika otorisasi Google Cloud gagal, lihat Langkah-langkah pemecahan masalah.

Tempatkan anchor

  1. Setelah aplikasi mulai mendeteksi pesawat, ketuk layar untuk meletakkan anchor di salah satu bidang yang terdeteksi.
  2. Ketuk tombol HOST untuk menghosting anchor yang ditempatkan. Link ini mengirimkan permintaan host ke ARCore API, yang mencakup data yang mewakili posisi anchor yang relatif terhadap fitur visual di dekatnya.

Permintaan host yang berhasil akan menetapkan anchor di lokasi yang ditempatkan dan menetapkan ID Cloud Anchor untuknya. Jika permintaan penyelenggara berhasil, aplikasi akan menampilkan kode ruang. Anda dapat menggunakan kode ini guna mengakses anchor yang dihosting sebelumnya untuk ruang ini di perangkat apa pun.

Menyelesaikan anchor

  1. Ketuk SELESAIKAN, lalu masukkan kode ruang yang ditampilkan sebelumnya untuk mengakses anchor yang dihosting di ruang ini. Tindakan ini akan mengirimkan permintaan penyelesaian ke ARCore API, yang menampilkan ID semua anchor yang saat ini dihosting dalam ruang. persistent_cloud_anchor_java akan menggunakan ID ini untuk merender objek 3D yang dilampirkan ke anchor yang dihosting.

Cloud Anchor

Menjalankan aplikasi

  1. Pastikan perangkat Anda telah mengaktifkan opsi developer dan proses debug USB.
  2. Hubungkan perangkat Anda melalui USB ke mesin pengembangan.
  3. Di Android Studio, pilih perangkat Anda sebagai target deployment dan klik Run.

cloud_anchor_java akan diluncurkan di perangkat Anda, meminta ARCore untuk mendeteksi pesawat di depan kamera perangkat.

Error: com.google.firebase.database.DatabaseException: Failed to get FirebaseDatabase instance: Specify DatabaseURL within FirebaseApp or from your getInstance

Jika Anda mengalami error ini, pastikan properti firebase_url ada di google-services.json. Anda bisa mendapatkan nilai yang benar untuk properti ini dengan memastikan bahwa Realtime Database telah dibuat dan mendownload google-services.json.


Tempatkan anchor

  1. Setelah aplikasi mulai mendeteksi pesawat, ketuk layar untuk meletakkan anchor di salah satu bidang yang terdeteksi.
  2. Ketuk tombol HOST untuk menghosting anchor yang ditempatkan. Link ini mengirimkan permintaan host ke ARCore API, yang mencakup data yang mewakili posisi anchor yang relatif terhadap fitur visual di dekatnya.

Permintaan host yang berhasil akan membuat anchor di lokasi yang ditempatkan dan menetapkan ID Cloud Anchors untuknya. Jika permintaan penyelenggara berhasil, aplikasi akan menampilkan kode ruang. Anda dapat menggunakan kode ini guna mengakses anchor yang dihosting sebelumnya untuk ruang ini di perangkat apa pun.

Menyelesaikan anchor

  1. Ketuk SELESAIKAN, lalu masukkan kode ruang yang ditampilkan sebelumnya untuk mengakses anchor yang dihosting di ruang ini. Tindakan ini akan mengirimkan permintaan penyelesaian ke ARCore API, yang menampilkan ID semua anchor yang saat ini dihosting dalam ruang. cloud_anchor_java akan menggunakan ID ini untuk merender objek 3D yang dilampirkan ke anchor yang dihosting.

Langkah selanjutnya