Prevent OOM when cache is disabled
This commit is contained in:
@@ -19,8 +19,8 @@ android {
|
|||||||
applicationId "xyz.quaver.pupil"
|
applicationId "xyz.quaver.pupil"
|
||||||
minSdkVersion 16
|
minSdkVersion 16
|
||||||
targetSdkVersion 29
|
targetSdkVersion 29
|
||||||
versionCode 53
|
versionCode 54
|
||||||
versionName "4.18"
|
versionName "4.18.1"
|
||||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||||
multiDexEnabled true
|
multiDexEnabled true
|
||||||
vectorDrawables.useSupportLibrary = true
|
vectorDrawables.useSupportLibrary = true
|
||||||
@@ -72,7 +72,6 @@ dependencies {
|
|||||||
implementation 'com.github.arimorty:floatingsearchview:2.1.1'
|
implementation 'com.github.arimorty:floatingsearchview:2.1.1'
|
||||||
implementation 'com.github.clans:fab:1.6.4'
|
implementation 'com.github.clans:fab:1.6.4'
|
||||||
implementation 'com.github.bumptech.glide:glide:4.11.0'
|
implementation 'com.github.bumptech.glide:glide:4.11.0'
|
||||||
implementation "com.github.bumptech.glide:okhttp3-integration:4.11.0"
|
|
||||||
annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'
|
annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'
|
||||||
kapt 'com.github.bumptech.glide:compiler:4.11.0'
|
kapt 'com.github.bumptech.glide:compiler:4.11.0'
|
||||||
implementation ("com.github.bumptech.glide:recyclerview-integration:4.11.0") {
|
implementation ("com.github.bumptech.glide:recyclerview-integration:4.11.0") {
|
||||||
|
|||||||
@@ -11,8 +11,8 @@
|
|||||||
"type": "SINGLE",
|
"type": "SINGLE",
|
||||||
"filters": [],
|
"filters": [],
|
||||||
"properties": [],
|
"properties": [],
|
||||||
"versionCode": 53,
|
"versionCode": 54,
|
||||||
"versionName": "53",
|
"versionName": "54",
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"outputFile": "app-release.apk"
|
"outputFile": "app-release.apk"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ import androidx.recyclerview.widget.RecyclerView
|
|||||||
import com.bumptech.glide.RequestManager
|
import com.bumptech.glide.RequestManager
|
||||||
import com.bumptech.glide.load.engine.DiskCacheStrategy
|
import com.bumptech.glide.load.engine.DiskCacheStrategy
|
||||||
import com.bumptech.glide.load.model.GlideUrl
|
import com.bumptech.glide.load.model.GlideUrl
|
||||||
|
import com.bumptech.glide.load.model.LazyHeaders
|
||||||
import com.google.android.material.snackbar.Snackbar
|
import com.google.android.material.snackbar.Snackbar
|
||||||
import com.google.firebase.crashlytics.FirebaseCrashlytics
|
import com.google.firebase.crashlytics.FirebaseCrashlytics
|
||||||
import kotlinx.android.synthetic.main.activity_reader.view.*
|
import kotlinx.android.synthetic.main.activity_reader.view.*
|
||||||
@@ -102,23 +103,19 @@ class ReaderAdapter(private val glide: RequestManager,
|
|||||||
val lowQuality = preferences.getBoolean("low_quality", false)
|
val lowQuality = preferences.getBoolean("low_quality", false)
|
||||||
|
|
||||||
val url = when (reader!!.code) {
|
val url = when (reader!!.code) {
|
||||||
Code.HITOMI -> {
|
Code.HITOMI ->
|
||||||
GlideUrl(
|
GlideUrl(
|
||||||
imageUrlFromImage(
|
imageUrlFromImage(
|
||||||
galleryID,
|
galleryID,
|
||||||
reader!!.galleryInfo.files[position],
|
reader!!.galleryInfo.files[position],
|
||||||
!lowQuality
|
!lowQuality
|
||||||
)
|
)
|
||||||
).apply {
|
, LazyHeaders.Builder().addHeader("Referer", getReferer(galleryID)).build())
|
||||||
headers["Referer"] = getReferer(galleryID)
|
Code.HIYOBI ->
|
||||||
}
|
GlideUrl(createImgList(galleryID, reader!!, lowQuality)[position].path, LazyHeaders.Builder()
|
||||||
}
|
.addHeader("User-Agent", user_agent)
|
||||||
Code.HIYOBI -> {
|
.addHeader("Cookie", cookie)
|
||||||
GlideUrl(createImgList(galleryID, reader!!, lowQuality)[position].path).apply {
|
.build())
|
||||||
headers["User-Agent"] = user_agent
|
|
||||||
headers["Cookie"] = cookie
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else -> null
|
else -> null
|
||||||
}
|
}
|
||||||
holder.view.image.post {
|
holder.view.image.post {
|
||||||
|
|||||||
@@ -144,30 +144,6 @@ class MainActivity : AppCompatActivity() {
|
|||||||
|
|
||||||
preference.edit().putBoolean("https_block_alert", true).apply()
|
preference.edit().putBoolean("https_block_alert", true).apply()
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!preference.getBoolean("apcjsa_option", false)) {
|
|
||||||
android.app.AlertDialog.Builder(this).apply {
|
|
||||||
setTitle(R.string.apcjsa_option_title)
|
|
||||||
setMessage(R.string.apcjsa_option_message)
|
|
||||||
setPositiveButton(android.R.string.yes) { _, _ ->
|
|
||||||
val tags = Tags.parse(
|
|
||||||
preference.getString("default_query", "") ?: ""
|
|
||||||
)
|
|
||||||
|
|
||||||
tags.add("-female:loli")
|
|
||||||
tags.add("-male:shota")
|
|
||||||
|
|
||||||
preference.edit()
|
|
||||||
.putString("default_query", tags.toString())
|
|
||||||
.putBoolean("cache_disable", true)
|
|
||||||
.putBoolean("apcjsa_option", true)
|
|
||||||
.apply()
|
|
||||||
}
|
|
||||||
setNegativeButton(android.R.string.no) { _, _ -> }
|
|
||||||
}.show()
|
|
||||||
|
|
||||||
preference.edit().putBoolean("apcjsa_option", true).apply()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
with(application as Pupil) {
|
with(application as Pupil) {
|
||||||
|
|||||||
@@ -146,8 +146,6 @@
|
|||||||
<string name="default_query_dialog_filter_loli">登場人物を全て18歳以上にする</string>
|
<string name="default_query_dialog_filter_loli">登場人物を全て18歳以上にする</string>
|
||||||
<string name="settings_cache_disable">キャッシュを使用しない</string>
|
<string name="settings_cache_disable">キャッシュを使用しない</string>
|
||||||
<string name="settings_download_when_cache_disable_warning">キャッシュを使用しないため、ダウンロードできません</string>
|
<string name="settings_download_when_cache_disable_warning">キャッシュを使用しないため、ダウンロードできません</string>
|
||||||
<string name="apcjsa_option_title">(Korean only)</string>
|
|
||||||
<string name="apcjsa_option_message">(Korean only)</string>
|
|
||||||
<string name="settings_user_id">ユーザーID</string>
|
<string name="settings_user_id">ユーザーID</string>
|
||||||
<string name="settings_user_id_toast">ユーザーIDをクリップボードにコピーしました</string>
|
<string name="settings_user_id_toast">ユーザーIDをクリップボードにコピーしました</string>
|
||||||
<string name="reader_error_retry">ダウンロードエラーが発生しました。リトライしますか?</string>
|
<string name="reader_error_retry">ダウンロードエラーが発生しました。リトライしますか?</string>
|
||||||
|
|||||||
@@ -146,8 +146,6 @@
|
|||||||
<string name="default_query_dialog_filter_loli">판사님 저는 페도가 아닙니다</string>
|
<string name="default_query_dialog_filter_loli">판사님 저는 페도가 아닙니다</string>
|
||||||
<string name="settings_cache_disable">캐시 비활성화</string>
|
<string name="settings_cache_disable">캐시 비활성화</string>
|
||||||
<string name="settings_download_when_cache_disable_warning">캐시를 활성화 해야 다운로드를 진행할 수 있습니다</string>
|
<string name="settings_download_when_cache_disable_warning">캐시를 활성화 해야 다운로드를 진행할 수 있습니다</string>
|
||||||
<string name="apcjsa_option_title">아청법 대응 옵션 추가</string>
|
|
||||||
<string name="apcjsa_option_message">경찰서 정모 확률을 줄여보고자 캐시 비활성화/태그 필터를 추가하였습니다. 적용하시겠습니까?</string>
|
|
||||||
<string name="settings_user_id">유저 ID</string>
|
<string name="settings_user_id">유저 ID</string>
|
||||||
<string name="settings_user_id_toast">유저 ID를 클립보드에 복사했습니다</string>
|
<string name="settings_user_id_toast">유저 ID를 클립보드에 복사했습니다</string>
|
||||||
<string name="reader_error_retry">다운로드 에러가 발생했습니다. 재시도 하시겠습니까?</string>
|
<string name="reader_error_retry">다운로드 에러가 발생했습니다. 재시도 하시겠습니까?</string>
|
||||||
|
|||||||
@@ -27,9 +27,6 @@
|
|||||||
<string name="https_block_alert_title">(Korean only)</string>
|
<string name="https_block_alert_title">(Korean only)</string>
|
||||||
<string name="https_block_alert">(Korean only)</string>
|
<string name="https_block_alert">(Korean only)</string>
|
||||||
|
|
||||||
<string name="apcjsa_option_title">(Korean only)</string>
|
|
||||||
<string name="apcjsa_option_message">(Korean only)</string>
|
|
||||||
|
|
||||||
<string name="update_failed">Update failed</string>
|
<string name="update_failed">Update failed</string>
|
||||||
<string name="update_failed_message">Please install manually by visiting github release page :{ (or try again!)</string>
|
<string name="update_failed_message">Please install manually by visiting github release page :{ (or try again!)</string>
|
||||||
<string name="update_no_permission">Cannot auto update because permission is denied. Please download manually from the webpage.</string>
|
<string name="update_no_permission">Cannot auto update because permission is denied. Please download manually from the webpage.</string>
|
||||||
|
|||||||
Reference in New Issue
Block a user