1414 <provider android : name =" androidx.core.content.FileProvider" android : authorities =" sh.ppy.osulazer.fileprovider" android : grantUriPermissions =" true" android : exported =" false" >
1515 <meta-data android : name =" android.support.FILE_PROVIDER_PATHS" android : resource =" @xml/filepaths" />
1616 </provider >
17+ <!-- ═══════════════════════════════════════════════════════════════════════════════════
18+ Samsung (One UI / Galaxy / DeX)
19+ ─────────────────────────────────────────────────────────────────────────────────
20+ keepalive.density — keep app alive across density changes (DeX connect/disconnect).
21+ multidisplay.* — keep process alive when switching between phone and DeX display.
22+ game.biz — register with Game Launcher / Game Booster for CPU+GPU boost,
23+ thermal management, and display-refresh priority on phones/tablets.
24+ dex.game — register with the DeX Game Engine (One UI 5+): applies the same
25+ CPU/GPU boost pipeline as Game Booster but on the DeX/external-
26+ monitor path, where the Game Launcher overlay does not appear. -->
1727 <meta-data android : name =" com.samsung.android.keepalive.density" android : value =" true" />
1828 <meta-data android : name =" com.samsung.android.multidisplay.keep_process_alive" android : value =" true" />
19- <!-- Register as a game for Samsung Game Launcher / Game Booster.
20- This enables vendor-specific optimizations (performance boost, thermal management,
21- display refresh rate priority) on Samsung devices automatically. -->
2229 <meta-data android : name =" com.samsung.android.game.biz" android : value =" true" />
23- <!-- Android 13+ Game Mode opt-out (https://developer.android.com/games/gamemode/gamemode-api).
24- We explicitly disable Battery- and Performance-mode interventions, FPS override, and
25- downscaling. A rhythm game's input-to-audio latency budget is hard-bound by the
26- active refresh rate and the audio burst cadence — letting the OS Game Manager cap
27- our framerate (typical "battery saver" downscale: 60Hz → 30Hz) or downscale our
28- render resolution (typical "battery saver" downscale: 100% → 75%) breaks both
29- timing accuracy AND visual hit-circle alignment. We already manage thermals, refresh
30- rate, and sustained performance ourselves (see OsuGameAndroid.LoadComplete). -->
30+ <meta-data android : name =" com.samsung.android.dex.game" android : value =" true" />
31+
32+ <!-- ═══════════════════════════════════════════════════════════════════════════════════
33+ Xiaomi / Redmi / POCO (MIUI / HyperOS Game Turbo)
34+ ─────────────────────────────────────────────────────────────────────────────────
35+ xiaomi.game.engine — Game Turbo main registration; activates CPU/GPU boost,
36+ network QoS priority, and touch-sampling boost.
37+ miui.intent.category.GAME — legacy MIUI category used by older Game Turbo builds
38+ (MIUI 12 and below) to identify the package as a game. -->
39+ <meta-data android : name =" xiaomi.game.engine" android : value =" true" />
40+ <meta-data android : name =" miui.intent.category.GAME" android : value =" true" />
41+
42+ <!-- ═══════════════════════════════════════════════════════════════════════════════════
43+ Vivo / iQOO (FunTouch OS / OriginOS Game Space)
44+ ─────────────────────────────────────────────────────────────────────────────────
45+ vivo.game.mode — registers with Game Space for performance mode, touch boost,
46+ and background-process suspension during gameplay. -->
47+ <meta-data android : name =" vivo.game.mode" android : value =" true" />
48+
49+ <!-- ═══════════════════════════════════════════════════════════════════════════════════
50+ Oppo / OnePlus / Realme (ColorOS / OxygenOS / realme UI — all OPPO-derived)
51+ ─────────────────────────────────────────────────────────────────────────────────
52+ oppo.intent.category.GAME — ColorOS / OxygenOS 14+ Game Space registration;
53+ enables CPU boost, network priority, and Do-Not-Disturb.
54+ com.oplus.games — supplementary key read by newer ColorOS Game Driver. -->
55+ <meta-data android : name =" oppo.intent.category.GAME" android : value =" true" />
56+ <meta-data android : name =" com.oplus.games" android : value =" true" />
57+
58+ <!-- ═══════════════════════════════════════════════════════════════════════════════════
59+ Honor (MagicOS — independent of Huawei since 2020)
60+ ─────────────────────────────────────────────────────────────────────────────────
61+ com.hihonor.intent.category.GAME — MagicOS Game Space registration;
62+ activates GPU Turbo and performance scheduling. -->
63+ <meta-data android : name =" com.hihonor.intent.category.GAME" android : value =" true" />
64+
65+ <!-- ═══════════════════════════════════════════════════════════════════════════════════
66+ Huawei (EMUI / HarmonyOS — devices with Google Play)
67+ ─────────────────────────────────────────────────────────────────────────────────
68+ com.huawei.gamebox — Game Assistant registration; activates GPU Turbo,
69+ touch-sampling boost, and background-process suspension. -->
70+ <meta-data android : name =" com.huawei.gamebox" android : value =" true" />
71+
72+ <!-- ═══════════════════════════════════════════════════════════════════════════════════
73+ Asus (ROG Phone / Zenfone — ROG UI / ZenUI)
74+ ─────────────────────────────────────────────────────────────────────────────────
75+ asus.intent.category.GAME — Armoury Crate / Game Genie registration;
76+ activates X-Mode CPU/GPU boost and network priority. -->
77+ <meta-data android : name =" asus.intent.category.GAME" android : value =" true" />
78+
79+ <!-- ═══════════════════════════════════════════════════════════════════════════════════
80+ Lenovo / Legion (Legion OS / ZUI)
81+ ─────────────────────────────────────────────────────────────────────────────────
82+ com.lenovo.gameassistant — Legion Game Assistant registration;
83+ activates CPU/GPU performance mode and shoulder-trigger
84+ mappings on Legion Phone hardware. -->
85+ <meta-data android : name =" com.lenovo.gameassistant" android : value =" true" />
86+
87+ <!-- ═══════════════════════════════════════════════════════════════════════════════════
88+ Android 13+ AOSP Game Mode API (opt-out of OS interventions)
89+ ─────────────────────────────────────────────────────────────────────────────────
90+ We explicitly disable Battery- and Performance-mode interventions, FPS override,
91+ and downscaling. A rhythm game's input-to-audio latency budget is hard-bound by
92+ the active refresh rate and the audio burst cadence — letting the OS Game Manager
93+ cap our framerate (typical "battery saver" downscale: 60 Hz → 30 Hz) or downscale
94+ our render resolution breaks both timing accuracy AND visual hit-circle alignment.
95+ We already manage thermals, refresh rate, and sustained performance ourselves
96+ (see OsuGameAndroid.LoadComplete). -->
3197 <meta-data android : name =" android.game_mode_config" android : resource =" @xml/gamemode_config" />
3298 </application >
3399</manifest >
0 commit comments