添加 Android 5 特别版与墨·状态栏特别版的 release 构建

This commit is contained in:
lyswhut 2023-12-29 14:58:04 +08:00
parent abd136fa60
commit 2996d6bdf2
7 changed files with 230 additions and 43 deletions

View File

@ -13,7 +13,7 @@ runs:
uses: actions/setup-java@v4
with:
distribution: 'microsoft'
java-version: '17'
java-version: ${{ env.JAVA_VERSION }}
cache: gradle
- name: Cache node modules

View File

@ -11,16 +11,15 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out git repository
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Setup Env
uses: ./.github/actions/setup
env:
JAVA_VERSION: '17'
- name: Build Packages
run: |
cd android
echo ${{ secrets.KEYSTORE_STORE_FILE_BASE64 }} | base64 --decode > app/${{ secrets.KEYSTORE_STORE_FILE }}
./gradlew assembleRelease -PMYAPP_UPLOAD_STORE_FILE='${{ secrets.KEYSTORE_STORE_FILE }}' -PMYAPP_UPLOAD_KEY_ALIAS='${{ secrets.KEYSTORE_KEY_ALIAS }}' -PMYAPP_UPLOAD_STORE_PASSWORD='${{ secrets.KEYSTORE_PASSWORD }}' -PMYAPP_UPLOAD_KEY_PASSWORD='${{ secrets.KEYSTORE_KEY_PASSWORD }}'
uses: ./.github/actions/build-packages
# Push tag to GitHub if package.json version's tag is not tagged
- name: Get package version
@ -35,3 +34,72 @@ jobs:
uses: ./.github/actions/upload-artifact
env:
PACKAGE_VERSION: ${{ env.PACKAGE_VERSION }}
Android_SL:
name: Android_SL
runs-on: ubuntu-latest
steps:
- name: Check out git repository
uses: actions/checkout@v4
with:
ref: statusbar_lyric
- name: Setup Env
uses: ./.github/actions/setup
env:
JAVA_VERSION: '17'
- name: Build Packages
uses: ./.github/actions/build-packages
# Push tag to GitHub if package.json version's tag is not tagged
- name: Get package version
run: |
node -p -e '`PACKAGE_VERSION=${require("./package.json").version}`' >> $GITHUB_ENV
echo "COMMIT_SHA=$(git show -s --format=%H)" >> $GITHUB_ENV
- name: Generate file MD5
run: |
echo "current commit sha: ${{ env.COMMIT_SHA }}"
cd android/app/build/outputs/apk/release
md5sum *.apk
- name: Upload Artifact
uses: ./.github/actions/upload-artifact
env:
PACKAGE_VERSION: ${{ env.PACKAGE_VERSION }}
Android_5:
name: Android_5
runs-on: ubuntu-latest
steps:
- name: Check out git repository
uses: actions/checkout@v4
with:
ref: android_5
- name: Setup Env
uses: ./.github/actions/setup
env:
JAVA_VERSION: '11'
- name: Build Packages
uses: ./.github/actions/build-packages
# Push tag to GitHub if package.json version's tag is not tagged
- name: Get package version
run: |
node -p -e '`PACKAGE_VERSION=${require("./package.json").version}`' >> $GITHUB_ENV
echo "COMMIT_SHA=$(git show -s --format=%H)" >> $GITHUB_ENV
- name: Generate file MD5
run: |
echo "current commit sha: ${{ env.COMMIT_SHA }}"
cd android/app/build/outputs/apk/release
md5sum *.apk
- name: Upload Artifact
uses: ./.github/actions/upload-artifact
env:
PACKAGE_VERSION: ${{ env.PACKAGE_VERSION }}

View File

@ -11,10 +11,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out git repository
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Setup Env
uses: ./.github/actions/setup
env:
JAVA_VERSION: '17'
- name: Build Packages
uses: ./.github/actions/build-packages
@ -34,10 +36,123 @@ jobs:
- name: Generate file MD5
run: |
echo -e '\n### File MD5\n```' >> ./publish/changeLog.md
cd android/app/build/outputs/apk/release
md5sum *.apk >> ../../../../../../publish/changeLog.md
echo -e '```\n' >> ../../../../../../publish/changeLog.md
md5sum *.apk
- name: Upload Artifact
uses: ./.github/actions/upload-artifact
env:
PACKAGE_VERSION: ${{ env.PACKAGE_VERSION }}
Android_SL:
name: Android_SL
runs-on: ubuntu-latest
steps:
- name: Check out git repository
uses: actions/checkout@v4
with:
ref: statusbar_lyric
- name: Setup Env
uses: ./.github/actions/setup
env:
JAVA_VERSION: '17'
- name: Build Packages
uses: ./.github/actions/build-packages
# Push tag to GitHub if package.json version's tag is not tagged
- name: Get package version
run: |
node -p -e '`PACKAGE_VERSION=${require("./package.json").version}`' >> $GITHUB_ENV
echo "COMMIT_SHA=$(git show -s --format=%H)" >> $GITHUB_ENV
- name: Create git tag
uses: pkgdeps/git-tag-action@v2
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
github_repo: ${{ github.repository }}
version: ${{ env.PACKAGE_VERSION }}
git_commit_sha: ${{ env.COMMIT_SHA }}
git_tag_prefix: "v"
- name: Generate file MD5
run: |
echo "current commit sha: ${{ env.COMMIT_SHA }}"
cd android/app/build/outputs/apk/release
md5sum *.apk
- name: Upload Artifact
uses: ./.github/actions/upload-artifact
env:
PACKAGE_VERSION: ${{ env.PACKAGE_VERSION }}
Android_5:
name: Android_5
runs-on: ubuntu-latest
steps:
- name: Check out git repository
uses: actions/checkout@v4
with:
ref: android_5
- name: Setup Env
uses: ./.github/actions/setup
env:
JAVA_VERSION: '11'
- name: Build Packages
uses: ./.github/actions/build-packages
# Push tag to GitHub if package.json version's tag is not tagged
- name: Get package version
run: |
node -p -e '`PACKAGE_VERSION=${require("./package.json").version}`' >> $GITHUB_ENV
echo "COMMIT_SHA=$(git show -s --format=%H)" >> $GITHUB_ENV
- name: Create git tag
uses: pkgdeps/git-tag-action@v2
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
github_repo: ${{ github.repository }}
version: ${{ env.PACKAGE_VERSION }}
git_commit_sha: ${{ env.COMMIT_SHA }}
git_tag_prefix: "v"
- name: Generate file MD5
run: |
echo "current commit sha: ${{ env.COMMIT_SHA }}"
cd android/app/build/outputs/apk/release
md5sum *.apk
- name: Upload Artifact
uses: ./.github/actions/upload-artifact
env:
PACKAGE_VERSION: ${{ env.PACKAGE_VERSION }}
Release:
name: Release
runs-on: ubuntu-latest
needs: [Android, Android_SL, Android_5]
steps:
- name: Check out git repository
uses: actions/checkout@v4
- name: Download Artifacts
uses: actions/download-artifact@v4
with:
path: ./artifacts
merge-multiple: true
- name: Generate file MD5
run: |
echo -e '\n### File MD5\n```' >> ./publish/changeLog.md
cd artifacts
md5sum *.apk >> ../publish/changeLog.md
echo -e '```\n' >> ../publish/changeLog.md
- name: Get package version
run: node -p -e '`PACKAGE_VERSION=${require("./package.json").version}`' >> $GITHUB_ENV
- name: Release
uses: softprops/action-gh-release@v1
@ -52,10 +167,15 @@ jobs:
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-x86_64.apk
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-x86.apk
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-universal.apk
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-android_5-arm64-v8a.apk
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-android_5-armeabi-v7a.apk
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-android_5-x86_64.apk
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-android_5-x86.apk
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-android_5-universal.apk
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-sl-arm64-v8a.apk
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-sl-armeabi-v7a.apk
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-sl-x86_64.apk
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-sl-x86.apk
android/app/build/outputs/apk/release/lx-music-mobile-v${{ env.PACKAGE_VERSION }}-sl-universal.apk
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload Artifact
uses: ./.github/actions/upload-artifact
env:
PACKAGE_VERSION: ${{ env.PACKAGE_VERSION }}

View File

@ -1,10 +1,7 @@
module.exports = {
upgrade: true,
reject: [
// 'metro-react-native-babel-preset',
'@types/react-native',
'metro-react-native-babel-preset',
'@react-native/metro-config',
'react',
],
@ -12,7 +9,6 @@ module.exports = {
// filter: [
// '@types/react-native',
// 'react',
// 'metro-react-native-babel-preset',
// '@react-native/metro-config',
// ],
}

40
package-lock.json generated
View File

@ -12,7 +12,7 @@
"dependencies": {
"@craftzdog/react-native-buffer": "^6.0.5",
"@react-native-async-storage/async-storage": "^1.21.0",
"@react-native-clipboard/clipboard": "^1.13.1",
"@react-native-clipboard/clipboard": "^1.13.2",
"@react-native-community/slider": "^4.5.0",
"iconv-lite": "^0.6.3",
"lrc-file-parser": "^2.4.1",
@ -25,7 +25,7 @@
"react-native-fast-image": "^8.6.3",
"react-native-file-system": "github:lyswhut/react-native-file-system#8124117c164d8f4d5298f9b695df570c04e7197a",
"react-native-fs": "^2.20.0",
"react-native-local-media-metadata": "github:lyswhut/react-native-local-media-metadata#ca6bd48218d1ff69e8590d70eb58b5bf408a1892",
"react-native-local-media-metadata": "github:lyswhut/react-native-local-media-metadata#c8377d82c04aecf5ee79d446276ab9d0c1f167be",
"react-native-navigation": "^7.37.2",
"react-native-pager-view": "^6.2.3",
"react-native-quick-base64": "^2.0.8",
@ -43,7 +43,7 @@
"@react-native/metro-config": "^0.73.2",
"@react-native/typescript-config": "^0.74.0",
"@tsconfig/react-native": "^3.0.2",
"@types/react": "^18.2.45",
"@types/react": "^18.2.46",
"@types/react-native": "^0.72.8",
"@types/react-native-background-timer": "^2.0.2",
"@types/react-native-vector-icons": "^6.4.18",
@ -2553,9 +2553,9 @@
}
},
"node_modules/@react-native-clipboard/clipboard": {
"version": "1.13.1",
"resolved": "https://registry.npmjs.org/@react-native-clipboard/clipboard/-/clipboard-1.13.1.tgz",
"integrity": "sha512-sXWYgjPOK9lDLJQ2AebYY4t19UKh0JLNzX/KTnNulS9XL7Hd4mFZPwPfL4ysF6/SiGJaP6QlEFQbOZA+x4SIPg==",
"version": "1.13.2",
"resolved": "https://registry.npmjs.org/@react-native-clipboard/clipboard/-/clipboard-1.13.2.tgz",
"integrity": "sha512-uVM55oEGc6a6ZmSATDeTcMm55A/C1km5X47g0xaoF0Zagv7N/8RGvLceA5L/izPwflIy78t7XQeJUcnGSib0nA==",
"peerDependencies": {
"react": ">=16.0",
"react-native": ">=0.57.0"
@ -3338,9 +3338,9 @@
"license": "MIT"
},
"node_modules/@types/react": {
"version": "18.2.45",
"resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.45.tgz",
"integrity": "sha512-TtAxCNrlrBp8GoeEp1npd5g+d/OejJHFxS3OWmrPBMFaVQMSN0OFySozJio5BHxTuTeug00AVXVAjfDSfk+lUg==",
"version": "18.2.46",
"resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.46.tgz",
"integrity": "sha512-nNCvVBcZlvX4NU1nRRNV/mFl1nNRuTuslAJglQsq+8ldXe5Xv0Wd2f7WTE3jOxhLH2BFfiZGC6GCp+kHQbgG+w==",
"dev": true,
"dependencies": {
"@types/prop-types": "*",
@ -9014,8 +9014,8 @@
},
"node_modules/react-native-local-media-metadata": {
"version": "0.1.0",
"resolved": "git+ssh://git@github.com/lyswhut/react-native-local-media-metadata.git#ca6bd48218d1ff69e8590d70eb58b5bf408a1892",
"integrity": "sha512-TFEASnEhuD0kfamVtetLqx0DgdPletV52Ydk135mng/KVVjk/XzYjJatc7gBwP69KWeac0cnIER31UpCwxwFhQ==",
"resolved": "git+ssh://git@github.com/lyswhut/react-native-local-media-metadata.git#c8377d82c04aecf5ee79d446276ab9d0c1f167be",
"integrity": "sha512-F/S2CWZSvSkhvXNs12igKYULvZgxDN4BODFfcvPHjmatUvYG3+WEGQepRtm6uhQVdkwhmRxeFEv1FUj7WKk5Ag==",
"license": "MIT",
"workspaces": [
"example"
@ -12422,9 +12422,9 @@
}
},
"@react-native-clipboard/clipboard": {
"version": "1.13.1",
"resolved": "https://registry.npmjs.org/@react-native-clipboard/clipboard/-/clipboard-1.13.1.tgz",
"integrity": "sha512-sXWYgjPOK9lDLJQ2AebYY4t19UKh0JLNzX/KTnNulS9XL7Hd4mFZPwPfL4ysF6/SiGJaP6QlEFQbOZA+x4SIPg==",
"version": "1.13.2",
"resolved": "https://registry.npmjs.org/@react-native-clipboard/clipboard/-/clipboard-1.13.2.tgz",
"integrity": "sha512-uVM55oEGc6a6ZmSATDeTcMm55A/C1km5X47g0xaoF0Zagv7N/8RGvLceA5L/izPwflIy78t7XQeJUcnGSib0nA==",
"requires": {}
},
"@react-native-community/cli": {
@ -13075,9 +13075,9 @@
"dev": true
},
"@types/react": {
"version": "18.2.45",
"resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.45.tgz",
"integrity": "sha512-TtAxCNrlrBp8GoeEp1npd5g+d/OejJHFxS3OWmrPBMFaVQMSN0OFySozJio5BHxTuTeug00AVXVAjfDSfk+lUg==",
"version": "18.2.46",
"resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.46.tgz",
"integrity": "sha512-nNCvVBcZlvX4NU1nRRNV/mFl1nNRuTuslAJglQsq+8ldXe5Xv0Wd2f7WTE3jOxhLH2BFfiZGC6GCp+kHQbgG+w==",
"dev": true,
"requires": {
"@types/prop-types": "*",
@ -17217,9 +17217,9 @@
}
},
"react-native-local-media-metadata": {
"version": "git+ssh://git@github.com/lyswhut/react-native-local-media-metadata.git#ca6bd48218d1ff69e8590d70eb58b5bf408a1892",
"integrity": "sha512-TFEASnEhuD0kfamVtetLqx0DgdPletV52Ydk135mng/KVVjk/XzYjJatc7gBwP69KWeac0cnIER31UpCwxwFhQ==",
"from": "react-native-local-media-metadata@github:lyswhut/react-native-local-media-metadata#ca6bd48218d1ff69e8590d70eb58b5bf408a1892",
"version": "git+ssh://git@github.com/lyswhut/react-native-local-media-metadata.git#c8377d82c04aecf5ee79d446276ab9d0c1f167be",
"integrity": "sha512-F/S2CWZSvSkhvXNs12igKYULvZgxDN4BODFfcvPHjmatUvYG3+WEGQepRtm6uhQVdkwhmRxeFEv1FUj7WKk5Ag==",
"from": "react-native-local-media-metadata@github:lyswhut/react-native-local-media-metadata#c8377d82c04aecf5ee79d446276ab9d0c1f167be",
"requires": {}
},
"react-native-navigation": {

View File

@ -46,7 +46,7 @@
"dependencies": {
"@craftzdog/react-native-buffer": "^6.0.5",
"@react-native-async-storage/async-storage": "^1.21.0",
"@react-native-clipboard/clipboard": "^1.13.1",
"@react-native-clipboard/clipboard": "^1.13.2",
"@react-native-community/slider": "^4.5.0",
"iconv-lite": "^0.6.3",
"lrc-file-parser": "^2.4.1",
@ -59,7 +59,7 @@
"react-native-fast-image": "^8.6.3",
"react-native-file-system": "github:lyswhut/react-native-file-system#8124117c164d8f4d5298f9b695df570c04e7197a",
"react-native-fs": "^2.20.0",
"react-native-local-media-metadata": "github:lyswhut/react-native-local-media-metadata#ca6bd48218d1ff69e8590d70eb58b5bf408a1892",
"react-native-local-media-metadata": "github:lyswhut/react-native-local-media-metadata#c8377d82c04aecf5ee79d446276ab9d0c1f167be",
"react-native-navigation": "^7.37.2",
"react-native-pager-view": "^6.2.3",
"react-native-quick-base64": "^2.0.8",
@ -77,7 +77,7 @@
"@react-native/metro-config": "^0.73.2",
"@react-native/typescript-config": "^0.74.0",
"@tsconfig/react-native": "^3.0.2",
"@types/react": "^18.2.45",
"@types/react": "^18.2.46",
"@types/react-native": "^0.72.8",
"@types/react-native-background-timer": "^2.0.2",
"@types/react-native-vector-icons": "^6.4.18",

View File

@ -1,3 +1,5 @@
据测试 v1.2.0 开始在已无法在 Android 5.1 上运行,所以我们专门为 Android 5.1 构建了特别版,同时墨·状态栏版也将包含在 release 中。
### 新增
- 新增自定义源实验性功能调用方式与PC端一致但需要注意的是移动端自定义源的环境与PC端不同某些环境API不可用详情看自定义说明文档
@ -7,7 +9,8 @@
- 新增动态背景启用后将使用当前播放歌曲封面做APP背景默认关闭可到设置-主题设置启用
- 新增APP全局字体阴影默认关闭可到设置-主题设置启用
- 新增启用竖屏首页横向滚动设置,默认开启(原来的行为),如果你不想要竖屏的首页左右滑动则可以关闭此设置(#397
- 新增“使用系统文件选择器”设置,默认启用,启用该选项后,导入备份文件、自定义源等操作将不需要申请存储权限,但可能在某些系统上不可用。
- 新增“使用系统文件选择器”设置,默认启用,启用该选项后,导入备份文件、自定义源等操作将不需要申请存储权限,但可能在某些系统上不可用
- 添加 Android 5 特别版(版本号包含`android_5`)与墨·状态栏特别版(版本号包含`sl`)的 release 构建
### 优化