Skip to content
Open
Show file tree
Hide file tree
Changes from 216 commits
Commits
Show all changes
328 commits
Select commit Hold shift + click to select a range
9ae646c
Update sync-fork.yml
WinterWolfVN Feb 28, 2026
b63d8de
Update sync-fork.yml
WinterWolfVN Feb 28, 2026
4f60933
Update sync-fork.yml
WinterWolfVN Feb 28, 2026
95fe8d2
Merge remote-tracking branch 'upstream/main'
github-actions[bot] Feb 28, 2026
2d10ee8
Update sync-fork.yml
WinterWolfVN Feb 28, 2026
68dbbb1
Update build-apk.yml
WinterWolfVN Feb 28, 2026
3ef4145
Update build-apk.yml
WinterWolfVN Feb 28, 2026
bb067df
Update SettingsRepositoryImpl.kt
WinterWolfVN Feb 28, 2026
ccb2c99
Update build-apk.yml
WinterWolfVN Feb 28, 2026
c87f1b1
Update build.gradle
WinterWolfVN Feb 28, 2026
499cf7e
Update RaLaunchApp.kt
WinterWolfVN Feb 28, 2026
3196eb2
Update GameItem.kt
WinterWolfVN Feb 28, 2026
49fd1d6
Update GameLauncher.kt
WinterWolfVN Feb 28, 2026
60dd195
Update RendererRegistry.kt
WinterWolfVN Feb 28, 2026
9d2f486
Update RendererRegistry.kt
WinterWolfVN Feb 28, 2026
3c8f7a7
Update CommonControlLayoutStorage.kt
WinterWolfVN Feb 28, 2026
531c339
Update build-apk.yml
WinterWolfVN Feb 28, 2026
759d898
Update build-apk.yml
WinterWolfVN Feb 28, 2026
0ee9c01
Update CommonGameListStorage.kt
WinterWolfVN Feb 28, 2026
a1db079
Update RendererRegistry.kt
WinterWolfVN Feb 28, 2026
be21258
Update PatchManager.kt
WinterWolfVN Mar 1, 2026
7fe985c
Update FileUtils.kt
WinterWolfVN Mar 1, 2026
a988781
Update PatchManifest.kt
WinterWolfVN Mar 1, 2026
26e831c
Update TemporaryFileAcquirer.kt
WinterWolfVN Mar 1, 2026
7466a2a
Update BasicSevenZipExtractor.kt
WinterWolfVN Mar 1, 2026
a61298f
Update ExtractorCollection.kt
WinterWolfVN Mar 1, 2026
b524c19
Update Patch.kt
WinterWolfVN Mar 1, 2026
3dd8177
Update GameDeletionManager.kt
WinterWolfVN Mar 1, 2026
2835ed8
Update ProcessLauncherService.kt
WinterWolfVN Mar 1, 2026
bac0afc
Update RaLaunchDocumentsProvider.kt
WinterWolfVN Mar 1, 2026
a8de4b7
Update GameExtractorUtils.kt
WinterWolfVN Mar 1, 2026
b0aca04
Update GogShFileExtractor.kt
WinterWolfVN Mar 1, 2026
accd6ef
Update AssemblyPatcher.kt
WinterWolfVN Mar 1, 2026
5186a79
Update GamePresenter.kt
WinterWolfVN Mar 1, 2026
3e96314
Update PatchManagementDialogCompose.kt
WinterWolfVN Mar 1, 2026
f40358b
Update PatchManagementDialogCompose.kt
WinterWolfVN Mar 1, 2026
b8c97ec
Update GamePresenter.kt
WinterWolfVN Mar 1, 2026
af93022
Update PatchManagerConfig.kt
WinterWolfVN Mar 1, 2026
e4d3076
Update RaLaunchApp.kt
WinterWolfVN Mar 1, 2026
7df0b4d
Create HazeUtils.android.kt
WinterWolfVN Mar 1, 2026
5197dcd
Create HazeUtils.kt
WinterWolfVN Mar 1, 2026
b5e0444
Update PatchManager.kt
WinterWolfVN Mar 2, 2026
00f78e9
Update PatchManagerConfig.kt
WinterWolfVN Mar 2, 2026
14926cf
Update shared/build.gradle.kts
WinterWolfVN Mar 2, 2026
c0d67db
Update PatchManager.kt
WinterWolfVN Mar 2, 2026
4780547
Update PatchManagerConfig.kt
WinterWolfVN Mar 2, 2026
a42355a
Update Patch.kt
WinterWolfVN Mar 2, 2026
f3a567e
Update build.gradle.kts
WinterWolfVN Mar 2, 2026
e477895
Update Patch.kt
WinterWolfVN Mar 3, 2026
491ffb2
Update build.gradle
WinterWolfVN Mar 3, 2026
7d4b503
Update RaLaunchApp.kt
WinterWolfVN Mar 3, 2026
a34d6b0
Update Patch.kt
WinterWolfVN Mar 3, 2026
4a4e402
Update RaLaunchApp.kt
WinterWolfVN Mar 3, 2026
d0a903f
Update PatchExtractor.kt
WinterWolfVN Mar 3, 2026
5256db4
Update Patch.kt
WinterWolfVN Mar 3, 2026
58c4766
Update build.gradle
WinterWolfVN Mar 4, 2026
43fcd55
Update build.gradle
WinterWolfVN Mar 5, 2026
b6f7a07
Update ArchiveExtractor.kt
WinterWolfVN Mar 5, 2026
03c9107
Update ArchiveExtractor.kt
WinterWolfVN Mar 5, 2026
8287190
Update build.gradle
WinterWolfVN Mar 5, 2026
1b5cfb1
Update build.gradle
WinterWolfVN Mar 5, 2026
2c7d738
Update RuntimeLibraryLoader.kt
WinterWolfVN Mar 6, 2026
c3923f6
Update BasicSevenZipExtractor.kt
WinterWolfVN Mar 6, 2026
ffb1a74
Update BasicSevenZipExtractor.kt
WinterWolfVN Mar 6, 2026
9b729d4
Update DotNetNativeLibraryLoader.kt
WinterWolfVN Mar 7, 2026
316bcaa
Update build.gradle
WinterWolfVN Mar 7, 2026
4927571
Update build-apk.yml
WinterWolfVN Mar 7, 2026
68e5f14
Update GameActivity.kt
WinterWolfVN Mar 7, 2026
5a21c92
Add files via upload
WinterWolfVN Mar 7, 2026
e1cc72e
Add files via upload
WinterWolfVN Mar 7, 2026
3aa74b6
Add files via upload
WinterWolfVN Mar 7, 2026
173e75f
Add files via upload
WinterWolfVN Mar 7, 2026
2a57d14
Add files via upload
WinterWolfVN Mar 7, 2026
57cf8f2
Update AndroidManifest.xml
WinterWolfVN Mar 7, 2026
036b81a
Update AndroidManifest.xml
WinterWolfVN Mar 7, 2026
4b436d2
Update GameActivity.kt
WinterWolfVN Mar 7, 2026
a332100
Update GameActivity.kt
WinterWolfVN Mar 7, 2026
1638054
Create SDLOptimizer.kt
WinterWolfVN Mar 7, 2026
8134375
Update GameActivity.kt
WinterWolfVN Mar 7, 2026
390372a
Update GameActivity.kt
WinterWolfVN Mar 7, 2026
5ae067f
Update GameActivity.kt
WinterWolfVN Mar 8, 2026
e71bcef
Update SDLOptimizer.kt
WinterWolfVN Mar 8, 2026
cd81410
Update SDLOptimizer.kt
WinterWolfVN Mar 8, 2026
90bfd96
Delete app/src/main/res/mipmap-hdpi/ic_launcher_legacy.png
WinterWolfVN Mar 8, 2026
8c0f977
Add files via upload
WinterWolfVN Mar 8, 2026
1f1f5e4
Delete app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png
WinterWolfVN Mar 8, 2026
35722f5
Add files via upload
WinterWolfVN Mar 8, 2026
2e3d17b
Delete app/src/main/res/mipmap-mdpi/ic_launcher_legacy.png
WinterWolfVN Mar 8, 2026
465a839
Add files via upload
WinterWolfVN Mar 8, 2026
b4031d0
Delete app/src/main/res/mipmap-xhdpi/ic_launcher_legacy.png
WinterWolfVN Mar 8, 2026
4fd4c0b
Add files via upload
WinterWolfVN Mar 8, 2026
feb52d7
Delete app/src/main/res/mipmap-xxhdpi/ic_launcher_legacy.png
WinterWolfVN Mar 8, 2026
57dcf96
Add files via upload
WinterWolfVN Mar 8, 2026
bbffbcf
Delete app/src/main/res/mipmap-xxxhdpi/ic_launcher_legacy.png
WinterWolfVN Mar 8, 2026
ba6b0d1
Add files via upload
WinterWolfVN Mar 8, 2026
5ed771d
Update AndroidManifest.xml
WinterWolfVN Mar 8, 2026
9ab7d8e
Update GameActivity.kt
WinterWolfVN Mar 8, 2026
c43b13b
Create GameBoost.kt
WinterWolfVN Mar 8, 2026
f2167b8
Update GameActivity.kt
WinterWolfVN Mar 8, 2026
b5176b3
Update GameActivity.kt
WinterWolfVN Mar 8, 2026
a0bb5fe
Create RendererFramework.kt
WinterWolfVN Mar 8, 2026
4e623ae
Create TurboPatchLoader.kt
WinterWolfVN Mar 8, 2026
fd47625
Update GameActivity.kt
WinterWolfVN Mar 8, 2026
bcc23e0
Delete app/src/main/java/com/app/ralaunch/core/platform/runtime/Rende…
WinterWolfVN Mar 8, 2026
408d1a7
Delete app/src/main/java/com/app/ralaunch/core/platform/runtime/GameB…
WinterWolfVN Mar 8, 2026
0fab96c
Update GameActivity.kt
WinterWolfVN Mar 8, 2026
97d1c41
Update GameActivity.kt
WinterWolfVN Mar 8, 2026
6ffbfbc
Update SDLOptimizer.kt
WinterWolfVN Mar 8, 2026
4052beb
Update SDLOptimizer.kt
WinterWolfVN Mar 8, 2026
6eeb755
Update GameActivity.kt
WinterWolfVN Mar 8, 2026
b84cac6
Create DeviceOptimizationEngine.kt
WinterWolfVN Mar 8, 2026
e1b1377
Delete shared/src/commonMain/kotlin/com/app/ralaunch/shared/core/util…
WinterWolfVN Mar 8, 2026
0aedc98
Delete shared/src/androidMain/kotlin/com/app/ralaunch/shared/core/uti…
WinterWolfVN Mar 8, 2026
e4a6192
Update SDLAudioManager.java
WinterWolfVN Mar 8, 2026
c602a4d
Update DeviceOptimizationEngine.kt
WinterWolfVN Mar 8, 2026
dc6e328
Update TurboPatchLoader.kt
WinterWolfVN Mar 9, 2026
053d4ed
Update DeviceOptimizationEngine.kt
WinterWolfVN Mar 9, 2026
bbc775a
Update TurboPatchLoader.kt
WinterWolfVN Mar 9, 2026
4453f6f
Update DeviceOptimizationEngine.kt
WinterWolfVN Mar 9, 2026
85abbc7
Update GameActivity.kt
WinterWolfVN Mar 9, 2026
d49a4ba
Update GameActivity.kt
WinterWolfVN Mar 9, 2026
4c3303e
Update GameActivity.kt
WinterWolfVN Mar 9, 2026
4cb693a
Update SDLOptimizer.kt
WinterWolfVN Mar 9, 2026
8949927
Update GameActivity.kt
WinterWolfVN Mar 9, 2026
3927c8c
Update GameActivity.kt
WinterWolfVN Mar 9, 2026
ed822c9
Update GameActivity.kt
WinterWolfVN Mar 9, 2026
4e09a3c
Update build.gradle
WinterWolfVN Mar 9, 2026
4280a83
Update RaLaunchApp.kt
WinterWolfVN Mar 10, 2026
148eefd
Create CrashSentinel.kt
WinterWolfVN Mar 10, 2026
dc8cd50
Update RaLaunchApp.kt
WinterWolfVN Mar 10, 2026
ce00543
Update README.md
WinterWolfVN Mar 10, 2026
a963e79
Update README_ZH.md
WinterWolfVN Mar 10, 2026
c5307b3
Update CrashSentinel.kt
WinterWolfVN Mar 10, 2026
2945c49
Improve crash handling with detailed VIP report
WinterWolfVN Mar 10, 2026
221d38a
Add Black Box Logger for crash log recording
WinterWolfVN Mar 10, 2026
b3c5730
Delete app/src/main/java/com/app/ralaunch/core/platform/runtime/Crash…
WinterWolfVN Mar 10, 2026
71af713
Update BlackBoxLogger.kt
WinterWolfVN Mar 10, 2026
3d83cf9
Update RaLaunchApp.kt
WinterWolfVN Mar 10, 2026
2f82c47
Refactor crash handling and initialization process
WinterWolfVN Mar 10, 2026
4155585
Update RaLaunchApp.kt
WinterWolfVN Mar 10, 2026
d91e9e3
Update BlackBoxLogger.kt
WinterWolfVN Mar 11, 2026
ac8ec1e
Update DeviceOptimizationEngine.kt
WinterWolfVN Mar 11, 2026
aafd496
Update DeviceOptimizationEngine.kt
WinterWolfVN Mar 11, 2026
d79f587
Refactor DeviceOptimizationEngine for improved functionality
WinterWolfVN Mar 11, 2026
18b865b
Update GameActivity.kt
WinterWolfVN Mar 11, 2026
fa55c6c
Update build.gradle.kts
WinterWolfVN Mar 11, 2026
7acfb09
Update build.gradle
WinterWolfVN Mar 11, 2026
9a9a0ee
Add permission for killing background processes
WinterWolfVN Mar 11, 2026
2981b85
Refactor TurboPatchLoader for clarity and logging
WinterWolfVN Mar 11, 2026
bd519e4
Update ArchiveExtractor.kt
WinterWolfVN Mar 11, 2026
3d2dde8
Update TurboPatchLoader.kt
WinterWolfVN Mar 11, 2026
2f88102
Update BasicSevenZipExtractor.kt
WinterWolfVN Mar 11, 2026
3a9e0ea
Update TurboPatchLoader.kt
WinterWolfVN Mar 11, 2026
022e624
Create codemagic.yaml
WinterWolfVN Mar 11, 2026
32b5abb
Delete app/codemagic.yaml
WinterWolfVN Mar 11, 2026
c7f2aca
Create codemagic.yaml
WinterWolfVN Mar 11, 2026
b708e01
Update codemagic.yaml
WinterWolfVN Mar 11, 2026
53054f7
Delete .gitattributes
WinterWolfVN Mar 11, 2026
be8513f
Update codemagic.yaml
WinterWolfVN Mar 11, 2026
e04f45c
Update codemagic.yaml
WinterWolfVN Mar 11, 2026
f51da7f
Merge remote-tracking branch 'upstream/main'
github-actions[bot] Mar 11, 2026
21f03cd
Update codemagic.yaml
WinterWolfVN Mar 11, 2026
1b5c54f
Update build-apk.yml
WinterWolfVN Mar 12, 2026
af45192
Update CMakeLists.txt
WinterWolfVN Mar 12, 2026
90f03ff
Update CMakeLists.txt
WinterWolfVN Mar 12, 2026
02d98f4
Update build-apk.yml
WinterWolfVN Mar 12, 2026
43abe5f
Update codemagic.yaml
WinterWolfVN Mar 12, 2026
acfb4e6
Update build-apk.yml
WinterWolfVN Mar 12, 2026
70e52d5
Update codemagic.yaml
WinterWolfVN Mar 12, 2026
0d410a0
Update codemagic.yaml
WinterWolfVN Mar 12, 2026
b8b5189
Update codemagic.yaml
WinterWolfVN Mar 12, 2026
fc5e989
Update codemagic.yaml
WinterWolfVN Mar 12, 2026
91c2cd1
Update codemagic.yaml
WinterWolfVN Mar 12, 2026
c5a4d72
Update codemagic.yaml
WinterWolfVN Mar 12, 2026
b8556d9
Update codemagic.yaml
WinterWolfVN Mar 12, 2026
e25e341
Update codemagic.yaml
WinterWolfVN Mar 12, 2026
8160aaa
Update codemagic.yaml
WinterWolfVN Mar 12, 2026
5b4c394
Update codemagic.yaml
WinterWolfVN Mar 12, 2026
9efb40c
Update codemagic.yaml
WinterWolfVN Mar 12, 2026
4a4a043
Update build-apk.yml
WinterWolfVN Mar 13, 2026
834e58b
Update build-apk.yml
WinterWolfVN Mar 13, 2026
5de31f2
Update build-apk.yml
WinterWolfVN Mar 13, 2026
00a50a6
Update build-apk.yml
WinterWolfVN Mar 13, 2026
0147f0d
Update build-apk.yml
WinterWolfVN Mar 13, 2026
91e19d2
Update build-apk.yml
WinterWolfVN Mar 13, 2026
3b17ecc
Update build-apk.yml
WinterWolfVN Mar 13, 2026
dee45f7
Update build-apk.yml
WinterWolfVN Mar 13, 2026
56e760e
Update CMakeLists.txt
WinterWolfVN Mar 13, 2026
09f68f3
Update CMakeLists.txt
WinterWolfVN Mar 13, 2026
fd2b646
Update build-apk.yml
WinterWolfVN Mar 13, 2026
6f42827
Update build-apk.yml
WinterWolfVN Mar 13, 2026
55ca62a
Update build-apk.yml
WinterWolfVN Mar 13, 2026
6587cfe
Update build-apk.yml
WinterWolfVN Mar 13, 2026
c4834df
Update build-apk.yml
WinterWolfVN Mar 14, 2026
ae48200
Update build-apk.yml
WinterWolfVN Mar 14, 2026
2a1452f
Update build-apk.yml
WinterWolfVN Mar 14, 2026
3938ae5
Update GameActivity.kt
WinterWolfVN Mar 14, 2026
c4b8179
Update GameActivity.kt
WinterWolfVN Mar 14, 2026
520cfab
Update build-apk.yml
WinterWolfVN Mar 15, 2026
ecfcb00
Update build-apk.yml
WinterWolfVN Mar 15, 2026
8884ea6
Update build-apk.yml
WinterWolfVN Mar 15, 2026
9a4e0c2
Update build.gradle
WinterWolfVN Mar 15, 2026
25eb43d
Update build-apk.yml
WinterWolfVN Mar 15, 2026
a86ae0b
Update build.gradle
WinterWolfVN Mar 15, 2026
fc25f4c
Update build-apk.yml
WinterWolfVN Mar 15, 2026
187b056
Merge remote-tracking branch 'upstream/main'
github-actions[bot] Mar 15, 2026
764e784
Update CelesteInstallPlugin.kt
WinterWolfVN Mar 17, 2026
8602e8e
Update SDLOptimizer.kt
WinterWolfVN Mar 18, 2026
5b94d0f
Update DeviceOptimizationEngine.kt
WinterWolfVN Mar 18, 2026
63cac8a
Update GameActivity.kt
WinterWolfVN Mar 18, 2026
02261b3
Update GameActivity.kt
WinterWolfVN Mar 18, 2026
51ed115
Update DeviceOptimizationEngine.kt
WinterWolfVN Mar 18, 2026
fec6032
Update DeviceOptimizationEngine.kt
WinterWolfVN Mar 18, 2026
3af3fa2
Update GameActivity.kt
WinterWolfVN Mar 18, 2026
1e04289
Update DeviceOptimizationEngine.kt
WinterWolfVN Mar 18, 2026
269cc23
Update RendererRegistry.kt
WinterWolfVN Mar 19, 2026
273bfe0
Update RendererLoader.kt
WinterWolfVN Mar 19, 2026
57ba38c
Update SDLOptimizer.kt
WinterWolfVN Mar 19, 2026
5a793b4
Update DeviceOptimizationEngine.kt
WinterWolfVN Mar 19, 2026
dd107d4
Update BlackBoxLogger.kt
WinterWolfVN Mar 19, 2026
573bd88
Update GameActivity.kt
WinterWolfVN Mar 19, 2026
b3eab15
Delete app/src/main/java/com/app/ralaunch/core/platform/runtime/Turbo…
WinterWolfVN Mar 19, 2026
81661cf
Update DeviceOptimizationEngine.kt
WinterWolfVN Mar 19, 2026
e518ed3
Update BlackBoxLogger.kt
WinterWolfVN Mar 19, 2026
2b675e4
Update RaLaunchApp.kt
WinterWolfVN Mar 19, 2026
52c6a67
Update ProcessLauncherService.kt
WinterWolfVN Mar 19, 2026
8c7473f
Update GameLauncher.kt
WinterWolfVN Mar 19, 2026
5624231
Update ProcessLauncherService.kt
WinterWolfVN Mar 20, 2026
3977fac
Update GameLauncher.kt
WinterWolfVN Mar 20, 2026
7b34198
Update RendererEnvironmentConfigurator.kt
WinterWolfVN Mar 20, 2026
2f4bc57
Add files via upload
WinterWolfVN Mar 20, 2026
a5fd0bf
Update BlackBoxLogger.kt
WinterWolfVN Mar 20, 2026
0cc6da4
Create GameBoost.kt
WinterWolfVN Mar 21, 2026
c5ce2aa
Update GameActivity.kt
WinterWolfVN Mar 21, 2026
7bd6a59
Update AppLogger.kt
WinterWolfVN Mar 21, 2026
94f099e
Update BlackBoxLogger.kt
WinterWolfVN Mar 21, 2026
e44ae38
Update AppLogger.kt
WinterWolfVN Mar 21, 2026
0d4d556
Update BlackBoxLogger.kt
WinterWolfVN Mar 25, 2026
1c70691
Update GameBoost.kt
WinterWolfVN Mar 26, 2026
2c31dfd
Update ArchiveExtractor.kt
WinterWolfVN Mar 30, 2026
0130d99
Update AndroidManifest.xml
WinterWolfVN Apr 3, 2026
a6dcced
Merge remote-tracking branch 'upstream/main'
github-actions[bot] Apr 10, 2026
e505018
Delete app/src/main/java/com/app/ralaunch/core/platform/runtime/SDLOp…
WinterWolfVN Apr 10, 2026
3b5ec0e
Delete app/src/main/java/com/app/ralaunch/core/platform/runtime/Devic…
WinterWolfVN Apr 10, 2026
75bc436
Update GameBoost.kt
WinterWolfVN Apr 10, 2026
2c09ad2
Update GameActivity.kt
WinterWolfVN Apr 10, 2026
76566a9
Create GameBoost.kt
WinterWolfVN Apr 10, 2026
827142b
Update GameActivity.kt
WinterWolfVN Apr 10, 2026
fefe63f
Delete app/src/main/java/com/app/ralaunch/core/platform/runtime/GameB…
WinterWolfVN Apr 10, 2026
ae289d4
Merge remote-tracking branch 'upstream/main'
github-actions[bot] Apr 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
359 changes: 125 additions & 234 deletions .github/workflows/build-apk.yml

Large diffs are not rendered by default.

59 changes: 59 additions & 0 deletions .github/workflows/sync-fork.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: Sync Fork (Keep My Code)

on:
schedule:
- cron: '0 */6 * * *'
workflow_dispatch:

permissions:
contents: write

jobs:
sync:
name: Sync with Upstream (Keep My Changes)
runs-on: ubuntu-latest

steps:
- name: Checkout repo
uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.PAT_TOKEN }}

- name: Get upstream repo URL
id: upstream
env:
GH_TOKEN: ${{ secrets.PAT_TOKEN }}
run: |
UPSTREAM=$(gh api repos/${{ github.repository }} --jq '.parent.full_name')
if [ -z "$UPSTREAM" ] || [ "$UPSTREAM" = "null" ]; then
echo "This repo is not a fork!"
exit 1
fi
echo "repo=$UPSTREAM" >> $GITHUB_OUTPUT
echo "Upstream found: $UPSTREAM"

- name: Config Git
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"

- name: Merge upstream keep my code on conflict
id: merge
run: |
git remote add upstream https://github.com/${{ steps.upstream.outputs.repo }}.git
git fetch upstream main
BEFORE=$(git rev-parse HEAD)
git merge upstream/main --strategy-option ours --allow-unrelated-histories --no-edit || echo "Nothing to merge"
AFTER=$(git rev-parse HEAD)
if [ "$BEFORE" != "$AFTER" ]; then
echo "changed=true" >> $GITHUB_OUTPUT
echo "Code changed, will push and trigger build"
else
echo "changed=false" >> $GITHUB_OUTPUT
echo "No changes"
fi

- name: Push
if: steps.merge.outputs.changed == 'true'
run: git push origin main
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<br/><br/>

[![Android](https://img.shields.io/badge/Android_9.0+-34A853?style=for-the-badge&logo=android&logoColor=white)](https://www.android.com)
[![Android](https://img.shields.io/badge/Android_7.0+-34A853?style=for-the-badge&logo=android&logoColor=white)](https://www.android.com)
[![.NET](https://img.shields.io/badge/.NET_10.0-512BD4?style=for-the-badge&logo=dotnet&logoColor=white)](https://dotnet.microsoft.com)
[![Kotlin](https://img.shields.io/badge/Kotlin_2.0-7F52FF?style=for-the-badge&logo=kotlin&logoColor=white)](https://kotlinlang.org)
[![Compose](https://img.shields.io/badge/Jetpack_Compose-4285F4?style=for-the-badge&logo=jetpackcompose&logoColor=white)](https://developer.android.com/jetpack/compose)
Expand All @@ -25,6 +25,8 @@
**Rotating Art Launcher** is an Android application that lets you run .NET-based desktop games on mobile devices.<br/>
Supports FNA/XNA framework games and mod loaders like tModLoader, SMAPI, and Everest.

⚠️Warning⚠️: This is a modified version for Android 7.0+

</div>

---
Expand Down Expand Up @@ -115,7 +117,7 @@ Supports FNA/XNA framework games and mod loaders like tModLoader, SMAPI, and Eve

### Requirements

> - 📱 Android 9.0 (API 28) or higher
> - 📱 Android 7.0 (API 24) or higher
> - 🏗️ ARM64-v8a architecture device
> - 💾 At least 2GB free storage

Expand Down
6 changes: 4 additions & 2 deletions README_ZH.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<br/><br/>

[![Android](https://img.shields.io/badge/Android_9.0+-34A853?style=for-the-badge&logo=android&logoColor=white)](https://www.android.com)
[![Android](https://img.shields.io/badge/Android_7.0+-34A853?style=for-the-badge&logo=android&logoColor=white)](https://www.android.com)
[![.NET](https://img.shields.io/badge/.NET_10.0-512BD4?style=for-the-badge&logo=dotnet&logoColor=white)](https://dotnet.microsoft.com)
[![Kotlin](https://img.shields.io/badge/Kotlin_2.0-7F52FF?style=for-the-badge&logo=kotlin&logoColor=white)](https://kotlinlang.org)
[![Compose](https://img.shields.io/badge/Jetpack_Compose-4285F4?style=for-the-badge&logo=jetpackcompose&logoColor=white)](https://developer.android.com/jetpack/compose)
Expand All @@ -25,6 +25,8 @@
**Rotating Art Launcher** 是一款 Android 应用,让你在移动设备上运行基于 .NET 的桌面游戏。<br/>
支持 FNA/XNA 框架游戏、tModLoader、SMAPI、Everest 等模组加载器。

⚠️警告⚠️:这是针对Android 7.0+的修改版本

</div>

---
Expand Down Expand Up @@ -115,7 +117,7 @@

### 系统要求

> - 📱 Android 9.0 (API 28) 或更高
> - 📱 Android 7.0 (API 24) 或更高
> - 🏗️ ARM64-v8a 架构设备
> - 💾 至少 2GB 可用存储

Expand Down
95 changes: 56 additions & 39 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -12,76 +12,91 @@ android {

defaultConfig {
applicationId "com.app.ralaunch"
minSdk 28

// ... Support for Android 7...
minSdk 24
targetSdk 35
versionCode 3
versionName "2.0.1"

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

// 只编译 arm64-v8a 架构
// 使用 splits 配置

// ... Enable multidex to prevent method limit issues on older devices ...
multiDexEnabled true
externalNativeBuild {
cmake {

// ... Ensure C++ native code compiles for API 25 compatibility ...
arguments "-DANDROID_PLATFORM=android-25"
}
}
}
// ===================================================================
// ... Hacky way: Use a hardcoded dummy keystore for CI/CD ...
// ... This ensures the signature is identical every time! ...
// ===================================================================
signingConfigs {
release {
storeFile file("dummy.keystore")
storePassword "123456"
keyAlias "ralaunch"
keyPassword "123456"

enableV1Signing true
enableV2Signing true
enableV3Signing true
}
}
Copy link

Copilot AI Mar 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The release signing config hardcodes a keystore filename plus plaintext passwords in app/build.gradle. This is a security risk and makes local release builds unintentionally sign with a dummy key. Move signing configuration to CI-only (or ~/.gradle/gradle.properties / environment variables) and keep secrets/keystore out of source control.

Copilot uses AI. Check for mistakes.

buildTypes {
debug {
debuggable true
minifyEnabled false
jniDebuggable true // 启用 Native 调试


}
release {
debuggable false
minifyEnabled false // TODO: 修复类重复后启用 R8
minifyEnabled false
shrinkResources false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'

// Release 移除调试符号,减小 native 库体积
// ... Apply the dummy signing config ...
signingConfig signingConfigs.release

externalNativeBuild {
cmake {
arguments "-DCMAKE_BUILD_TYPE=Release"
arguments "-DCMAKE_BUILD_TYPE=Release", "-DANDROID_PLATFORM=android-25"
}
Comment on lines 27 to 59
Copy link

Copilot AI Mar 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

minSdk is 24, but native builds are forced to -DANDROID_PLATFORM=android-25. That can allow accidental use of NDK APIs unavailable on API 24 and defeats the purpose of lowering minSdk. Consider setting the platform to android-24 (or deriving it from minSdk) for both defaultConfig and release build type.

Copilot uses AI. Check for mistakes.
}
}
}

compileOptions {
sourceCompatibility JavaVersion.VERSION_21
targetCompatibility JavaVersion.VERSION_21
// ... Keep desugaring enabled for other modern Java APIs safely ...
coreLibraryDesugaringEnabled true
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}

externalNativeBuild {
cmake {
path file('src/main/cpp/CMakeLists.txt')
version '3.22.1'
}
}

buildFeatures {
viewBinding true
prefab true
compose true
}

// 禁止 AAPT 压缩这些文件类型,确保 AssetManager 能正确读取
androidResources {
noCompress += ['tar.gz', 'tar.xz', 'xz']
}

packagingOptions {
jniLibs {
useLegacyPackaging = true
// Debug 版本保留符号便于调试,Release 版本移除符号减小体积
// keepDebugSymbols += ['**/*.so'] // 仅 debug 时启用
pickFirsts += ['lib/arm64-v8a/libc++_shared.so', 'lib/arm64-v8a/libdotnethost.so']
}
}

// 临时只针对真机arm64-v8a编译
splits {
abi {
enable true
Expand All @@ -91,7 +106,6 @@ android {
}
}

// 使用预编译的 System.Security.Cryptography jar,实现官方托管绑定
sourceSets {
main {
java {
Expand All @@ -101,49 +115,51 @@ android {
}

kotlinOptions {
jvmTarget = '21'
jvmTarget = '17'
}

// 关闭 Lint 检查
lint {
abortOnError false
checkReleaseBuilds false
}
}

// ... DEPENDENCIES BLOCK (Outside and at the bottom) ...
dependencies {
// 本地 JAR/AAR 依赖
// ... Desugaring library ...
coreLibraryDesugaring libs.desugar.jdk.libs

// ... Multidex support ...
implementation 'androidx.multidex:multidex:2.0.1'

// ... Local libraries ...
implementation files('../app/libs/libSystem.Security.Cryptography.Native.Android.jar')
implementation files('../external/libs/fmod.jar')
implementation files('libs/fishnet-release.aar')

// 项目模块
implementation project(':shared')

// 从 ralib 迁移的依赖
// ... 3rd party libraries ...
implementation 'com.github.omicronapps:7-Zip-JBinding-4Android:Release-16.02-2.03'
implementation 'com.google.code.gson:gson:2.13.2'

// AndroidX 核心库
implementation libs.core.ktx
implementation libs.appcompat
implementation libs.activity
implementation libs.constraintlayout
implementation libs.recyclerview

// Material Design
implementation libs.material

// Kotlin 扩展
// ... Coroutines & Serialization ...
implementation libs.kotlinx.coroutines.core
implementation libs.kotlinx.coroutines.android
implementation libs.kotlinx.serialization.json

// Haze (Glassmorphism blur)
// ... UI effects ...
implementation libs.haze
implementation libs.haze.materials

// Compose
// ... Jetpack Compose ...
implementation platform(libs.compose.bom)
implementation libs.compose.ui
implementation libs.compose.ui.graphics
Expand All @@ -157,19 +173,20 @@ dependencies {
implementation 'com.github.jeziellago:compose-markdown:0.5.8'
debugImplementation 'androidx.compose.ui:ui-tooling'

// Koin DI
// ... Koin DI ...
implementation libs.koin.core
implementation libs.koin.android
implementation libs.koin.compose

// 第三方工具库
// ... Misc tools ...
implementation libs.glide
implementation libs.konfetti
implementation libs.commons.compress
implementation libs.xz
implementation 'org.tukaani:xz:1.9' // <--- KEEPT: Our custom ArchiveExtractor needs this to read .xz files!
implementation libs.android.svg

// ... NOTE: libs.commons.compress HAS BEEN COMPLETELY PURGED!

// 测试依赖
// ... Testing ...
testImplementation libs.junit
androidTestImplementation libs.ext.junit
androidTestImplementation libs.espresso.core
Expand Down
Loading