deleted hiyobi support
This commit is contained in:
@@ -1,6 +1,8 @@
|
|||||||
package xyz.quaver.pupil
|
package xyz.quaver.pupil
|
||||||
|
|
||||||
|
import android.Manifest
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
|
import android.content.pm.PackageManager
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.os.Environment
|
import android.os.Environment
|
||||||
@@ -15,8 +17,8 @@ import android.widget.TextView
|
|||||||
import androidx.appcompat.app.AlertDialog
|
import androidx.appcompat.app.AlertDialog
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.cardview.widget.CardView
|
import androidx.cardview.widget.CardView
|
||||||
|
import androidx.core.app.ActivityCompat
|
||||||
import androidx.core.content.ContextCompat
|
import androidx.core.content.ContextCompat
|
||||||
import androidx.core.content.FileProvider
|
|
||||||
import androidx.core.content.res.ResourcesCompat
|
import androidx.core.content.res.ResourcesCompat
|
||||||
import androidx.core.view.GravityCompat
|
import androidx.core.view.GravityCompat
|
||||||
import com.arlib.floatingsearchview.FloatingSearchView
|
import com.arlib.floatingsearchview.FloatingSearchView
|
||||||
@@ -75,6 +77,8 @@ class MainActivity : AppCompatActivity() {
|
|||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
|
||||||
|
checkPermissions()
|
||||||
|
|
||||||
val preference = PreferenceManager.getDefaultSharedPreferences(this)
|
val preference = PreferenceManager.getDefaultSharedPreferences(this)
|
||||||
|
|
||||||
if (Locale.getDefault().language == "ko") {
|
if (Locale.getDefault().language == "ko") {
|
||||||
@@ -245,6 +249,11 @@ class MainActivity : AppCompatActivity() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun checkPermissions() {
|
||||||
|
if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED)
|
||||||
|
ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.WRITE_EXTERNAL_STORAGE), 13489)
|
||||||
|
}
|
||||||
|
|
||||||
private fun initView() {
|
private fun initView() {
|
||||||
var prevP1 = 0
|
var prevP1 = 0
|
||||||
main_appbar_layout.addOnOffsetChangedListener(
|
main_appbar_layout.addOnOffsetChangedListener(
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import android.content.Context
|
|||||||
import android.content.ContextWrapper
|
import android.content.ContextWrapper
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.os.Environment
|
import android.os.Environment
|
||||||
|
import android.util.Log
|
||||||
import android.util.SparseArray
|
import android.util.SparseArray
|
||||||
import androidx.core.app.NotificationCompat
|
import androidx.core.app.NotificationCompat
|
||||||
import androidx.core.app.NotificationManagerCompat
|
import androidx.core.app.NotificationManagerCompat
|
||||||
@@ -17,6 +18,8 @@ import kotlinx.serialization.json.Json
|
|||||||
import kotlinx.serialization.json.JsonConfiguration
|
import kotlinx.serialization.json.JsonConfiguration
|
||||||
import kotlinx.serialization.list
|
import kotlinx.serialization.list
|
||||||
import xyz.quaver.hitomi.*
|
import xyz.quaver.hitomi.*
|
||||||
|
import xyz.quaver.hiyobi.cookie
|
||||||
|
import xyz.quaver.hiyobi.user_agent
|
||||||
import xyz.quaver.pupil.Pupil
|
import xyz.quaver.pupil.Pupil
|
||||||
import xyz.quaver.pupil.R
|
import xyz.quaver.pupil.R
|
||||||
import xyz.quaver.pupil.ReaderActivity
|
import xyz.quaver.pupil.ReaderActivity
|
||||||
@@ -88,8 +91,6 @@ class GalleryDownloader(
|
|||||||
download = _notify
|
download = _notify
|
||||||
val json = Json(JsonConfiguration.Stable)
|
val json = Json(JsonConfiguration.Stable)
|
||||||
val serializer = ReaderItem.serializer().list
|
val serializer = ReaderItem.serializer().list
|
||||||
val preference = PreferenceManager.getDefaultSharedPreferences(this@GalleryDownloader)
|
|
||||||
val useHiyobi = preference.getBoolean("use_hiyobi", false)
|
|
||||||
|
|
||||||
//Check cache
|
//Check cache
|
||||||
val cache = File(ContextCompat.getDataDir(this@GalleryDownloader), "images/${galleryBlock.id}/reader.json").let {
|
val cache = File(ContextCompat.getDataDir(this@GalleryDownloader), "images/${galleryBlock.id}/reader.json").let {
|
||||||
@@ -109,19 +110,7 @@ class GalleryDownloader(
|
|||||||
}
|
}
|
||||||
|
|
||||||
//Cache doesn't exist. Load from internet
|
//Cache doesn't exist. Load from internet
|
||||||
val reader = when {
|
val reader = getReader(galleryBlock.id)
|
||||||
useHiyobi -> {
|
|
||||||
xyz.quaver.hiyobi.getReader(galleryBlock.id).let {
|
|
||||||
when {
|
|
||||||
it.isEmpty() -> getReader(galleryBlock.id)
|
|
||||||
else -> it
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else -> {
|
|
||||||
getReader(galleryBlock.id)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (reader.isNotEmpty()) {
|
if (reader.isNotEmpty()) {
|
||||||
//Save cache
|
//Save cache
|
||||||
@@ -191,7 +180,7 @@ class GalleryDownloader(
|
|||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
cache.delete()
|
cache.delete()
|
||||||
|
|
||||||
downloads.remove(galleryBlock.id)
|
Log.e("Pupil", e.toString())
|
||||||
|
|
||||||
onErrorHandler?.invoke(e)
|
onErrorHandler?.invoke(e)
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,6 @@
|
|||||||
<string name="update_title">新しいアップデートがあります</string>
|
<string name="update_title">新しいアップデートがあります</string>
|
||||||
<string name="warning">注意</string>
|
<string name="warning">注意</string>
|
||||||
<string name="settings_miscellaneous_title">その他</string>
|
<string name="settings_miscellaneous_title">その他</string>
|
||||||
<string name="settings_use_hiyobi_summary">ロード速度を向上させるためhiyobi.meからイメージロード</string>
|
|
||||||
<string name="settings_use_hiyobi_title">hiyobi.meからロード</string>
|
<string name="settings_use_hiyobi_title">hiyobi.meからロード</string>
|
||||||
<string name="settings_clear_history">履歴を削除</string>
|
<string name="settings_clear_history">履歴を削除</string>
|
||||||
<string name="settings_clear_history_alert_message">履歴を削除しますか?</string>
|
<string name="settings_clear_history_alert_message">履歴を削除しますか?</string>
|
||||||
@@ -67,4 +66,5 @@
|
|||||||
<string name="settings_auto_export_summary">ダウンロード完了後自動的にエクスポート</string>
|
<string name="settings_auto_export_summary">ダウンロード完了後自動的にエクスポート</string>
|
||||||
<string name="settings_clear_downloads">ダウンロード削除</string>
|
<string name="settings_clear_downloads">ダウンロード削除</string>
|
||||||
<string name="settings_clear_downloads_alert_message">ダウンロードしたギャラリーを全て削除します。\n実行しますか?</string>
|
<string name="settings_clear_downloads_alert_message">ダウンロードしたギャラリーを全て削除します。\n実行しますか?</string>
|
||||||
|
<string name="settings_use_hiyobi_summary">点検中</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -19,7 +19,6 @@
|
|||||||
<string name="main_search">검색</string>
|
<string name="main_search">검색</string>
|
||||||
<string name="settings_cache_title">캐시</string>
|
<string name="settings_cache_title">캐시</string>
|
||||||
<string name="settings_miscellaneous_title">기타</string>
|
<string name="settings_miscellaneous_title">기타</string>
|
||||||
<string name="settings_use_hiyobi_summary">속도 향상을 위해 가능한 경우 hiyobi.me에서 이미지 로드</string>
|
|
||||||
<string name="settings_use_hiyobi_title">hiyobi.me 사용</string>
|
<string name="settings_use_hiyobi_title">hiyobi.me 사용</string>
|
||||||
<string name="settings_clear_history">기록 삭제</string>
|
<string name="settings_clear_history">기록 삭제</string>
|
||||||
<string name="settings_clear_history_alert_message">기록을 삭제하시겠습니까?</string>
|
<string name="settings_clear_history_alert_message">기록을 삭제하시겠습니까?</string>
|
||||||
@@ -67,4 +66,5 @@
|
|||||||
<string name="settings_auto_export_summary">다운로드가 끝난 후 자동 내보내기</string>
|
<string name="settings_auto_export_summary">다운로드가 끝난 후 자동 내보내기</string>
|
||||||
<string name="settings_clear_downloads">다운로드 삭제</string>
|
<string name="settings_clear_downloads">다운로드 삭제</string>
|
||||||
<string name="settings_clear_downloads_alert_message">다운로드 된 만화를 모두 삭제합니다.\n계속하시겠습니까?</string>
|
<string name="settings_clear_downloads_alert_message">다운로드 된 만화를 모두 삭제합니다.\n계속하시겠습니까?</string>
|
||||||
|
<string name="settings_use_hiyobi_summary">점검중</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -88,7 +88,7 @@
|
|||||||
<string name="settings_clear_history_summary">%1$d histories saved</string>
|
<string name="settings_clear_history_summary">%1$d histories saved</string>
|
||||||
<string name="settings_miscellaneous_title">Miscellaneous</string>
|
<string name="settings_miscellaneous_title">Miscellaneous</string>
|
||||||
<string name="settings_use_hiyobi_title">Use hiyobi.me</string>
|
<string name="settings_use_hiyobi_title">Use hiyobi.me</string>
|
||||||
<string name="settings_use_hiyobi_summary">Load images from hiyobi.me to improve loading speed (if available)</string>
|
<string name="settings_use_hiyobi_summary">Under maintenance</string>
|
||||||
<string name="settings_export_zip_title">Export zip</string>
|
<string name="settings_export_zip_title">Export zip</string>
|
||||||
<string name="settings_export_zip_summary">Export to zip instead of image folder</string>
|
<string name="settings_export_zip_summary">Export to zip instead of image folder</string>
|
||||||
<string name="settings_auto_export_title">Auto Export</string>
|
<string name="settings_auto_export_title">Auto Export</string>
|
||||||
|
|||||||
@@ -41,11 +41,6 @@
|
|||||||
<PreferenceCategory
|
<PreferenceCategory
|
||||||
app:title="@string/settings_miscellaneous_title">
|
app:title="@string/settings_miscellaneous_title">
|
||||||
|
|
||||||
<SwitchPreference
|
|
||||||
app:key="use_hiyobi"
|
|
||||||
app:title="@string/settings_use_hiyobi_title"
|
|
||||||
app:summary="@string/settings_use_hiyobi_summary"/>
|
|
||||||
|
|
||||||
<SwitchPreference
|
<SwitchPreference
|
||||||
app:key="export_zip"
|
app:key="export_zip"
|
||||||
app:title="@string/settings_export_zip_title"
|
app:title="@string/settings_export_zip_title"
|
||||||
|
|||||||
@@ -13,6 +13,12 @@ const val hiyobi = "xn--9w3b15m8vo.asia"
|
|||||||
const val user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36"
|
const val user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36"
|
||||||
|
|
||||||
var cookie: String = ""
|
var cookie: String = ""
|
||||||
|
get() {
|
||||||
|
if (field.isEmpty())
|
||||||
|
field = renewCookie()
|
||||||
|
|
||||||
|
return field
|
||||||
|
}
|
||||||
|
|
||||||
fun renewCookie() : String {
|
fun renewCookie() : String {
|
||||||
val url = "https://$hiyobi/"
|
val url = "https://$hiyobi/"
|
||||||
@@ -32,9 +38,6 @@ fun renewCookie() : String {
|
|||||||
fun getReader(galleryId: Int) : Reader {
|
fun getReader(galleryId: Int) : Reader {
|
||||||
val url = "https://$hiyobi/data/json/${galleryId}_list.json"
|
val url = "https://$hiyobi/data/json/${galleryId}_list.json"
|
||||||
|
|
||||||
if (cookie.isEmpty())
|
|
||||||
cookie = renewCookie()
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
val json = Json(JsonConfiguration.Stable).parseJson(
|
val json = Json(JsonConfiguration.Stable).parseJson(
|
||||||
with(URL(url).openConnection() as HttpsURLConnection) {
|
with(URL(url).openConnection() as HttpsURLConnection) {
|
||||||
|
|||||||
@@ -14,8 +14,7 @@ class UnitTest {
|
|||||||
fun test_nozomi() {
|
fun test_nozomi() {
|
||||||
val nozomi = fetchNozomi(start = 0, count = 5)
|
val nozomi = fetchNozomi(start = 0, count = 5)
|
||||||
|
|
||||||
for (n in nozomi)
|
nozomi.first
|
||||||
println(n)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -62,6 +61,8 @@ class UnitTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun test_hiyobi() {
|
fun test_hiyobi() {
|
||||||
print(xyz.quaver.hiyobi.getReader(1415416).size)
|
xyz.quaver.hiyobi.getReader(1415416).forEach {
|
||||||
|
println(it.url)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user