basti564 / Oculess

Removes account requirements and telemetry from Oculus Quest devices
The Unlicense
1.81k stars 76 forks source link

Add Background Audio, Update UI #26

Closed threethan closed 2 years ago

threethan commented 2 years ago

This version allows apps like Discord and Spotify to function almost flawlessly on the Quest 2 (don't have a quest 1 to test) However, this requires device owner permissions. I'm gonna hold off on uploading my own apk for a few days, since changing forks would require a factory reset. (You can't install updates to admin apps unless signatures match)

basti564 commented 2 years ago

Thank you for your pull request! This very cool feature, I have just tested it on my devices an it works great. I will publish a signed version of Oculess with these features soon.

D3SOX commented 2 years ago

Thank you, this works great!

The only thing I noticed is that the OS pauses media playback when an update or unsupported app dialog comes up (For example, with modded Beat Saber). So you wouldn't be able to use Spotify as background music playback with such apps because you can't resume the playback in a VR app. However, apps that don't make use of Android's media player feature like Discord work fine.

threethan commented 2 years ago

@D3SOX I've noticed this. That seems to be normal android behavior - media playback from one source gets paused when another starts. I incorrectly stated in the PR that apps seem to be suspended when you quit a game - turns out media is only paused. Normally it would be possible to resume playback from the notification shade (the quest seems to use it's own notification implementation instead of android's) or by using a hardware play/pause button (the quest seems to ignore hardware media buttons). However, I managed to resume spotify remotely using spotify connect.

It might be possible to work around this using an accessibility service. (I can confirm that custom accessibility interactions work fine on the quest) This might also make it possible to run at startup, as typical "launch-at-startup" apps don't work on the quest.