Files
XSnap/.github/workflows/android.yml
rhunk ce9833f2c3 refactor: bridge and mapper (#130)
* feat: fingerprint spoof

* fetch upstream - fix errors

* fix(ci): wrong env

* fix all items being shown and translations

* use filter instead of check

* fix(snap_enums/ContentType): status plus gift

* refactor: download bridge

* fix: check if bridge svc is correctly installed

* refactor bridge
- async handlers
- optimized reply callback calls
- add timeout debug when sending a bridge msg

* fix: check for bridge correctly initialized instead of connected

* fix: android compat + suppress warnings

* fix(feature/manager): set a fixed thread pool

* feat: dex mapper

* build: libs catalog

* fix: infinite loading

* refactor: config ui items

* feat: disable google play services dialogs

* fix(mapper): getClassName

* fix(bridge/force_start): use broadcast receiver instead of activity

* fix: notification filter

* refactor: aidl

* fix(bridge): bindServiceAsUser handler

* refactor: download manager

* fix(download/callback): add outputPath

* fix(mapper): lspatch support

* fix(notifications): blacklist & reply
- config value container translation key

* feat: download from notifications

* fix(notification/reply): use FLAG_ONLY_ALERT_ONCE

* fix: alert dialog builder theme

* hooker method inline

* fix: immersive camera preview

* fix: chat action menu design

* fix(download/processor): fallback toasts

* fix(message_logger): limit thread pool to 10

* feat(download): logging

* fix: screenshot detection in snaps

* feat: hide friend suggestions

* refactor: download content URIs

* feat: preview group chats

* fix(config): ask for save folder

* fix(download_manager): async item preview

* fix(media_downloader): story replies

* fix(notifications): concurrent exception

* build: kotlin dsl

* fix(ci): upload only on main

* fix(build): getVersion task

* fix(build): abi filters

* fix(build): default product flavor

* test(mapper): mapping tests

* fix(mappings): group chat preview

* fix(mapper): dexlib interfaces instead of impl

---------

Co-authored-by: auth <64337177+authorisation@users.noreply.github.com>
2023-07-27 15:32:50 +02:00

80 lines
2.8 KiB
YAML

name: Android CI
on:
push:
branches: [ "main" ]
paths-ignore:
- '**/README.md'
- '.github/**'
pull_request:
branches: [ "main" ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
cache: gradle
- name: Set up node
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Install Dependencies
run: |
npm install --global yarn
cd ./.github/workflows
yarn add node-telegram-bot-api commander
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Clean Gradle Cache
run: ./gradlew clean
- name: Build with Gradle
run: ./gradlew assembleDebug
- name: Generate Version
run: ./gradlew getVersion
- name: Set Environment Variables
id: version-env
run: |
echo "version=$(cat app/build/version.txt)" >> $GITHUB_ENV
echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
- name: Git branch name
id: git-branch-name
uses: EthanSK/git-branch-name-action@v1
- name: Rename APK files
run: |
mv app/build/outputs/apk/armv8/debug/*.apk app/build/outputs/apk/armv8/debug/app-${{ env.version }}-armv8-${{ steps.version-env.outputs.sha_short }}.apk
mv app/build/outputs/apk/armv7/debug/*.apk app/build/outputs/apk/armv7/debug/app-${{ env.version }}-armv7-${{ steps.version-env.outputs.sha_short }}.apk
- name: Upload armv8
uses: actions/upload-artifact@v3.1.2
with:
name: app-armv8-debug
path: app/build/outputs/apk/armv8/debug/*.apk
- name: Upload armv7
uses: actions/upload-artifact@v3.1.2
with:
name: app-armv7-debug
path: app/build/outputs/apk/armv7/debug/*.apk
- name: CI Upload armv8
if: github.ref_name == 'main'
run: node ./.github/workflows/upload.js -t "${{ secrets.TELEGRAM_BOT_TOKEN }}" -f "app/build/outputs/apk/armv8/debug/app-${{ env.version }}-armv8-${{ steps.version-env.outputs.sha_short }}.apk" --caption "A new commit has been pushed to the ${{ env.GIT_BRANCH_NAME }} branch! ${{ steps.version-env.outputs.sha_short }}" --chatid "${{ secrets.TELEGRAM_CHAT_ID }}"
- name: CI Upload armv7
if: github.ref_name == 'main'
run: node ./.github/workflows/upload.js -t "${{ secrets.TELEGRAM_BOT_TOKEN }}" -f "app/build/outputs/apk/armv7/debug/app-${{ env.version }}-armv7-${{ steps.version-env.outputs.sha_short }}.apk" --chatid "${{ secrets.TELEGRAM_CHAT_ID }}"