mirror of
https://github.com/gedoor/legado.git
synced 2024-07-06 23:47:49 +08:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
23d883a50b
7
.github/workflows/release.yml
vendored
7
.github/workflows/release.yml
vendored
@ -78,7 +78,9 @@ jobs:
|
||||
files: ${{ github.workspace }}/apk/*.apk
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Push Assets To "release" Branch
|
||||
if: ${{ github.actor == 'gedoor' }}
|
||||
run: |
|
||||
cd $GITHUB_WORKSPACE/apk || exit 1
|
||||
git init
|
||||
@ -87,11 +89,12 @@ jobs:
|
||||
git checkout -b release
|
||||
git add *.apk
|
||||
git commit -m "${{ env.RELEASE_VERSION }}"
|
||||
git remote add origin "https://${{ github.actor }}:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}"
|
||||
git remote add origin "https://${{ github.actor }}:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.actor }}/release"
|
||||
git push -f -u origin release
|
||||
- name: Purge Jsdelivr Cache
|
||||
if: ${{ github.actor == 'gedoor' }}
|
||||
run: |
|
||||
result=$(curl -s https://purge.jsdelivr.net/gh/${{ github.repository }}@release/)
|
||||
result=$(curl -s https://purge.jsdelivr.net/gh/${{ github.actor }}/release@release/)
|
||||
if echo $result |grep -q 'success.*true'; then
|
||||
echo "jsdelivr缓存更新成功"
|
||||
else
|
||||
|
41
.github/workflows/test.yml
vendored
41
.github/workflows/test.yml
vendored
@ -5,7 +5,7 @@ on:
|
||||
branches:
|
||||
- master
|
||||
workflow_dispatch:
|
||||
|
||||
|
||||
jobs:
|
||||
prepare:
|
||||
runs-on: ubuntu-latest
|
||||
@ -15,25 +15,25 @@ jobs:
|
||||
lanzou: ${{ steps.check.outputs.lanzou }}
|
||||
telegram: ${{ steps.check.outputs.telegram }}
|
||||
steps:
|
||||
- id: set-ver
|
||||
run: |
|
||||
echo "::set-output name=version::$(date -d "8 hour" -u +3.%y.%m%d%H)"
|
||||
echo "::set-output name=versionL::$(date -d "8 hour" -u +3.%y.%m%d%H%M)"
|
||||
- id: check
|
||||
run: |
|
||||
if [ ${{ secrets.LANZOU_ID }} ]; then
|
||||
echo "::set-output name=lanzou::yes"
|
||||
fi
|
||||
if [ ${{ secrets.BOT_TOKEN }} ]; then
|
||||
echo "::set-output name=telegram::yes"
|
||||
fi
|
||||
|
||||
- id: set-ver
|
||||
run: |
|
||||
echo "::set-output name=version::$(date -d "8 hour" -u +3.%y.%m%d%H)"
|
||||
echo "::set-output name=versionL::$(date -d "8 hour" -u +3.%y.%m%d%H%M)"
|
||||
- id: check
|
||||
run: |
|
||||
if [ ${{ secrets.LANZOU_ID }} ]; then
|
||||
echo "::set-output name=lanzou::yes"
|
||||
fi
|
||||
if [ ${{ secrets.BOT_TOKEN }} ]; then
|
||||
echo "::set-output name=telegram::yes"
|
||||
fi
|
||||
|
||||
build:
|
||||
needs: prepare
|
||||
strategy:
|
||||
matrix:
|
||||
product: [app, google]
|
||||
type: [release, releaseA]
|
||||
product: [ app, google ]
|
||||
type: [ release, releaseA ]
|
||||
fail-fast: false
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
@ -91,7 +91,7 @@ jobs:
|
||||
path: ${{ github.workspace }}/apk/*.apk
|
||||
|
||||
lanzou:
|
||||
needs: [prepare, build]
|
||||
needs: [ prepare, build ]
|
||||
if: ${{ needs.prepare.outputs.lanzou }}
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
@ -115,8 +115,9 @@ jobs:
|
||||
echo "[$(date -u -d '+8 hour' '+%Y.%m.%d %H:%M:%S')] 分享链接: https://kunfei.lanzoux.com/b0f810h4b"
|
||||
|
||||
test_Branch:
|
||||
needs: [prepare, build]
|
||||
needs: [ prepare, build ]
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ github.actor == 'gedoor' }}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/download-artifact@v2
|
||||
@ -133,11 +134,11 @@ jobs:
|
||||
git checkout -b test
|
||||
git add *.apk
|
||||
git commit -m "${{ needs.prepare.outputs.versionL }}"
|
||||
git remote add origin "https://${{ github.actor }}:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}"
|
||||
git remote add origin "https://${{ github.actor }}:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.actor }}/release"
|
||||
git push -f -u origin test
|
||||
|
||||
telegram:
|
||||
needs: [prepare, build]
|
||||
needs: [ prepare, build ]
|
||||
if: ${{ needs.prepare.outputs.telegram }}
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
|
@ -52,7 +52,7 @@ Legado is a free and open source novel reader for Android.
|
||||
* [Releases](https://github.com/gedoor/legado/releases/latest)
|
||||
* [Google play - $1.99](https://play.google.com/store/apps/details?id=io.legado.play.release)
|
||||
* [Coolapk](https://www.coolapk.com/apk/io.legado.app.release)
|
||||
* [Jsdelivr](https://cdn.jsdelivr.net/gh/gedoor/legado@release/)
|
||||
* [Jsdelivr](https://cdn.jsdelivr.net/gh/gedoor/release@release/)
|
||||
* [\#Beta](https://kunfei.lanzoui.com/b0f810h4b)
|
||||
|
||||
|
||||
|
@ -28,6 +28,10 @@ object CacheManager {
|
||||
}
|
||||
}
|
||||
|
||||
fun putString2File(key: String, value: String, saveTime: Int = 0) {
|
||||
ACache.get(appCtx).put(key, value, saveTime)
|
||||
}
|
||||
|
||||
fun get(key: String): String? {
|
||||
return appDb.cacheDao.get(key, System.currentTimeMillis())
|
||||
}
|
||||
@ -52,6 +56,10 @@ object CacheManager {
|
||||
return ACache.get(appCtx).getAsBinary(key)
|
||||
}
|
||||
|
||||
fun getString(key: String): String? {
|
||||
return ACache.get(appCtx).getAsString(key)
|
||||
}
|
||||
|
||||
fun getQueryTTF(key: String): QueryTTF? {
|
||||
val cache = queryTTFMap[key] ?: return null
|
||||
if (cache.first == 0L || cache.first > System.currentTimeMillis()) {
|
||||
|
@ -138,15 +138,14 @@ interface JsExtensions {
|
||||
* @param saveTime 缓存时间,单位:秒
|
||||
* @return 返回缓存后的文件内容
|
||||
*/
|
||||
fun cacheFile(url: String, saveTime: Int = 0): String? {
|
||||
val key = md5Encode16(url)
|
||||
val cache = ACache.get(appCtx).getAsString(key)
|
||||
fun cacheFile(urlStr: String, saveTime: Int = 0): String? {
|
||||
val key = md5Encode16(urlStr)
|
||||
val cache = CacheManager.getString(key)
|
||||
if(cache.isNullOrBlank()) {
|
||||
log("首次下载${url}...")
|
||||
val value = ajax(url) ?: ""
|
||||
if (saveTime == 0) {
|
||||
ACache.get(appCtx).put(key, value)
|
||||
} else ACache.get(appCtx).put(key, value, saveTime)
|
||||
log("首次下载 ${urlStr}")
|
||||
val value = ajax(urlStr) ?: return null
|
||||
CacheManager.putString2File(key, value, saveTime)
|
||||
return value
|
||||
}
|
||||
return cache
|
||||
}
|
||||
|
@ -109,7 +109,7 @@ class ACache private constructor(cacheDir: File, max_size: Long, max_count: Int)
|
||||
* @param saveTime 保存的时间,单位:秒
|
||||
*/
|
||||
fun put(key: String, value: String, saveTime: Int) {
|
||||
put(key, Utils.newStringWithDateInfo(saveTime, value))
|
||||
if (saveTime == 0) put(key, value) else put(key, Utils.newStringWithDateInfo(saveTime, value))
|
||||
}
|
||||
|
||||
/**
|
||||
@ -245,7 +245,7 @@ class ACache private constructor(cacheDir: File, max_size: Long, max_count: Int)
|
||||
* @param saveTime 保存的时间,单位:秒
|
||||
*/
|
||||
fun put(key: String, value: ByteArray, saveTime: Int) {
|
||||
put(key, Utils.newByteArrayWithDateInfo(saveTime, value))
|
||||
if (saveTime == 0) put(key, value) else put(key, Utils.newByteArrayWithDateInfo(saveTime, value))
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user