Firefox Reality 專案的目標是創建一款專為獨立AR 和 VR 耳機打造的全功能瀏覽器。
您可以在 Matrix 上的#fxr:mozilla.org(加入說明)、Twitter @MozillaReality 和[email protected] 中找到我們。
下載從最新 main 產生的 Firefox Reality 開發者 APK。
Firefox Reality 支援中文(中國)、中文(台灣)、英文、法文、德文、義大利文、日文、俄文和西班牙文的使用者介面、語音搜尋和文字輸入。在地化由 Mozilla 令人驚嘆的在地化志工社群提供。
有關本地化、它如何在 Firefox Reality 專案中工作以及如何在應用程式中正確編輯可本地化文字的更多信息,請參閱本地化 wiki 頁面。
克隆 FirefoxReality。
git clone [email protected]:MozillaReality/FirefoxReality.git
cd FirefoxReality
克隆第三方儲存庫。
如果您正在為 Oculus、Snapdragon VR 或 VIVE 進行開發,則需要使用第三方 SDK 檔案克隆儲存庫。
git clone [email protected]:MozillaReality/FirefoxReality-android-third-party.git third_party
此儲存庫僅適用於 Mozilla 員工。如果您有權存取相關 SDK 但無法存取此儲存庫,則可以手動將它們放置在此處:
third_party/ovr_mobile/
適用於 Oculus(應包含VrApi
資料夾)third_party/wavesdk/
for Vive(應包含build
資料夾等) third_party
中的儲存庫可以像這樣更新:
pushd third_party && git fetch && git checkout main && git rebase origin/main && popd
取得 Git 子模組。
您可能需要為命令列設定雙重認證。
git submodule update --init --recursive
您可以針對不同的裝置進行建置:
oculusvr
:三星 Gear VR 與 Oculus Gowavevr
: VIVE 焦點對於非 VR 裝置上的測試:
noapi
:在不含耳機的標準 Android 手機上運行為 Oculus Mobile 和 WaveVR 建置需要存取其各自的 SDK,這些 SDK 未包含在本儲存庫中。
gradlew
的命令列版本需要 Oracle 的 JDK 8。如果您看到 Gradle 無法辨識您的 Java 版本的錯誤,請透過執行java -showversion
或java -version
檢查您使用的是哪個版本。您可能使用的是 JDK 9 或 10,這不起作用。
使用 Android Studio 打開項目,然後建置並運行它。根據您已在 Android Studio 中安裝的內容,建置可能會失敗,然後可能會提示您安裝依賴項。只要繼續照它的建議去做就可以了。若要選擇要建置的設備,請前往Tool Windows > Build Variants
,然後選擇與您的裝置相對應的建置變體。
如果您想為 WaveVR SDK 建立 FirefoxReality:
從 VIVE 開發者資源下載 VIVE Wave SDK 並解壓縮。然後,從頂級專案目錄中運行:
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
在建置專案之前,請確保在 Android Studio 中將建置風格設定為wavevrDebug
。
您可能有興趣針對某些依賴項的本機版本建立此專案。這可以透過使用本機 Maven 儲存庫(相當麻煩)或透過 Gradle 的依賴項替換(一點也不麻煩!)來完成。
目前,透過local.properties
中的配置標誌簡化了一些核心依賴項的替換流程。您可以透過指定本機路徑來針對下列相依性的本機簽出進行建置:
dependencySubstitutions.geckoviewTopsrcdir=/path/to/mozilla-central
(以及可選的dependencySubstitutions.geckoviewTopobjdir=/path/to/topobjdir
)指定其路徑。請參閱錯誤 1533465。更改local.properties
後,不要忘記在 Android Studio 中執行 Gradle 同步。如果您指定了任何替換,它們將反映在模組清單中,並且您將能夠從單一 Android Studio 視窗中修改它們。
您可以啟用開發應用程式 ID 後綴以同時安裝開發版本和生產版本。您只需將此屬性新增至您的user.properties
檔案:
simultaneousDevProduction =true
本地發布版本可用於衡量效能或偵錯僅在發布版本中發生的問題。除了處理發布金鑰之外,您只需將此屬性新增至user.properties
檔案即可讓測試變得更容易:
useDebugSigningOnRelease =true
注意:使用偵錯金鑰庫產生的發布 APK 不能用於生產。
ETC2 壓縮用於提高效能和記憶體使用率。原始資源放置在uncompressed_assets
資料夾中。您可以使用tools/compressor
中的壓縮器實用程式產生壓縮紋理。在運行腳本之前,您需要設定 etc2comp 並使其在您的 PATH 中可用。執行以下命令產生壓縮資源:
cd tools/compressor
npm install
npm run compress
您可以透過將此屬性新增至user.properties
檔案來為 Oculus 啟用 OpenXR API:
openxr =true
Device supports , but APK only supports armeabi-v7a[...]
在裝置上啟用 USB 遠端偵錯。
Firefox > Web Developer > WebIDE > Performance
因「停止並顯示設定檔」灰顯而卡住重新啟動 FxR 並關閉並重新開啟 WebIDE 頁面。
Tool Windows > Build Variants
清單為空Android Studio > Check for Updates…
更新 Android Studio。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
從命令列載入 URLadb shell am start -a android.intent.action.VIEW -n org.mozilla.vrbrowser/org.mozilla.vrbrowser.VRBrowserActivity -e homepage "https://example.com"
覆蓋首頁adb shell setprop debug.oculus.enableVideoCapture 1
在 Oculus Go 上錄製影片。請記住運行adb shell setprop debug.oculus.enableVideoCapture 0
以停止錄製影片。Sharing > Record Video
user.properties
中設定disableCrashRestart=true
以停用應用程式崩潰時重新啟動。 若要使用 Servo 支援進行編譯,請在頂級專案目錄中建立名為user.properties
的檔案並新增enableServo=1
。然後,要在 Firefox Reality 中啟用 Servo,請前往「設定」中的「開發者選項」面板,然後切換「Servo」選項。然後一個新按鈕將會新增到導覽列。點擊該按鈕將使用 Servo 重新載入目前頁面。