Panduan memulai Cloud Anchors untuk Android

Coba menghosting dan me-resolve Cloud Anchors dalam aplikasi contoh cloud_anchor_java dan persistent_cloud_anchor_java.

Aplikasi contoh mana yang harus 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 dari kasus penggunaan project kolaboratif. Fungsi ini menggunakan otorisasi tanpa kunci untuk mengizinkan panggilan ARCore API. Karena tidak menggunakan backend Firebase untuk membagikan ID Cloud Anchor antarperangkat, penyiapan dan pengoperasian jauh lebih mudah.
  • cloud_anchor_java adalah implementasi dari kasus penggunaan multiplayer. ARCore menggunakan kunci API untuk mengizinkan panggilan ARCore API.

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 dapat Anda dapatkan dengan salah satu dari dua cara berikut:
    • Download dari GitHub dan ekstrak di mesin 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 lokasi penyimpanan direktori arcore-android-sdk di komputer Anda. Jangan buka seluruh folder SDK. Sebagai gantinya, buka samples > persistent_cloud_anchor_java, lalu klik Buka.

Penanda Cloud

  1. Di Android Studio, klik Open.

  2. Buka lokasi penyimpanan direktori arcore-android-sdk di komputer Anda. Jangan buka seluruh folder SDK. Sebagai gantinya, buka samples > cloud_anchor_java, lalu klik Buka.

Menyiapkan berbagi ID Cloud Anchor

ID Cloud Anchor adalah string yang mengidentifikasi Cloud Anchor yang dihosting. Objek itu digunakan untuk me-resolve, atau merender objek 3D yang dilampirkan, anchor yang di-host.

Persistent Cloud Anchors

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

Penanda Cloud

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

  1. Tambahkan Firebase ke aplikasi 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 Anda buat saat menambahkan Firebase ke aplikasi.
  3. Membuat Realtime Database dengan Firebase.
  4. Di Android Studio, tambahkan file google-services.json ke direktori app project Anda.

Mengizinkan panggilan ARCore API

Izinkan panggilan ke ARCore API untuk menghosting dan menyelesaikan Cloud Anchors untuk aplikasi Anda. Ikuti langkah-langkah untuk di bagian Menggunakan ARCore API di Google Cloud dan gunakan Otorisasi tanpa kunci untuk Persistent Cloud Anchor atau Otorisasi Kunci API untuk Cloud Anchors.

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, lalu klik Run.

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

Jika otorisasi Google Cloud gagal, lihat 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. Tindakan ini mengirimkan permintaan host ke ARCore API, yang menyertakan data yang mewakili posisi anchor terkait fitur visual di dekatnya.

Permintaan host yang berhasil akan membuat anchor di lokasi yang ditempatkan dan menetapkan ID Cloud Anchor. Jika permintaan host berhasil, aplikasi akan menampilkan kode kamar. Anda dapat menggunakan kode ini untuk mengakses anchor yang sebelumnya dihosting untuk ruangan 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 resolusi ke ARCore API, yang menampilkan ID semua anchor yang saat ini dihosting di ruang. persistent_cloud_anchor_java akan menggunakan ID ini untuk merender objek 3D yang dilampirkan ke anchor yang dihosting.

Penanda Cloud

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, lalu klik Run.

cloud_anchor_java akan diluncurkan di perangkat Anda, yang meminta ARCore 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. Tindakan ini mengirimkan permintaan host ke ARCore API, yang menyertakan data yang mewakili posisi anchor terkait fitur visual di dekatnya.

Permintaan host yang berhasil akan membuat anchor di lokasi yang ditempatkan dan menetapkan ID Cloud Anchors ke dalamnya. Jika permintaan host berhasil, aplikasi akan menampilkan kode kamar. Anda dapat menggunakan kode ini untuk mengakses anchor yang sebelumnya dihosting untuk ruangan 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 resolusi ke ARCore API, yang menampilkan ID semua anchor yang saat ini dihosting di ruang. cloud_anchor_java akan menggunakan ID ini untuk merender objek 3D yang dilampirkan ke anchor yang dihosting.

Langkah selanjutnya