tvbox build #140
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: tvbox build | |
on: | |
workflow_dispatch: | |
inputs: | |
author: | |
description: 'author' | |
required: true | |
type: choice | |
options: | |
- 'q215613905' | |
- 'takagen99' | |
- 'chengxue2020' | |
- 'okjack' | |
- 'fongmi' | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: set up JDK 23 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: '22' | |
distribution: 'zulu' | |
- name: Clone source code | |
run: | | |
if [ "${{ inputs.author }}" == "q215613905" ]; then | |
git clone --depth 1 https://github.com/q215613905/TVBoxOS.git boxdir | |
ln -s tvbox tvboxpatch | |
elif [ "${{ inputs.author }}" == "takagen99" ]; then | |
git clone --depth 1 https://github.com/takagen99/Box.git boxdir | |
sed -i 's|applicationId .*|applicationId '\''com.github.tvbox.osc.muziling'\''|g' boxdir/app/build.gradle | |
sed -i 's|<string name="app_source">.*|<string name="app_source">http://192.168.200.1:8000/tvbox</string>|g' boxdir/app/src/main/res/values-zh/strings.xml | |
ln -s tvbox-takagen99 tvboxpatch | |
cp -f tvboxpatch/film.png boxdir/app/src/main/res/drawable/app_icon.png | |
#sed -i '246 ijumpActivity(LivePlayActivity.class);' boxdir/app/src/main/java/com/github/tvbox/osc/ui/fragment/UserFragment.java | |
elif [ "${{ inputs.author }}" == "chengxue2020" ]; then | |
git clone --depth 1 https://github.com/chengxue2020/takagen99.git boxdir | |
sed -i 's|applicationId .*|applicationId '\''com.github.tvbox.osc.muziling'\''|g' boxdir/app/build.gradle | |
sed -i 's|<string name="app_source">.*|<string name="app_source">http://192.168.200.1:8000/tvbox</string>|g' boxdir/app/src/main/res/values-zh/strings.xml | |
ln -s tvbox-takagen99 tvboxpatch | |
cp -f tvboxpatch/film.png boxdir/app/src/main/res/drawable/app_icon.png | |
elif [ "${{ inputs.author }}" == "okjack" ]; then | |
git clone --depth 1 -b okjack https://github.com/FongMi/TV.git boxdir | |
sed -i 's/import com.fongmi.android.tv.utils.Notify;/import com.fongmi.android.tv.utils.Notify;import com.fongmi.android.tv.bean.Config;/g' boxdir/app/src/main/java/com/fongmi/android/tv/App.java | |
sed -i 's|});|});Config.vod().url("http://192.168.200.1:8000/tvbox").update();|g' boxdir/app/src/main/java/com/fongmi/android/tv/App.java | |
sed -i 's/initConfig();/initConfig();LiveActivity.start(this);/g' boxdir/app/src/leanback/java/com/fongmi/android/tv/ui/activity/HomeActivity.java | |
else | |
git clone --depth 1 -b release https://github.com/FongMi/TV.git boxdir | |
sed -i 's/import com.fongmi.android.tv.utils.Notify;/import com.fongmi.android.tv.utils.Notify;import com.fongmi.android.tv.bean.Config;/g' boxdir/app/src/main/java/com/fongmi/android/tv/App.java | |
sed -i 's|});|});Config.vod().url("http://192.168.200.1:8000/tvbox").update();|g' boxdir/app/src/main/java/com/fongmi/android/tv/App.java | |
sed -i 's/initConfig();/initConfig();LiveActivity.start(this);/g' boxdir/app/src/leanback/java/com/fongmi/android/tv/ui/activity/HomeActivity.java | |
fi | |
#sed -i 's/putDefault(HawkConfig.HOME_REC.*/putDefault(HawkConfig.HOME_REC, 1);/g' boxdir/app/src/main/java/com/github/tvbox/osc/base/App.java | |
#sed -i 's/urlBean.infoList = infoList;/urlBean.infoList = infoList;video.sourceKey=vod_play_from;/g' boxdir/app/src/main/java/com/github/tvbox/osc/bean/AbsJson.java | |
#sed -i 's/exoVersion = "2.16.0"/exoVersion = "2.18.3"/g' boxdir/build.gradle | |
#sed -i 's/compileSdkVersion .*/compileSdkVersion 33/g' boxdir/app/build.gradle | |
#sed -i 's/compileSdkVersion .*/compileSdkVersion 33/g' boxdir/quickjs/build.gradle | |
#sed -i 's/minSdkVersion .*/minSdkVersion 21/g' boxdir/app/build.gradle | |
#sed -i 's/minSdkVersion .*/minSdkVersion 21/g' boxdir/quickjs/build.gradle | |
#sed -i 's/com.github.getActivity:XXPermissions:13.6/com.github.getActivity:XXPermissions:16.8/g' boxdir/app/build.gradle | |
cd boxdir | |
#sudo -E apt-get -y install dos2unix | |
#dos2unix ../tvboxpatch/*.patch | |
#dos2unix app/src/main/java/com/github/tvbox/osc/ui/activity/HomeActivity.java | |
#find -L ../tvboxpatch -type f -iname '*.patch' -print0|xargs -n1 -0 patch -p 1 --no-backup-if-mismatch -i | |
#sed -i 's/C.CONTENT_TYPE_/C.TYPE_/g' app/src/main/java/xyz/doikki/videoplayer/exo/ExoMediaSourceHelper.java | |
signingConfigs='ICAgIHNpZ25pbmdDb25maWdzIHtcCiAgICAgICAgaWYgKHByb2plY3QuaGFzUHJvcGVydHkoIlJFTEVBU0VfU1RPUkVfRklMRSIpKSB7XAogICAgICAgICAgICBteUNvbmZpZyB7XAogICAgICAgICAgICAgICAgc3RvcmVGaWxlIGZpbGUoUkVMRUFTRV9TVE9SRV9GSUxFKVwKICAgICAgICAgICAgICAgIHN0b3JlUGFzc3dvcmQgUkVMRUFTRV9TVE9SRV9QQVNTV09SRFwKICAgICAgICAgICAgICAgIGtleUFsaWFzIFJFTEVBU0VfS0VZX0FMSUFTXAogICAgICAgICAgICAgICAga2V5UGFzc3dvcmQgUkVMRUFTRV9LRVlfUEFTU1dPUkRcCiAgICAgICAgICAgICAgICB2MVNpZ25pbmdFbmFibGVkIHRydWVcCiAgICAgICAgICAgICAgICB2MlNpZ25pbmdFbmFibGVkIHRydWVcCiAgICAgICAgICAgICAgICBlbmFibGVWM1NpZ25pbmcgPSB0cnVlXAogICAgICAgICAgICAgICAgZW5hYmxlVjRTaWduaW5nID0gdHJ1ZVwKICAgICAgICAgICAgfVwKICAgICAgICB9XAogICAgfVwKXA==' | |
signingConfig='ICAgICAgICAgICAgaWYgKHByb2plY3QuaGFzUHJvcGVydHkoIlJFTEVBU0VfU1RPUkVfRklMRSIpKSB7XAogICAgICAgICAgICAgICAgc2lnbmluZ0NvbmZpZyBzaWduaW5nQ29uZmlncy5teUNvbmZpZ1wKICAgICAgICAgICAgfVwK' | |
signingConfigs="$(echo "$signingConfigs" |base64 -d )" | |
signingConfig="$(echo "$signingConfig" |base64 -d )" | |
sed -i -e "/defaultConfig {/i\\$signingConfigs " -e "/debug {/a\\$signingConfig " -e "/release {/a\\$signingConfig " app/build.gradle | |
cp -f ../android.jks app/android.jks | |
sed -i '$a\RELEASE_STORE_FILE=./android.jks' ./gradle.properties | |
sed -i '$a\RELEASE_KEY_ALIAS=muziling' ./gradle.properties | |
sed -i '$a\RELEASE_STORE_PASSWORD=111111' ./gradle.properties | |
sed -i '$a\RELEASE_KEY_PASSWORD=111111' ./gradle.properties | |
- name: Build with Gradle | |
run: | | |
cd boxdir | |
chmod +x gradlew | |
./gradlew assemblerelease --build-cache --parallel --daemon --stacktrace --warning-mode all | |
# - name: Prepare App | |
# run: | | |
# mkdir -p ${{ github.workspace }}/apk/ | |
# for file in `find ~ -name "*.apk" -print`; do | |
# mv "$file" ${{ github.workspace }}/apk/ | |
# done | |
# - name: Upload App To Artifact | |
# uses: actions/upload-artifact@v3 | |
# with: | |
# name: com.github.tvbox.osc | |
# path: ${{ github.workspace }}/apk/* | |
- name: Upload App To Artifact | |
uses: actions/upload-artifact@v3 | |
with: | |
name: com.github.tvbox.osc | |
path: boxdir/app/build/outputs/apk |