Tujuan dari proyek Firefox Reality adalah membuat browser berfitur lengkap khusus untuk headset AR dan VR mandiri .
Anda dapat menemukan kami di #fxr:mozilla.org di Matrix (Petunjuk untuk bergabung), Twitter @MozillaReality, dan di [email protected].
Unduh APK pengembang untuk Firefox Reality yang dihasilkan dari aplikasi utama terbaru.
Firefox Reality mendukung bahasa Mandarin (Tiongkok), Mandarin (Taiwan), Inggris, Prancis, Jerman, Italia, Jepang, Rusia, dan Spanyol untuk antarmuka pengguna, pencarian suara, dan entri teks. Pelokalan disediakan oleh komunitas sukarelawan pelokalan Mozilla yang luar biasa.
Untuk info lebih lanjut tentang pelokalan, cara kerjanya di proyek Firefox Reality, dan cara mengedit teks yang dapat dilokalkan dengan benar di aplikasi, silakan lihat halaman wiki pelokalan.
Kloning FirefoxReality.
git clone [email protected]:MozillaReality/FirefoxReality.git
cd FirefoxReality
Kloning repo pihak ketiga.
Jika Anda mengembangkan untuk Oculus, Snapdragon VR, atau VIVE, Anda perlu mengkloning repo dengan file SDK pihak ketiga.
git clone [email protected]:MozillaReality/FirefoxReality-android-third-party.git third_party
Repo ini hanya tersedia untuk karyawan Mozilla. Jika Anda memiliki akses ke SDK yang relevan tetapi tidak memiliki repo ini, Anda dapat menempatkannya secara manual di sini:
third_party/ovr_mobile/
untuk Oculus (harus berisi folder VrApi
)third_party/wavesdk/
untuk Vive (harus berisi folder build
, antara lain) Repo di third_party
dapat diperbarui seperti ini:
pushd third_party && git fetch && git checkout main && git rebase origin/main && popd
Ambil submodul Git.
Anda mungkin perlu menyiapkan autentikasi dua faktor untuk baris perintah.
git submodule update --init --recursive
Anda dapat membuat untuk perangkat yang berbeda:
oculusvr
: Samsung Gear VR & Oculus Gowavevr
: Fokus VIVEUntuk pengujian pada perangkat non-VR:
noapi
: Berjalan pada ponsel Android standar tanpa headsetPembuatan untuk Oculus Mobile, dan WaveVR memerlukan akses ke SDK masing-masing yang tidak disertakan dalam repo ini.
Versi baris perintah gradlew
memerlukan JDK 8 dari Oracle. Jika Anda melihat kesalahan karena Gradle tidak memahami versi Java Anda, periksa versi mana yang Anda gunakan dengan menjalankan java -showversion
atau java -version
. Anda mungkin menggunakan JDK 9 atau 10, yang tidak berfungsi.
Buka proyek dengan Android Studio lalu buat dan jalankan. Bergantung pada apa yang sudah Anda instal di Android Studio, build mungkin gagal dan kemudian meminta Anda menginstal dependensi. Terus lakukan apa yang disarankan. Untuk memilih perangkat yang akan dibuat, buka Tool Windows > Build Variants
dan pilih varian build yang sesuai dengan perangkat Anda.
Jika Anda ingin membuat FirefoxReality untuk WaveVR SDK:
Unduh VIVE Wave SDK dari VIVE Developer Resources, dan unzip. Kemudian, dari direktori proyek tingkat atas, jalankan:
mkdir -p third_party/wavesdk
cp /path/to/the/sdk/2.0.32/SDK/libs/wvr_client.aar third_party/wavesdk
cp ./extra/wavesdk/build.gradle ./third_party/wavesdk
Pastikan untuk menyetel ragam build ke wavevrDebug
di Android Studio sebelum membuat proyek.
Anda mungkin tertarik untuk membangun proyek ini dengan versi lokal dari beberapa dependensi. Hal ini dapat dilakukan dengan menggunakan repositori pakar lokal (cukup rumit), atau melalui substitusi ketergantungan Gradle (sama sekali tidak rumit!).
Saat ini, alur substitusi disederhanakan untuk beberapa dependensi inti melalui tanda konfigurasi di local.properties
. Anda dapat membuat checkout lokal dari dependensi berikut dengan menentukan jalur lokalnya:
dependencySubstitutions.geckoviewTopsrcdir=/path/to/mozilla-central
(dan, opsional, dependencySubstitutions.geckoviewTopobjdir=/path/to/topobjdir
). Lihat Bug 1533465. Jangan lupa untuk menjalankan sinkronisasi Gradle di Android Studio setelah mengubah local.properties
. Jika Anda menentukan substitusi apa pun, substitusi tersebut akan tercermin dalam daftar modul, dan Anda akan dapat memodifikasinya dari satu jendela Android Studio.
Anda dapat mengaktifkan akhiran dev applicationID untuk menginstal build dev dan produksi secara bersamaan. Anda hanya perlu menambahkan properti ini ke file user.properties
Anda:
simultaneousDevProduction =true
Versi rilis lokal dapat berguna untuk mengukur kinerja atau masalah debug yang hanya terjadi pada versi rilis. Selain berurusan dengan kunci rilis, Anda dapat membuat pengujian lebih mudah hanya dengan menambahkan properti ini ke file user.properties
Anda:
useDebugSigningOnRelease =true
Catatan: APK rilis yang dihasilkan dengan keystore debug tidak dapat digunakan untuk produksi.
Kompresi ETC2 digunakan untuk meningkatkan kinerja dan penggunaan memori. Aset mentah ditempatkan di folder uncompressed_assets
. Anda dapat menghasilkan tekstur terkompresi menggunakan utilitas kompresor di tools/compressor
. Anda perlu menyiapkan etc2comp dan membuatnya tersedia di PATH Anda sebelum menjalankan skrip. Jalankan perintah ini untuk menghasilkan aset terkompresi:
cd tools/compressor
npm install
npm run compress
Anda dapat mengaktifkan OpenXR API untuk Oculus dengan menambahkan properti ini ke file user.properties
Anda:
openxr =true
Device supports , but APK only supports armeabi-v7a[...]
Aktifkan USB Remote Debugging pada perangkat.
Firefox > Web Developer > WebIDE > Performance
terhenti karena "berhenti dan tampilkan profil" berwarna abu-abuMulai ulang FxR dan tutup serta buka kembali halaman WebIDE.
Tool Windows > Build Variants
kosongAndroid Studio > Check for Updates…
.File > Sync Project with Gradle Files
. pro hand -p true -s false SIGILL
adb shell am start -a android.intent.action.VIEW -d "https://aframe.io" org.mozilla.vrbrowser/org.mozilla.vrbrowser.VRBrowserActivity
untuk memuat URL dari baris perintahadb shell am start -a android.intent.action.VIEW -n org.mozilla.vrbrowser/org.mozilla.vrbrowser.VRBrowserActivity -e homepage "https://example.com"
untuk mengganti berandaadb shell setprop debug.oculus.enableVideoCapture 1
untuk merekam video di Oculus Go. Ingatlah untuk menjalankan adb shell setprop debug.oculus.enableVideoCapture 0
untuk berhenti merekam video.Sharing > Record Video
disableCrashRestart=true
di user.properties
gradle untuk menonaktifkan peluncuran ulang aplikasi saat mogok. Untuk mengkompilasi dengan dukungan Servo, buat file bernama user.properties
di direktori proyek tingkat atas dan tambahkan enableServo=1
. Kemudian untuk mengaktifkan Servo di Firefox Reality, buka panel Opsi Pengembang di Pengaturan, dan aktifkan opsi Servo. Kemudian tombol baru akan ditambahkan ke bilah navigasi. Mengklik tombol itu akan memuat ulang halaman saat ini dengan Servo.