1212
1313 workflow_dispatch :
1414
15+
16+ permissions :
17+ packages : write
18+ contents : write
19+
20+
1521jobs :
1622 build :
1723
2834
2935 - name : Download frida-inject binaries for arm and arm64
3036 run : |
37+ timestamp=$(date +"%Y-%m-%d %H:%M:%S")
38+ echo "current_timestamp=$timestamp" >> $GITHUB_ENV
39+
3140 mkdir -p frida_binaries/armeabi-v7a
3241 mkdir -p frida_binaries/arm64-v8a
3342
4352 ls -la
4453
4554 # Move the binaries to the appropriate directories
46- mv frida-inject-*-android- arm frida_binaries/armeabi-v7a/libinjector.so
47- mv frida-inject-*-android- arm64 frida_binaries/arm64-v8a/libinjector.so
55+ mv frida-inject-arm frida_binaries/armeabi-v7a/libinjector.so
56+ mv frida-inject-arm64 frida_binaries/arm64-v8a/libinjector.so
4857
4958 # Copy the binaries to the jniLibs directories
5059 cp frida_binaries/armeabi-v7a/libinjector.so $GITHUB_WORKSPACE/${{ env.main_project_module }}/src/main/jniLibs/armeabi-v7a/
@@ -57,36 +66,85 @@ jobs:
5766 java-version : ' 17'
5867 cache : ' gradle'
5968
69+ - name : setup cmdline-tools
70+ run : |
71+ mkdir -p /usr/local/lib/android/sdk/cmdline-tools
72+ curl -o commandlinetools.zip https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip
73+ unzip -qq commandlinetools.zip -d /usr/local/lib/android/sdk/cmdline-tools
74+ mv /usr/local/lib/android/sdk/cmdline-tools/cmdline-tools /usr/local/lib/android/sdk/cmdline-tools/latest
75+ rm commandlinetools.zip
76+
77+ - name : Install Android build-tools
78+ run : |
79+ yes | /usr/local/lib/android/sdk/cmdline-tools/latest/bin/sdkmanager --sdk_root=/usr/local/lib/android/sdk "build-tools;30.0.2" --no_https
80+
81+
6082 - name : Change wrapper permissions
6183 run : chmod +x ./gradlew
6284
6385 # Run Tests Build
64- - name : Run gradle tests
65- run : ./gradlew test
86+ # - name: Run gradle tests
87+ # run: ./gradlew test
6688
6789 # Run Build Project
68- - name : Build gradle project
69- run : ./gradlew build
90+ # - name: Build gradle project
91+ # run: ./gradlew build
7092
7193 # Create APK Debug
72- - name : Build apk debug project (APK) - ${{ env.main_project_module }} module
73- run : ./gradlew assembleDebug
94+ # - name: Build apk debug project (APK) - ${{ env.main_project_module }} module
95+ # run: ./gradlew assembleDebug
7496
7597 # Create APK Release
76- - name : Build apk release project ( APK) - ${{ env.main_project_module }} module
98+ - name : Build APK Release
7799 run : ./gradlew assemble
78100
79101 # Upload Artifact Build
80102 # Noted For Output [main_project_module]/build/outputs/apk/debug/
81- - name : Upload APK Debug - ${{ env.repository_name }}
82- uses : actions/upload-artifact@v4
83- with :
84- name : ${{ env.date_today }} - ${{ env.playstore_name }} - ${{ env.repository_name }} - APK(s) debug generated
85- path : ${{ env.main_project_module }}/build/outputs/apk/debug/
103+ # - name: Upload APK Debug - ${{ env.repository_name }}
104+ # uses: actions/upload-artifact@v4
105+ # with:
106+ # name: ${{ env.date_today }} - ${{ env.playstore_name }} - ${{ env.repository_name }} - APK(s) debug generated
107+ # path: ${{ env.main_project_module }}/build/outputs/apk/debug/
86108
87109 # Noted For Output [main_project_module]/build/outputs/apk/release/
88- - name : Upload APK Release - ${{ env.repository_name }}
89- uses : actions/upload-artifact@v4
110+ # - name: Upload APK Release to artifact
111+ # uses: actions/upload-artifact@v4
112+ # with:
113+ # name: ${{ env.date_today }} - ${{ env.playstore_name }} - ${{ env.repository_name }} - APK(s) release generated
114+ # path: ${{ env.main_project_module }}/build/outputs/apk/release/
115+ #
116+
117+ - name : Sign APK with keystore
118+ uses : r0adkll/sign-android-release@v1
119+ id : sign_app
120+ with :
121+ releaseDirectory : ${{ env.main_project_module }}/build/outputs/apk/release
122+ signingKeyBase64 : ${{ secrets.KEY_STORE }}
123+ alias : ${{ secrets.KEY_STORE_ALIAS }}
124+ keyStorePassword : ${{ secrets.KEY_STORE_PASS }}
125+ keyPassword : ${{ secrets.KEY_STORE_PASS }}
126+ env :
127+ BUILD_TOOLS_VERSION : " 30.0.2"
128+
129+ # - name: Upload release APK
130+ # uses: actions/upload-artifact@v2
131+ # with:
132+ # name: app-release.apk
133+ # path: ${{steps.sign_app.outputs.signedReleaseFile}}
134+
135+ - name : Rename APK files
136+ run : |
137+ mv app/build/outputs/apk/release/app-armeabi-v7a-release-unsigned-signed.apk app/build/outputs/apk/release/IL2CPPInjector-armeabi-v7a-signed.apk
138+ mv app/build/outputs/apk/release/app-arm64-v8a-release-unsigned-signed.apk app/build/outputs/apk/release/IL2CPPInjector-arm64-v8a-signed.apk
139+
140+ - name : Upload signed APK(s) to release
141+ uses : svenstaro/upload-release-action@v2
90142 with :
91- name : ${{ env.date_today }} - ${{ env.playstore_name }} - ${{ env.repository_name }} - APK(s) release generated
92- path : ${{ env.main_project_module }}/build/outputs/apk/release/
143+ repo_token : " ${{ secrets.GITHUB_TOKEN }}"
144+ draft : true
145+ prerelease : true
146+ release_name : ${{ env.playstore_name}} - ${{ env.timestamp }}
147+ tag : ${{ github.ref }}
148+ overwrite : true
149+ file_glob : true
150+ file : app/build/outputs/apk/release/IL2CPPInjector-*-signed.apk
0 commit comments