Hirohumi / RustyRcs

A Demo App for rust-rcs-client library.
Apache License 2.0
15 stars 6 forks source link

[Stupid question] Can you link to a video that shows how to build the app? #2

Open BurhanBudak opened 4 months ago

BurhanBudak commented 4 months ago

Hi Im a novice JS dev but how do I build the app to test RCS UP?

Hirohumi commented 3 months ago

Well, it would require you to

  1. Build the rust-rcs-client project
  2. Copy your build artifacts to the RustyRcs project.
  3. Getting your Android phone rooted
  4. Setting up your SIM card information

I would gladly provide how-to for any problem you encountered doing those thing above. But i'm afraid I cannot provide you a video tutorial since I really don't know how to make one.

BurhanBudak commented 3 months ago

Well, it would require you to

  1. Build the rust-rcs-client project
  2. Copy your build artifacts to the RustyRcs project.
  3. Getting your Android phone rooted
  4. Setting up your SIM card information

I would gladly provide how-to for any problem you encountered doing those thing above. But i'm afraid I cannot provide you a video tutorial since I really don't know how to make one.

Hi and thx for the answer, it comes down to this because of Google war on root. I was able to enable rcs bybtranafering a signed APK from another phone with Play Integrity. Your solution would serve root well if it was a Magisk module or a app on F-Droid.

But again off topic, is your solution like this one:

https://github.com/zwyuan/rcs-fi-client

Also what code editor do I need? There is android studio in my PC.

BurhanBudak commented 3 weeks ago

name: Android CI

on: push: branches: [ main ] pull_request: branches: [ main ]

jobs: build: runs-on: ubuntu-latest

strategy:
  matrix:
    node-version: [20]

steps:
- name: Checkout code
  uses: actions/checkout@v4

- name: Set up JDK 17
  uses: actions/setup-java@v4
  with:
    distribution: 'zulu'
    java-version: '17'

- name: Set up Android SDK
  run: |
    sudo apt-get update
    sudo apt-get install -y wget unzip
    wget https://dl.google.com/android/repository/commandlinetools-linux-8512546_latest.zip
    mkdir -p $HOME/sdk/cmdline-tools
    unzip -q commandlinetools-linux-8512546_latest.zip -d $HOME/sdk/cmdline-tools
    yes | $HOME/sdk/cmdline-tools/cmdline-tools/bin/sdkmanager --sdk_root=$HOME/sdk "platform-tools" "platforms;android-30" "build-tools;30.0.3" "ndk;21.3.6528147"
    echo "export ANDROID_SDK_ROOT=$HOME/sdk" >> $GITHUB_ENV
    echo "export PATH=$PATH:$HOME/sdk/platform-tools" >> $GITHUB_ENV

- name: Install Rust
  uses: dtolnay/rust-toolchain@stable
  with:
    toolchain: stable
    profile: minimal

- name: Build Rust components
  run: |
    cd rust-rcs-core
    cargo build --release
    cd ../rust-rcs-client
    cargo build --release
    mkdir -p ../app/src/main/cpp/libs/arm64-v8a/rust_rcs/lib/
    cp target/release/librust_rcs_client.so ../app/src/main/cpp/libs/arm64-v8a/rust_rcs/lib/

- name: Set up Node.js
  uses: actions/setup-node@v3
  with:
    node-version: ${{ matrix.node-version }}

- name: Build with Gradle
  run: |
    chmod +x ./gradlew
    ./gradlew assembleDebug

- name: Upload APK
  uses: actions/upload-artifact@v3
  with:
    name: apk
    path: app/build/outputs/apk/debug/app-debug.apk
BurhanBudak commented 1 week ago

@Hirohumi any comments on Github Actions?