El objetivo del proyecto Firefox Reality es crear un navegador con todas las funciones exclusivo para auriculares AR y VR independientes .
Puede encontrarnos en #fxr:mozilla.org en Matrix (Instrucciones para unirse), Twitter @MozillaReality y en [email protected].
Descargue APK de desarrollador para Firefox Reality generados a partir de la última versión principal.
Firefox Reality admite chino (China), chino (Taiwán), inglés, francés, alemán, italiano, japonés, ruso y español para la interfaz de usuario, la búsqueda por voz y la entrada de texto. La localización la proporciona la increíble comunidad de localizadores voluntarios de Mozilla.
Para obtener más información sobre la localización, cómo funciona en el proyecto Firefox Reality y cómo editar correctamente el texto localizable en la aplicación, consulte la página wiki de localización.
Clonar FirefoxReality.
git clone [email protected]:MozillaReality/FirefoxReality.git
cd FirefoxReality
Clona el repositorio de terceros.
Si está desarrollando para Oculus, Snapdragon VR o VIVE, debe clonar el repositorio con archivos SDK de terceros.
git clone [email protected]:MozillaReality/FirefoxReality-android-third-party.git third_party
Este repositorio sólo está disponible para los empleados de Mozilla. Si tiene acceso al SDK relevante pero no a este repositorio, puede colocarlos manualmente aquí:
third_party/ovr_mobile/
para Oculus (debe contener una carpeta VrApi
)third_party/wavesdk/
para Vive (debe contener una carpeta build
, entre otras cosas) El repositorio third_party
se puede actualizar así:
pushd third_party && git fetch && git checkout main && git rebase origin/main && popd
Obtenga submódulos de Git.
Es posible que necesites configurar la autenticación de dos factores para la línea de comando.
git submodule update --init --recursive
Puedes construir para diferentes dispositivos:
oculusvr
: Samsung Gear VR y Oculus Gowavevr
: VIVE EnfoquePara realizar pruebas en un dispositivo que no sea de realidad virtual:
noapi
: se ejecuta en teléfonos Android estándar sin auricularesLa compilación para Oculus Mobile y WaveVR requiere acceso a sus respectivos SDK que no están incluidos en este repositorio.
La versión de línea de comando de gradlew
requiere JDK 8 de Oracle. Si ve un error que indica que Gradle no comprende su versión de Java, verifique qué versión está utilizando ejecutando java -showversion
o java -version
. Probablemente estés usando JDK 9 o 10, que no funcionará.
Abra el proyecto con Android Studio, luego compílelo y ejecútelo. Dependiendo de lo que ya tenga instalado en Android Studio, la compilación puede fallar y luego solicitarle que instale dependencias. Sigue haciendo lo que sugiere. Para seleccionar el dispositivo para el cual construir, vaya a Tool Windows > Build Variants
y seleccione una variante de compilación correspondiente a su dispositivo.
Si desea crear FirefoxReality para el SDK de WaveVR:
Descargue el SDK de VIVE Wave de VIVE Developer Resources y descomprímalo. Luego, desde el directorio del proyecto de nivel superior, ejecute:
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
Asegúrese de configurar el tipo de compilación en wavevrDebug
en Android Studio antes de compilar el proyecto.
Quizás le interese construir este proyecto con versiones locales de algunas de las dependencias. Esto se podría hacer utilizando un repositorio maven local (bastante engorroso) o mediante las sustituciones de dependencias de Gradle (¡nada engorroso!).
Actualmente, el flujo de sustitución está optimizado para algunas de las dependencias principales mediante indicadores de configuración en local.properties
. Puede compilar con una extracción local de las siguientes dependencias especificando sus rutas locales:
dependencySubstitutions.geckoviewTopsrcdir=/path/to/mozilla-central
(y, opcionalmente, dependencySubstitutions.geckoviewTopobjdir=/path/to/topobjdir
). Consulte el error 1533465. No olvide ejecutar una sincronización de Gradle en Android Studio después de cambiar local.properties
. Si especificaste alguna sustitución, se reflejará en la lista de módulos y podrás modificarla desde una única ventana de Android Studio.
Puede habilitar un sufijo de ID de aplicación de desarrollo para instalar compilaciones de desarrollo y producción simultáneamente. Sólo necesita agregar esta propiedad a su archivo user.properties
:
simultaneousDevProduction =true
Las versiones de lanzamiento locales pueden ser útiles para medir el rendimiento o depurar problemas que solo ocurren en las versiones de lanzamiento. En lugar de lidiar con claves de versión, puede facilitar las pruebas simplemente agregando esta propiedad a su archivo user.properties
:
useDebugSigningOnRelease =true
Nota: los APK de lanzamiento generados con un almacén de claves de depuración no se pueden usar para producción.
La compresión ETC2 se utiliza para mejorar el rendimiento y el uso de la memoria. Los activos sin procesar se colocan en la carpeta uncompressed_assets
. Puede generar las texturas comprimidas usando la utilidad de compresor en tools/compressor
. Debe configurar etc2comp y ponerlo a disposición en su RUTA antes de ejecutar el script. Ejecute este comando para generar los activos comprimidos:
cd tools/compressor
npm install
npm run compress
Puede habilitar la API OpenXR para Oculus agregando esta propiedad a su archivo user.properties
:
openxr =true
Device supports , but APK only supports armeabi-v7a[...]
Habilite la depuración remota de USB en el dispositivo.
Firefox > Web Developer > WebIDE > Performance
se bloquea con "detener y mostrar perfil" atenuadoReinicie FxR y cierre y vuelva a abrir la página WebIDE.
Tool Windows > Build Variants
está vacíaAndroid 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
para cargar una URL desde la línea de comandoadb shell am start -a android.intent.action.VIEW -n org.mozilla.vrbrowser/org.mozilla.vrbrowser.VRBrowserActivity -e homepage "https://example.com"
para anular la página de inicioadb shell setprop debug.oculus.enableVideoCapture 1
para grabar un video en Oculus Go. Recuerde ejecutar adb shell setprop debug.oculus.enableVideoCapture 0
para detener la grabación del video.Sharing > Record Video
disableCrashRestart=true
en gradle user.properties
para deshabilitar el reinicio de la aplicación en caso de falla. Para compilar con soporte Servo, cree un archivo llamado user.properties
en el directorio del proyecto de nivel superior y agregue enableServo=1
. Luego, para habilitar Servo en Firefox Reality, vaya al panel de Opciones de desarrollador en Configuración y active la opción Servo. Luego se agregará un nuevo botón a la barra de navegación. Al hacer clic en ese botón se recargará la página actual con Servo.