mirror of
https://github.com/recloudstream/cloudstream.git
synced 2024-08-15 01:53:11 +00:00
Merge remote-tracking branch 'csupdate/master'
This commit is contained in:
commit
de4f63337f
38 changed files with 862 additions and 138 deletions
|
@ -32,7 +32,9 @@ import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
|
||||||
import com.google.android.gms.cast.framework.*
|
import com.google.android.gms.cast.framework.*
|
||||||
import com.google.android.material.bottomsheet.BottomSheetDialog
|
import com.google.android.material.bottomsheet.BottomSheetDialog
|
||||||
import com.google.android.material.navigationrail.NavigationRailView
|
import com.google.android.material.navigationrail.NavigationRailView
|
||||||
|
import com.google.android.material.snackbar.Snackbar
|
||||||
import com.jaredrummler.android.colorpicker.ColorPickerDialogListener
|
import com.jaredrummler.android.colorpicker.ColorPickerDialogListener
|
||||||
|
import com.lagradost.cloudstream3.app
|
||||||
import com.lagradost.cloudstream3.APIHolder.allProviders
|
import com.lagradost.cloudstream3.APIHolder.allProviders
|
||||||
import com.lagradost.cloudstream3.APIHolder.apis
|
import com.lagradost.cloudstream3.APIHolder.apis
|
||||||
import com.lagradost.cloudstream3.APIHolder.getApiDubstatusSettings
|
import com.lagradost.cloudstream3.APIHolder.getApiDubstatusSettings
|
||||||
|
@ -79,6 +81,7 @@ import com.lagradost.cloudstream3.ui.setup.SetupFragmentExtensions
|
||||||
import com.lagradost.cloudstream3.utils.*
|
import com.lagradost.cloudstream3.utils.*
|
||||||
import com.lagradost.cloudstream3.utils.AppUtils.html
|
import com.lagradost.cloudstream3.utils.AppUtils.html
|
||||||
import com.lagradost.cloudstream3.utils.AppUtils.isCastApiAvailable
|
import com.lagradost.cloudstream3.utils.AppUtils.isCastApiAvailable
|
||||||
|
import com.lagradost.cloudstream3.utils.AppUtils.isNetworkAvailable
|
||||||
import com.lagradost.cloudstream3.utils.AppUtils.loadCache
|
import com.lagradost.cloudstream3.utils.AppUtils.loadCache
|
||||||
import com.lagradost.cloudstream3.utils.AppUtils.loadRepository
|
import com.lagradost.cloudstream3.utils.AppUtils.loadRepository
|
||||||
import com.lagradost.cloudstream3.utils.AppUtils.loadResult
|
import com.lagradost.cloudstream3.utils.AppUtils.loadResult
|
||||||
|
@ -86,6 +89,7 @@ import com.lagradost.cloudstream3.utils.AppUtils.loadSearchResult
|
||||||
import com.lagradost.cloudstream3.utils.AppUtils.setDefaultFocus
|
import com.lagradost.cloudstream3.utils.AppUtils.setDefaultFocus
|
||||||
import com.lagradost.cloudstream3.utils.BackupUtils.setUpBackup
|
import com.lagradost.cloudstream3.utils.BackupUtils.setUpBackup
|
||||||
import com.lagradost.cloudstream3.utils.Coroutines.ioSafe
|
import com.lagradost.cloudstream3.utils.Coroutines.ioSafe
|
||||||
|
import com.lagradost.cloudstream3.utils.Coroutines.main
|
||||||
import com.lagradost.cloudstream3.utils.DataStore.getKey
|
import com.lagradost.cloudstream3.utils.DataStore.getKey
|
||||||
import com.lagradost.cloudstream3.utils.DataStore.setKey
|
import com.lagradost.cloudstream3.utils.DataStore.setKey
|
||||||
import com.lagradost.cloudstream3.utils.DataStoreHelper.migrateResumeWatching
|
import com.lagradost.cloudstream3.utils.DataStoreHelper.migrateResumeWatching
|
||||||
|
@ -717,6 +721,28 @@ class MainActivity : AppCompatActivity(), ColorPickerDialogListener {
|
||||||
|
|
||||||
changeStatusBarState(isEmulatorSettings())
|
changeStatusBarState(isEmulatorSettings())
|
||||||
|
|
||||||
|
// Automatically enable jsdelivr if cant connect to raw.githubusercontent.com
|
||||||
|
if (this.getKey<Boolean>(getString(R.string.jsdelivr_proxy_key)) == null && isNetworkAvailable()) {
|
||||||
|
main {
|
||||||
|
if (checkGithubConnectivity()) {
|
||||||
|
this.setKey(getString(R.string.jsdelivr_proxy_key), false)
|
||||||
|
} else {
|
||||||
|
this.setKey(getString(R.string.jsdelivr_proxy_key), true)
|
||||||
|
val parentView: View = findViewById(android.R.id.content)
|
||||||
|
Snackbar.make(parentView, R.string.jsdelivr_enabled, Snackbar.LENGTH_LONG).let { snackbar ->
|
||||||
|
snackbar.setAction(R.string.revert) {
|
||||||
|
setKey(getString(R.string.jsdelivr_proxy_key), false)
|
||||||
|
}
|
||||||
|
snackbar.setBackgroundTint(colorFromAttribute(R.attr.primaryGrayBackground))
|
||||||
|
snackbar.setTextColor(colorFromAttribute(R.attr.textColor))
|
||||||
|
snackbar.setActionTextColor(colorFromAttribute(R.attr.colorPrimary))
|
||||||
|
snackbar.show()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if (PluginManager.checkSafeModeFile()) {
|
if (PluginManager.checkSafeModeFile()) {
|
||||||
normalSafeApiCall {
|
normalSafeApiCall {
|
||||||
|
@ -1090,4 +1116,12 @@ class MainActivity : AppCompatActivity(), ColorPickerDialogListener {
|
||||||
// }
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
suspend fun checkGithubConnectivity(): Boolean {
|
||||||
|
return try {
|
||||||
|
app.get("https://raw.githubusercontent.com/recloudstream/.github/master/connectivitycheck", timeout = 5).text.trim() == "ok"
|
||||||
|
} catch (t: Throwable) {
|
||||||
|
false
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,6 +38,9 @@ class DoodWsExtractor : DoodLaExtractor() {
|
||||||
override var mainUrl = "https://dood.ws"
|
override var mainUrl = "https://dood.ws"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class DoodYtExtractor : DoodLaExtractor() {
|
||||||
|
override var mainUrl = "https://dood.yt"
|
||||||
|
}
|
||||||
|
|
||||||
open class DoodLaExtractor : ExtractorApi() {
|
open class DoodLaExtractor : ExtractorApi() {
|
||||||
override var name = "DoodStream"
|
override var name = "DoodStream"
|
||||||
|
|
|
@ -16,26 +16,7 @@ open class Evoload : ExtractorApi() {
|
||||||
|
|
||||||
|
|
||||||
override suspend fun getUrl(url: String, referer: String?): List<ExtractorLink> {
|
override suspend fun getUrl(url: String, referer: String?): List<ExtractorLink> {
|
||||||
val lang = url.substring(0, 2)
|
val id = url.replace("https://evoload.io/e/", "") // wanted media id
|
||||||
val flag =
|
|
||||||
if (lang == "vo") {
|
|
||||||
" \uD83C\uDDEC\uD83C\uDDE7"
|
|
||||||
}
|
|
||||||
else if (lang == "vf"){
|
|
||||||
" \uD83C\uDDE8\uD83C\uDDF5"
|
|
||||||
} else {
|
|
||||||
""
|
|
||||||
}
|
|
||||||
|
|
||||||
val cleaned_url = if (lang == "ht") { // if url doesn't contain a flag and the url starts with http://
|
|
||||||
url
|
|
||||||
} else {
|
|
||||||
url.substring(2, url.length)
|
|
||||||
}
|
|
||||||
//println(lang)
|
|
||||||
//println(cleaned_url)
|
|
||||||
|
|
||||||
val id = cleaned_url.replace("https://evoload.io/e/", "") // wanted media id
|
|
||||||
val csrv_token = app.get("https://csrv.evosrv.com/captcha?m412548=").text // whatever that is
|
val csrv_token = app.get("https://csrv.evosrv.com/captcha?m412548=").text // whatever that is
|
||||||
val captchaPass = app.get("https://cd2.evosrv.com/html/jsx/e.jsx").text.take(300).split("captcha_pass = '")[1].split("\'")[0] //extract the captcha pass from the js response (located in the 300 first chars)
|
val captchaPass = app.get("https://cd2.evosrv.com/html/jsx/e.jsx").text.take(300).split("captcha_pass = '")[1].split("\'")[0] //extract the captcha pass from the js response (located in the 300 first chars)
|
||||||
val payload = mapOf("code" to id, "csrv_token" to csrv_token, "pass" to captchaPass)
|
val payload = mapOf("code" to id, "csrv_token" to csrv_token, "pass" to captchaPass)
|
||||||
|
@ -44,9 +25,9 @@ open class Evoload : ExtractorApi() {
|
||||||
return listOf(
|
return listOf(
|
||||||
ExtractorLink(
|
ExtractorLink(
|
||||||
name,
|
name,
|
||||||
name + flag,
|
name,
|
||||||
link,
|
link,
|
||||||
cleaned_url,
|
url,
|
||||||
Qualities.Unknown.value,
|
Qualities.Unknown.value,
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
|
@ -13,6 +13,11 @@ class FileMoon : Filesim() {
|
||||||
override val name = "FileMoon"
|
override val name = "FileMoon"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class FileMoonSx : Filesim() {
|
||||||
|
override val mainUrl = "https://filemoon.sx"
|
||||||
|
override val name = "FileMoonSx"
|
||||||
|
}
|
||||||
|
|
||||||
open class Filesim : ExtractorApi() {
|
open class Filesim : ExtractorApi() {
|
||||||
override val name = "Filesim"
|
override val name = "Filesim"
|
||||||
override val mainUrl = "https://files.im"
|
override val mainUrl = "https://files.im"
|
||||||
|
|
|
@ -18,13 +18,14 @@ open class Linkbox : ExtractorApi() {
|
||||||
subtitleCallback: (SubtitleFile) -> Unit,
|
subtitleCallback: (SubtitleFile) -> Unit,
|
||||||
callback: (ExtractorLink) -> Unit
|
callback: (ExtractorLink) -> Unit
|
||||||
) {
|
) {
|
||||||
val id = Regex("""(/file/|id=)(\S+)[&/?]""").find(url)?.groupValues?.get(2)
|
val id = Regex("""(?:/f/|/file/|\?id=)(\w+)""").find(url)?.groupValues?.get(1)
|
||||||
app.get("$mainUrl/api/open/get_url?itemId=$id", referer=url).parsedSafe<Responses>()?.data?.rList?.map { link ->
|
app.get("$mainUrl/api/file/detail?itemId=$id", referer = url)
|
||||||
|
.parsedSafe<Responses>()?.data?.itemInfo?.resolutionList?.map { link ->
|
||||||
callback.invoke(
|
callback.invoke(
|
||||||
ExtractorLink(
|
ExtractorLink(
|
||||||
name,
|
name,
|
||||||
name,
|
name,
|
||||||
link.url,
|
link.url ?: return@map null,
|
||||||
url,
|
url,
|
||||||
getQualityFromName(link.resolution)
|
getQualityFromName(link.resolution)
|
||||||
)
|
)
|
||||||
|
@ -32,17 +33,21 @@ open class Linkbox : ExtractorApi() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
data class RList(
|
data class Resolutions(
|
||||||
@JsonProperty("url") val url: String,
|
@JsonProperty("url") val url: String? = null,
|
||||||
@JsonProperty("resolution") val resolution: String?,
|
@JsonProperty("resolution") val resolution: String? = null,
|
||||||
|
)
|
||||||
|
|
||||||
|
data class ItemInfo(
|
||||||
|
@JsonProperty("resolutionList") val resolutionList: ArrayList<Resolutions>? = arrayListOf(),
|
||||||
)
|
)
|
||||||
|
|
||||||
data class Data(
|
data class Data(
|
||||||
@JsonProperty("rList") val rList: List<RList>?,
|
@JsonProperty("itemInfo") val itemInfo: ItemInfo? = null,
|
||||||
)
|
)
|
||||||
|
|
||||||
data class Responses(
|
data class Responses(
|
||||||
@JsonProperty("data") val data: Data?,
|
@JsonProperty("data") val data: Data? = null,
|
||||||
)
|
)
|
||||||
|
|
||||||
}
|
}
|
|
@ -77,6 +77,10 @@ class StreamSB10 : StreamSB() {
|
||||||
override var mainUrl = "https://sbplay2.xyz"
|
override var mainUrl = "https://sbplay2.xyz"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class StreamSB11 : StreamSB() {
|
||||||
|
override var mainUrl = "https://sbbrisk.com"
|
||||||
|
}
|
||||||
|
|
||||||
// This is a modified version of https://github.com/jmir1/aniyomi-extensions/blob/master/src/en/genoanime/src/eu/kanade/tachiyomi/animeextension/en/genoanime/extractors/StreamSBExtractor.kt
|
// This is a modified version of https://github.com/jmir1/aniyomi-extensions/blob/master/src/en/genoanime/src/eu/kanade/tachiyomi/animeextension/en/genoanime/extractors/StreamSBExtractor.kt
|
||||||
// The following code is under the Apache License 2.0 https://github.com/jmir1/aniyomi-extensions/blob/master/LICENSE
|
// The following code is under the Apache License 2.0 https://github.com/jmir1/aniyomi-extensions/blob/master/LICENSE
|
||||||
open class StreamSB : ExtractorApi() {
|
open class StreamSB : ExtractorApi() {
|
||||||
|
|
|
@ -7,6 +7,10 @@ class Uqload1 : Uqload() {
|
||||||
override var mainUrl = "https://uqload.com"
|
override var mainUrl = "https://uqload.com"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class Uqload2 : Uqload() {
|
||||||
|
override var mainUrl = "https://uqload.co"
|
||||||
|
}
|
||||||
|
|
||||||
open class Uqload : ExtractorApi() {
|
open class Uqload : ExtractorApi() {
|
||||||
override val name: String = "Uqload"
|
override val name: String = "Uqload"
|
||||||
override val mainUrl: String = "https://www.uqload.com"
|
override val mainUrl: String = "https://www.uqload.com"
|
||||||
|
@ -15,30 +19,14 @@ open class Uqload : ExtractorApi() {
|
||||||
|
|
||||||
|
|
||||||
override suspend fun getUrl(url: String, referer: String?): List<ExtractorLink>? {
|
override suspend fun getUrl(url: String, referer: String?): List<ExtractorLink>? {
|
||||||
val lang = url.substring(0, 2)
|
with(app.get(url)) { // raised error ERROR_CODE_PARSING_CONTAINER_UNSUPPORTED (3003) is due to the response: "error_nofile"
|
||||||
val flag =
|
|
||||||
if (lang == "vo") {
|
|
||||||
" \uD83C\uDDEC\uD83C\uDDE7"
|
|
||||||
}
|
|
||||||
else if (lang == "vf"){
|
|
||||||
" \uD83C\uDDE8\uD83C\uDDF5"
|
|
||||||
} else {
|
|
||||||
""
|
|
||||||
}
|
|
||||||
|
|
||||||
val cleaned_url = if (lang == "ht") { // if url doesn't contain a flag and the url starts with http://
|
|
||||||
url
|
|
||||||
} else {
|
|
||||||
url.substring(2, url.length)
|
|
||||||
}
|
|
||||||
with(app.get(cleaned_url)) { // raised error ERROR_CODE_PARSING_CONTAINER_UNSUPPORTED (3003) is due to the response: "error_nofile"
|
|
||||||
srcRegex.find(this.text)?.groupValues?.get(1)?.replace("\"", "")?.let { link ->
|
srcRegex.find(this.text)?.groupValues?.get(1)?.replace("\"", "")?.let { link ->
|
||||||
return listOf(
|
return listOf(
|
||||||
ExtractorLink(
|
ExtractorLink(
|
||||||
name,
|
name,
|
||||||
name + flag,
|
name,
|
||||||
link,
|
link,
|
||||||
cleaned_url,
|
url,
|
||||||
Qualities.Unknown.value,
|
Qualities.Unknown.value,
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
|
@ -0,0 +1,34 @@
|
||||||
|
package com.lagradost.cloudstream3.extractors
|
||||||
|
import com.lagradost.cloudstream3.app
|
||||||
|
import com.lagradost.cloudstream3.utils.ExtractorApi
|
||||||
|
import com.lagradost.cloudstream3.utils.ExtractorLink
|
||||||
|
import com.lagradost.cloudstream3.utils.Qualities
|
||||||
|
import com.lagradost.cloudstream3.utils.getAndUnpack
|
||||||
|
|
||||||
|
class Vido : ExtractorApi() {
|
||||||
|
override var name = "Vido"
|
||||||
|
override var mainUrl = "https://vido.lol"
|
||||||
|
private val srcRegex = Regex("""sources:\s*\["(.*?)"\]""")
|
||||||
|
override val requiresReferer = true
|
||||||
|
|
||||||
|
override suspend fun getUrl(url: String, referer: String?): List<ExtractorLink>? {
|
||||||
|
val methode = app.get(url.replace("/e/", "/embed-")) // fix wiflix and mesfilms
|
||||||
|
with(methode) {
|
||||||
|
if (!methode.isSuccessful) return null
|
||||||
|
//val quality = unpackedText.lowercase().substringAfter(" height=").substringBefore(" ").toIntOrNull()
|
||||||
|
srcRegex.find(this.text)?.groupValues?.get(1)?.let { link ->
|
||||||
|
return listOf(
|
||||||
|
ExtractorLink(
|
||||||
|
name,
|
||||||
|
name,
|
||||||
|
link,
|
||||||
|
url,
|
||||||
|
Qualities.Unknown.value,
|
||||||
|
true,
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null
|
||||||
|
}
|
||||||
|
}
|
|
@ -2,8 +2,10 @@ package com.lagradost.cloudstream3.plugins
|
||||||
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import com.fasterxml.jackson.annotation.JsonProperty
|
import com.fasterxml.jackson.annotation.JsonProperty
|
||||||
|
import com.lagradost.cloudstream3.AcraApplication.Companion.context
|
||||||
import com.lagradost.cloudstream3.AcraApplication.Companion.getKey
|
import com.lagradost.cloudstream3.AcraApplication.Companion.getKey
|
||||||
import com.lagradost.cloudstream3.AcraApplication.Companion.setKey
|
import com.lagradost.cloudstream3.AcraApplication.Companion.setKey
|
||||||
|
import com.lagradost.cloudstream3.R
|
||||||
import com.lagradost.cloudstream3.amap
|
import com.lagradost.cloudstream3.amap
|
||||||
import com.lagradost.cloudstream3.app
|
import com.lagradost.cloudstream3.app
|
||||||
import com.lagradost.cloudstream3.mvvm.logError
|
import com.lagradost.cloudstream3.mvvm.logError
|
||||||
|
@ -71,6 +73,15 @@ object RepositoryManager {
|
||||||
val PREBUILT_REPOSITORIES: Array<RepositoryData> by lazy {
|
val PREBUILT_REPOSITORIES: Array<RepositoryData> by lazy {
|
||||||
getKey("PREBUILT_REPOSITORIES") ?: emptyArray()
|
getKey("PREBUILT_REPOSITORIES") ?: emptyArray()
|
||||||
}
|
}
|
||||||
|
val GH_REGEX = Regex("^https://raw.githubusercontent.com/([A-Za-z0-9-]+)/([A-Za-z0-9_.-]+)/(.*)$")
|
||||||
|
|
||||||
|
/* Convert raw.githubusercontent.com urls to cdn.jsdelivr.net if enabled in settings */
|
||||||
|
fun convertRawGitUrl(url: String): String {
|
||||||
|
if (getKey<Boolean>(context!!.getString(R.string.jsdelivr_proxy_key)) != true) return url
|
||||||
|
val match = GH_REGEX.find(url) ?: return url
|
||||||
|
val (user, repo, rest) = match.destructured
|
||||||
|
return "https://cdn.jsdelivr.net/gh/$user/$repo@$rest"
|
||||||
|
}
|
||||||
|
|
||||||
suspend fun parseRepoUrl(url: String): String? {
|
suspend fun parseRepoUrl(url: String): String? {
|
||||||
val fixedUrl = url.trim()
|
val fixedUrl = url.trim()
|
||||||
|
@ -84,10 +95,15 @@ object RepositoryManager {
|
||||||
}
|
}
|
||||||
} else if (fixedUrl.matches("^[a-zA-Z0-9!_-]+$".toRegex())) {
|
} else if (fixedUrl.matches("^[a-zA-Z0-9!_-]+$".toRegex())) {
|
||||||
suspendSafeApiCall {
|
suspendSafeApiCall {
|
||||||
app.get("https://l.cloudstream.cf/${fixedUrl}").let {
|
app.get("https://l.cloudstream.cf/${fixedUrl}", allowRedirects = false).let {
|
||||||
return@let if (it.isSuccessful && !it.url.startsWith("https://cutt.ly/branded-domains")) it.url
|
it.headers["Location"]?.let { url ->
|
||||||
else app.get("https://cutt.ly/${fixedUrl}").let let2@{ it2 ->
|
return@suspendSafeApiCall if (!url.startsWith("https://cutt.ly/branded-domains")) url
|
||||||
return@let2 if (it2.isSuccessful) it2.url else null
|
else null
|
||||||
|
}
|
||||||
|
app.get("https://cutt.ly/${fixedUrl}", allowRedirects = false).let { it2 ->
|
||||||
|
it2.headers["Location"]?.let { url ->
|
||||||
|
return@suspendSafeApiCall if (url.startsWith("https://cutt.ly/404")) url else null
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -97,14 +113,14 @@ object RepositoryManager {
|
||||||
suspend fun parseRepository(url: String): Repository? {
|
suspend fun parseRepository(url: String): Repository? {
|
||||||
return suspendSafeApiCall {
|
return suspendSafeApiCall {
|
||||||
// Take manifestVersion and such into account later
|
// Take manifestVersion and such into account later
|
||||||
app.get(url).parsedSafe()
|
app.get(convertRawGitUrl(url)).parsedSafe()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private suspend fun parsePlugins(pluginUrls: String): List<SitePlugin> {
|
private suspend fun parsePlugins(pluginUrls: String): List<SitePlugin> {
|
||||||
// Take manifestVersion and such into account later
|
// Take manifestVersion and such into account later
|
||||||
return try {
|
return try {
|
||||||
val response = app.get(pluginUrls)
|
val response = app.get(convertRawGitUrl(pluginUrls))
|
||||||
// Normal parsed function not working?
|
// Normal parsed function not working?
|
||||||
// return response.parsedSafe()
|
// return response.parsedSafe()
|
||||||
tryParseJson<Array<SitePlugin>>(response.text)?.toList() ?: emptyList()
|
tryParseJson<Array<SitePlugin>>(response.text)?.toList() ?: emptyList()
|
||||||
|
@ -139,7 +155,7 @@ object RepositoryManager {
|
||||||
}
|
}
|
||||||
file.createNewFile()
|
file.createNewFile()
|
||||||
|
|
||||||
val body = app.get(pluginUrl).okhttpResponse.body
|
val body = app.get(convertRawGitUrl(pluginUrl)).okhttpResponse.body
|
||||||
write(body.byteStream(), file.outputStream())
|
write(body.byteStream(), file.outputStream())
|
||||||
file
|
file
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,11 +35,13 @@ import com.lagradost.cloudstream3.mvvm.logError
|
||||||
import com.lagradost.cloudstream3.mvvm.normalSafeApiCall
|
import com.lagradost.cloudstream3.mvvm.normalSafeApiCall
|
||||||
import com.lagradost.cloudstream3.ui.subtitles.SaveCaptionStyle
|
import com.lagradost.cloudstream3.ui.subtitles.SaveCaptionStyle
|
||||||
import com.lagradost.cloudstream3.utils.EpisodeSkip
|
import com.lagradost.cloudstream3.utils.EpisodeSkip
|
||||||
|
import com.lagradost.cloudstream3.utils.AppUtils.isUsingMobileData
|
||||||
import com.lagradost.cloudstream3.utils.ExtractorLink
|
import com.lagradost.cloudstream3.utils.ExtractorLink
|
||||||
import com.lagradost.cloudstream3.utils.ExtractorLinkPlayList
|
import com.lagradost.cloudstream3.utils.ExtractorLinkPlayList
|
||||||
import com.lagradost.cloudstream3.utils.ExtractorUri
|
import com.lagradost.cloudstream3.utils.ExtractorUri
|
||||||
import com.lagradost.cloudstream3.utils.SubtitleHelper.fromTwoLettersToLanguage
|
import com.lagradost.cloudstream3.utils.SubtitleHelper.fromTwoLettersToLanguage
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
import java.time.Duration
|
||||||
import javax.net.ssl.HttpsURLConnection
|
import javax.net.ssl.HttpsURLConnection
|
||||||
import javax.net.ssl.SSLContext
|
import javax.net.ssl.SSLContext
|
||||||
import javax.net.ssl.SSLSession
|
import javax.net.ssl.SSLSession
|
||||||
|
@ -535,15 +537,16 @@ class CS3IPlayer : IPlayer {
|
||||||
OkHttpDataSource.Factory(client).setUserAgent(USER_AGENT)
|
OkHttpDataSource.Factory(client).setUserAgent(USER_AGENT)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Do no include empty referer, if the provider wants those they can use the header map.
|
||||||
|
val refererMap = if (link.referer.isBlank()) emptyMap() else mapOf("referer" to link.referer)
|
||||||
val headers = mapOf(
|
val headers = mapOf(
|
||||||
"referer" to link.referer,
|
|
||||||
"accept" to "*/*",
|
"accept" to "*/*",
|
||||||
"sec-ch-ua" to "\"Chromium\";v=\"91\", \" Not;A Brand\";v=\"99\"",
|
"sec-ch-ua" to "\"Chromium\";v=\"91\", \" Not;A Brand\";v=\"99\"",
|
||||||
"sec-ch-ua-mobile" to "?0",
|
"sec-ch-ua-mobile" to "?0",
|
||||||
"sec-fetch-user" to "?1",
|
"sec-fetch-user" to "?1",
|
||||||
"sec-fetch-mode" to "navigate",
|
"sec-fetch-mode" to "navigate",
|
||||||
"sec-fetch-dest" to "video"
|
"sec-fetch-dest" to "video"
|
||||||
) + link.headers // Adds the headers from the provider, e.g Authorization
|
) + refererMap + link.headers // Adds the headers from the provider, e.g Authorization
|
||||||
|
|
||||||
return source.apply {
|
return source.apply {
|
||||||
setDefaultRequestProperties(headers)
|
setDefaultRequestProperties(headers)
|
||||||
|
@ -847,7 +850,7 @@ class CS3IPlayer : IPlayer {
|
||||||
Log.i(TAG, "loadExo")
|
Log.i(TAG, "loadExo")
|
||||||
val settingsManager = PreferenceManager.getDefaultSharedPreferences(context)
|
val settingsManager = PreferenceManager.getDefaultSharedPreferences(context)
|
||||||
val maxVideoHeight = settingsManager.getInt(
|
val maxVideoHeight = settingsManager.getInt(
|
||||||
context.getString(com.lagradost.cloudstream3.R.string.quality_pref_key),
|
context.getString(if (context.isUsingMobileData()) com.lagradost.cloudstream3.R.string.quality_pref_mobile_data_key else com.lagradost.cloudstream3.R.string.quality_pref_key),
|
||||||
Int.MAX_VALUE
|
Int.MAX_VALUE
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -40,6 +40,7 @@ import com.lagradost.cloudstream3.R
|
||||||
import com.lagradost.cloudstream3.mvvm.logError
|
import com.lagradost.cloudstream3.mvvm.logError
|
||||||
import com.lagradost.cloudstream3.ui.player.GeneratorPlayer.Companion.subsProvidersIsActive
|
import com.lagradost.cloudstream3.ui.player.GeneratorPlayer.Companion.subsProvidersIsActive
|
||||||
import com.lagradost.cloudstream3.utils.Qualities
|
import com.lagradost.cloudstream3.utils.Qualities
|
||||||
|
import com.lagradost.cloudstream3.utils.AppUtils.isUsingMobileData
|
||||||
import com.lagradost.cloudstream3.utils.SingleSelectionHelper.showDialog
|
import com.lagradost.cloudstream3.utils.SingleSelectionHelper.showDialog
|
||||||
import com.lagradost.cloudstream3.utils.UIHelper.colorFromAttribute
|
import com.lagradost.cloudstream3.utils.UIHelper.colorFromAttribute
|
||||||
import com.lagradost.cloudstream3.utils.UIHelper.dismissSafe
|
import com.lagradost.cloudstream3.utils.UIHelper.dismissSafe
|
||||||
|
@ -1246,9 +1247,8 @@ open class FullScreenPlayer : AbstractPlayerFragment() {
|
||||||
ctx.getString(R.string.double_tap_pause_enabled_key),
|
ctx.getString(R.string.double_tap_pause_enabled_key),
|
||||||
false
|
false
|
||||||
)
|
)
|
||||||
|
|
||||||
currentPrefQuality = settingsManager.getInt(
|
currentPrefQuality = settingsManager.getInt(
|
||||||
ctx.getString(R.string.quality_pref_key),
|
ctx.getString(if (ctx.isUsingMobileData()) R.string.quality_pref_mobile_data_key else R.string.quality_pref_key),
|
||||||
currentPrefQuality
|
currentPrefQuality
|
||||||
)
|
)
|
||||||
// useSystemBrightness =
|
// useSystemBrightness =
|
||||||
|
|
|
@ -74,6 +74,7 @@ val appLanguages = arrayListOf(
|
||||||
Triple("\uD83C\uDDEE\uD83C\uDDE9", "Bahasa Indonesia", "in"),
|
Triple("\uD83C\uDDEE\uD83C\uDDE9", "Bahasa Indonesia", "in"),
|
||||||
Triple("", "italiano", "it"),
|
Triple("", "italiano", "it"),
|
||||||
Triple("\uD83C\uDDEE\uD83C\uDDF1", "עברית", "iw"),
|
Triple("\uD83C\uDDEE\uD83C\uDDF1", "עברית", "iw"),
|
||||||
|
Triple("", "日本語 (にほんご)", "ja"),
|
||||||
Triple("", "ಕನ್ನಡ", "kn"),
|
Triple("", "ಕನ್ನಡ", "kn"),
|
||||||
Triple("", "македонски", "mk"),
|
Triple("", "македонски", "mk"),
|
||||||
Triple("", "മലയാളം", "ml"),
|
Triple("", "മലയാളം", "ml"),
|
||||||
|
@ -82,7 +83,7 @@ val appLanguages = arrayListOf(
|
||||||
Triple("", "norsk bokmål", "no"),
|
Triple("", "norsk bokmål", "no"),
|
||||||
Triple("", "polski", "pl"),
|
Triple("", "polski", "pl"),
|
||||||
Triple("\uD83C\uDDF5\uD83C\uDDF9", "português", "pt"),
|
Triple("\uD83C\uDDF5\uD83C\uDDF9", "português", "pt"),
|
||||||
Triple("🦍", "mmmm... monke", "qt"),
|
Triple("\uD83E\uDD8D", "mmmm... monke", "qt"),
|
||||||
Triple("", "română", "ro"),
|
Triple("", "română", "ro"),
|
||||||
Triple("", "русский", "ru"),
|
Triple("", "русский", "ru"),
|
||||||
Triple("", "slovenčina", "sk"),
|
Triple("", "slovenčina", "sk"),
|
||||||
|
@ -97,7 +98,7 @@ val appLanguages = arrayListOf(
|
||||||
Triple("", "中文", "zh"),
|
Triple("", "中文", "zh"),
|
||||||
Triple("\uD83C\uDDF9\uD83C\uDDFC", "文言", "zh-rTW"),
|
Triple("\uD83C\uDDF9\uD83C\uDDFC", "文言", "zh-rTW"),
|
||||||
/* end language list */
|
/* end language list */
|
||||||
).sortedBy { it.second?.toLowerCase() } //ye, we go alphabetical, so ppl don't put their lang on top
|
).sortedBy { it.second.lowercase() } //ye, we go alphabetical, so ppl don't put their lang on top
|
||||||
|
|
||||||
class SettingsGeneral : PreferenceFragmentCompat() {
|
class SettingsGeneral : PreferenceFragmentCompat() {
|
||||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
|
@ -157,9 +158,6 @@ class SettingsGeneral : PreferenceFragmentCompat() {
|
||||||
|
|
||||||
getPref(R.string.locale_key)?.setOnPreferenceClickListener { pref ->
|
getPref(R.string.locale_key)?.setOnPreferenceClickListener { pref ->
|
||||||
val tempLangs = appLanguages.toMutableList()
|
val tempLangs = appLanguages.toMutableList()
|
||||||
//if (beneneCount > 100) {
|
|
||||||
// tempLangs.add(Triple("\uD83E\uDD8D", "mmmm... monke", "mo"))
|
|
||||||
//}
|
|
||||||
val current = getCurrentLocale(pref.context)
|
val current = getCurrentLocale(pref.context)
|
||||||
val languageCodes = tempLangs.map { (_, _, iso) -> iso }
|
val languageCodes = tempLangs.map { (_, _, iso) -> iso }
|
||||||
val languageNames = tempLangs.map { (emoji, name, iso) ->
|
val languageNames = tempLangs.map { (emoji, name, iso) ->
|
||||||
|
@ -316,6 +314,12 @@ class SettingsGeneral : PreferenceFragmentCompat() {
|
||||||
} ?: emptyList()
|
} ?: emptyList()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
settingsManager.edit().putBoolean(getString(R.string.jsdelivr_proxy_key), getKey(getString(R.string.jsdelivr_proxy_key), false) ?: false).apply()
|
||||||
|
getPref(R.string.jsdelivr_proxy_key)?.setOnPreferenceChangeListener { _, newValue ->
|
||||||
|
setKey(getString(R.string.jsdelivr_proxy_key), newValue)
|
||||||
|
return@setOnPreferenceChangeListener true
|
||||||
|
}
|
||||||
|
|
||||||
getPref(R.string.download_path_key)?.setOnPreferenceClickListener {
|
getPref(R.string.download_path_key)?.setOnPreferenceClickListener {
|
||||||
val dirs = getDownloadDirs()
|
val dirs = getDownloadDirs()
|
||||||
|
|
||||||
|
|
|
@ -113,6 +113,30 @@ class SettingsPlayer : PreferenceFragmentCompat() {
|
||||||
return@setOnPreferenceClickListener true
|
return@setOnPreferenceClickListener true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getPref(R.string.quality_pref_mobile_data_key)?.setOnPreferenceClickListener {
|
||||||
|
val prefValues = Qualities.values().map { it.value }.reversed().toMutableList()
|
||||||
|
prefValues.remove(Qualities.Unknown.value)
|
||||||
|
|
||||||
|
val prefNames = prefValues.map { Qualities.getStringByInt(it) }
|
||||||
|
|
||||||
|
val currentQuality =
|
||||||
|
settingsManager.getInt(
|
||||||
|
getString(R.string.quality_pref_mobile_data_key),
|
||||||
|
Qualities.values().last().value
|
||||||
|
)
|
||||||
|
|
||||||
|
activity?.showBottomDialog(
|
||||||
|
prefNames.toList(),
|
||||||
|
prefValues.indexOf(currentQuality),
|
||||||
|
getString(R.string.watch_quality_pref_data),
|
||||||
|
true,
|
||||||
|
{}) {
|
||||||
|
settingsManager.edit().putInt(getString(R.string.quality_pref_mobile_data_key), prefValues[it])
|
||||||
|
.apply()
|
||||||
|
}
|
||||||
|
return@setOnPreferenceClickListener true
|
||||||
|
}
|
||||||
|
|
||||||
getPref(R.string.player_pref_key)?.setOnPreferenceClickListener {
|
getPref(R.string.player_pref_key)?.setOnPreferenceClickListener {
|
||||||
val prefNames = resources.getStringArray(R.array.player_pref_names)
|
val prefNames = resources.getStringArray(R.array.player_pref_names)
|
||||||
val prefValues = resources.getIntArray(R.array.player_pref_values)
|
val prefValues = resources.getIntArray(R.array.player_pref_values)
|
||||||
|
|
|
@ -491,6 +491,12 @@ object AppUtils {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun Context.isNetworkAvailable(): Boolean {
|
||||||
|
val manager = this.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
|
||||||
|
val activeNetworkInfo = manager.activeNetworkInfo
|
||||||
|
return activeNetworkInfo != null && activeNetworkInfo.isConnected || manager.allNetworkInfo?.any { it.isConnected } ?: false
|
||||||
|
}
|
||||||
|
|
||||||
fun splitQuery(url: URL): Map<String, String> {
|
fun splitQuery(url: URL): Map<String, String> {
|
||||||
val queryPairs: MutableMap<String, String> = LinkedHashMap()
|
val queryPairs: MutableMap<String, String> = LinkedHashMap()
|
||||||
val query: String = url.query
|
val query: String = url.query
|
||||||
|
@ -770,9 +776,14 @@ object AppUtils {
|
||||||
return networkInfo.any {
|
return networkInfo.any {
|
||||||
conManager.getNetworkCapabilities(it)
|
conManager.getNetworkCapabilities(it)
|
||||||
?.hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR) == true
|
?.hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR) == true
|
||||||
|
} &&
|
||||||
|
!networkInfo.any {
|
||||||
|
conManager.getNetworkCapabilities(it)
|
||||||
|
?.hasTransport(NetworkCapabilities.TRANSPORT_WIFI) == true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private fun Activity?.cacheClass(clazz: String?) {
|
private fun Activity?.cacheClass(clazz: String?) {
|
||||||
clazz?.let { c ->
|
clazz?.let { c ->
|
||||||
this?.cacheDir?.let {
|
this?.cacheDir?.let {
|
||||||
|
|
|
@ -229,6 +229,7 @@ val extractorApis: MutableList<ExtractorApi> = arrayListOf(
|
||||||
StreamSB8(),
|
StreamSB8(),
|
||||||
StreamSB9(),
|
StreamSB9(),
|
||||||
StreamSB10(),
|
StreamSB10(),
|
||||||
|
StreamSB11(),
|
||||||
SBfull(),
|
SBfull(),
|
||||||
// Streamhub(), cause Streamhub2() works
|
// Streamhub(), cause Streamhub2() works
|
||||||
Streamhub2(),
|
Streamhub2(),
|
||||||
|
@ -254,6 +255,7 @@ val extractorApis: MutableList<ExtractorApi> = arrayListOf(
|
||||||
// WatchSB(), 'cause StreamSB.kt works
|
// WatchSB(), 'cause StreamSB.kt works
|
||||||
Uqload(),
|
Uqload(),
|
||||||
Uqload1(),
|
Uqload1(),
|
||||||
|
Uqload2(),
|
||||||
Evoload(),
|
Evoload(),
|
||||||
Evoload1(),
|
Evoload1(),
|
||||||
VoeExtractor(),
|
VoeExtractor(),
|
||||||
|
@ -277,6 +279,7 @@ val extractorApis: MutableList<ExtractorApi> = arrayListOf(
|
||||||
DoodShExtractor(),
|
DoodShExtractor(),
|
||||||
DoodWatchExtractor(),
|
DoodWatchExtractor(),
|
||||||
DoodWfExtractor(),
|
DoodWfExtractor(),
|
||||||
|
DoodYtExtractor(),
|
||||||
|
|
||||||
AsianLoad(),
|
AsianLoad(),
|
||||||
|
|
||||||
|
@ -324,6 +327,8 @@ val extractorApis: MutableList<ExtractorApi> = arrayListOf(
|
||||||
|
|
||||||
Filesim(),
|
Filesim(),
|
||||||
FileMoon(),
|
FileMoon(),
|
||||||
|
FileMoonSx(),
|
||||||
|
Vido(),
|
||||||
Linkbox(),
|
Linkbox(),
|
||||||
Acefile(),
|
Acefile(),
|
||||||
SpeedoStream(),
|
SpeedoStream(),
|
||||||
|
|
|
@ -259,15 +259,15 @@
|
||||||
<string name="dont_show_again">لا تظهر مرة أخرى</string>
|
<string name="dont_show_again">لا تظهر مرة أخرى</string>
|
||||||
<string name="skip_update">تخطي هذا التحديث</string>
|
<string name="skip_update">تخطي هذا التحديث</string>
|
||||||
<string name="update">تحديث</string>
|
<string name="update">تحديث</string>
|
||||||
<string name="watch_quality_pref">جودة المشاهدة المفضلة</string>
|
<string name="watch_quality_pref">جودة المشاهدة المفضلة (WiFi)</string>
|
||||||
<string name="limit_title">أقصى عدد لحروف عنوان مُشغل الفيديو</string>
|
<string name="limit_title">أقصى عدد لحروف عنوان مُشغل الفيديو</string>
|
||||||
<string name="limit_title_rez">أبعاد مُشغل الفيديو</string>
|
<string name="limit_title_rez">أبعاد مُشغل الفيديو</string>
|
||||||
<string name="video_buffer_size_settings">حجم ذاكرة التخزين المؤقت للفيديو</string>
|
<string name="video_buffer_size_settings">حجم ذاكرة التخزين المؤقت للفيديو</string>
|
||||||
<string name="video_buffer_length_settings">طول التخزين المؤقت</string>
|
<string name="video_buffer_length_settings">طول التخزين المؤقت</string>
|
||||||
<string name="video_buffer_disk_settings">التخزين المؤقت للفيديو على القرص</string>
|
<string name="video_buffer_disk_settings">التخزين المؤقت للفيديو على القرص</string>
|
||||||
<string name="video_buffer_clear_settings">مسح التخزين المؤقت للصورة والفيديو</string>
|
<string name="video_buffer_clear_settings">مسح التخزين المؤقت للصورة والفيديو</string>
|
||||||
<string name="video_ram_description">يتسبب في حدوث أعطال إذا تم ضبطه على مستوى مرتفع جدا على الأجهزة ذات الذاكرة المنخفضة ، مثل Android TV.</string>
|
<string name="video_ram_description">يتسبب في حدوث أعطال إذا تم ضبطه على مستوى مرتفع جدا على الأجهزة ذات الذاكرة المنخفضة، مثل تلفزيون أندرويد.</string>
|
||||||
<string name="video_disk_description">يسبب مشاكل إذا تم ضبطه على مستوى مرتفع جدا على الأجهزة ذات مساحة التخزين المنخفضة ، مثل Android TV.</string>
|
<string name="video_disk_description">يسبب مشاكل إذا تم ضبطه على مستوى مرتفع جدا على الأجهزة ذات مساحة التخزين المنخفضة، مثل تلفزيون أندرويد.</string>
|
||||||
<string name="dns_pref">إستخدام DNS بدلا من HTTPS</string>
|
<string name="dns_pref">إستخدام DNS بدلا من HTTPS</string>
|
||||||
<string name="dns_pref_summary">مفيد لتجاوز حجب مزود خدمة الإنترنت</string>
|
<string name="dns_pref_summary">مفيد لتجاوز حجب مزود خدمة الإنترنت</string>
|
||||||
<string name="add_site_pref">موقع بديل (نسخة)</string>
|
<string name="add_site_pref">موقع بديل (نسخة)</string>
|
||||||
|
@ -360,7 +360,7 @@
|
||||||
https://en.wikipedia.org/wiki/The_quick_brown_fox_jumps_over_the_lazy_dog
|
https://en.wikipedia.org/wiki/The_quick_brown_fox_jumps_over_the_lazy_dog
|
||||||
-->
|
-->
|
||||||
<string name="subtitles_example_text">نصٌّ حكيمٌ لهُ سِرٌّ قاطِعٌ وَذُو شَأنٍ عَظيمٍ مكتوبٌ على ثوبٍ أخضرَ ومُغلفٌ بجلدٍ أزرق</string>
|
<string name="subtitles_example_text">نصٌّ حكيمٌ لهُ سِرٌّ قاطِعٌ وَذُو شَأنٍ عَظيمٍ مكتوبٌ على ثوبٍ أخضرَ ومُغلفٌ بجلدٍ أزرق</string>
|
||||||
<string name="recommended">مُوصي به</string>
|
<string name="recommended">مُوصى به</string>
|
||||||
<string name="player_loaded_subtitles" formatted="true">تم تحميل %s</string>
|
<string name="player_loaded_subtitles" formatted="true">تم تحميل %s</string>
|
||||||
<string name="player_load_subtitles">إختيار ملف</string>
|
<string name="player_load_subtitles">إختيار ملف</string>
|
||||||
<string name="player_load_subtitles_online">تحميل من الانترنت</string>
|
<string name="player_load_subtitles_online">تحميل من الانترنت</string>
|
||||||
|
@ -543,4 +543,22 @@
|
||||||
<string name="pref_category_android_tv">تلفزيون أندرويد</string>
|
<string name="pref_category_android_tv">تلفزيون أندرويد</string>
|
||||||
<string name="android_tv_interface_on_seek_settings_summary">مدة التقديم عنما يكون المشغل مرئيا</string>
|
<string name="android_tv_interface_on_seek_settings_summary">مدة التقديم عنما يكون المشغل مرئيا</string>
|
||||||
<string name="android_tv_interface_on_seek_settings">مدة التقديم- المشغل المرئي</string>
|
<string name="android_tv_interface_on_seek_settings">مدة التقديم- المشغل المرئي</string>
|
||||||
|
<string name="test_failed">فشل</string>
|
||||||
|
<string name="test_passed">نجح</string>
|
||||||
|
<string name="category_provider_test">إختبار المزود</string>
|
||||||
|
<string name="restart">إعادة التشغيل</string>
|
||||||
|
<string name="test_log">سجل</string>
|
||||||
|
<string name="start">بَدأ</string>
|
||||||
|
<string name="stop">إيقاف</string>
|
||||||
|
<string name="subscription_in_progress_notification">تحديث العروض التي تم الاشتراك فيها</string>
|
||||||
|
<string name="subscription_deleted">إلغاء الاشتراك من %s</string>
|
||||||
|
<string name="subscription_episode_released">تم إصدار الحلقة %d!</string>
|
||||||
|
<string name="subscription_list_name">مشترك</string>
|
||||||
|
<string name="subscription_new">مشترك في %s</string>
|
||||||
|
<string name="pref_category_bypass">تجاوز مزود خدمة الإنترنت</string>
|
||||||
|
<string name="revert">استرجاع</string>
|
||||||
|
<string name="jsdelivr_enabled">فشل الوصول إلى GitHub ، وتمكين وكيل jsdelivr.</string>
|
||||||
|
<string name="jsdelivr_proxy_summary">تجاوز حظر GitHub باستخدام jsdelivr ، قد يتسبب في تأخير التحديثات لبضعة أيام.</string>
|
||||||
|
<string name="jsdelivr_proxy">وكيل raw.githubusercontent.com</string>
|
||||||
|
<string name="watch_quality_pref_data">جودة المشاهدة المفضلة (بيانات الجوال)</string>
|
||||||
</resources>
|
</resources>
|
|
@ -245,7 +245,7 @@
|
||||||
<string name="dont_show_again">Již nezobrazovat</string>
|
<string name="dont_show_again">Již nezobrazovat</string>
|
||||||
<string name="skip_update">Přeskočit tuto aktualizace</string>
|
<string name="skip_update">Přeskočit tuto aktualizace</string>
|
||||||
<string name="update">Aktualizovat</string>
|
<string name="update">Aktualizovat</string>
|
||||||
<string name="watch_quality_pref">Upřednostněná kvalita sledování</string>
|
<string name="watch_quality_pref">Upřednostněná kvalita sledování (WiFi)</string>
|
||||||
<string name="limit_title">Maximální počet znaků v názvu přehrávače</string>
|
<string name="limit_title">Maximální počet znaků v názvu přehrávače</string>
|
||||||
<string name="limit_title_rez">Rozlišení přehrávače</string>
|
<string name="limit_title_rez">Rozlišení přehrávače</string>
|
||||||
<string name="video_buffer_size_settings">Velikost vyrovnávací paměti videa</string>
|
<string name="video_buffer_size_settings">Velikost vyrovnávací paměti videa</string>
|
||||||
|
@ -535,4 +535,22 @@
|
||||||
<string name="android_tv_interface_on_seek_settings">Zobrazený přehrávač - doba hledání</string>
|
<string name="android_tv_interface_on_seek_settings">Zobrazený přehrávač - doba hledání</string>
|
||||||
<string name="pref_category_android_tv">Android TV</string>
|
<string name="pref_category_android_tv">Android TV</string>
|
||||||
<string name="android_tv_interface_on_seek_settings_summary">Množství vyhledávané doby při zobrazeném přehrávači</string>
|
<string name="android_tv_interface_on_seek_settings_summary">Množství vyhledávané doby při zobrazeném přehrávači</string>
|
||||||
|
<string name="test_log">Protokol</string>
|
||||||
|
<string name="category_provider_test">Test poskytovatele</string>
|
||||||
|
<string name="test_failed">Neúspěšné</string>
|
||||||
|
<string name="test_passed">Úspěšné</string>
|
||||||
|
<string name="restart">Restart</string>
|
||||||
|
<string name="start">Spustit</string>
|
||||||
|
<string name="stop">Zastavit</string>
|
||||||
|
<string name="subscription_in_progress_notification">Aktualizace odebíraných pořadů</string>
|
||||||
|
<string name="subscription_new">Přihlášeno k odběru %s</string>
|
||||||
|
<string name="subscription_deleted">Odhlášen odběr od %s</string>
|
||||||
|
<string name="subscription_episode_released">Byla vydána epizoda %d!</string>
|
||||||
|
<string name="subscription_list_name">Odebíráno</string>
|
||||||
|
<string name="jsdelivr_proxy">Proxy raw.githubusercontent.com</string>
|
||||||
|
<string name="jsdelivr_enabled">Nepodařilo se připojit ke GitHubu, povolování proxy jsdelivr.</string>
|
||||||
|
<string name="watch_quality_pref_data">Upřednostněná kvalita sledování (mobilní data)</string>
|
||||||
|
<string name="revert">Vrátit zpět</string>
|
||||||
|
<string name="jsdelivr_proxy_summary">Obchází blokování GitHubu pomocí jsdelivr, může způsobit zpoždění aktualizací o několik dní.</string>
|
||||||
|
<string name="pref_category_bypass">Obcházení ISP</string>
|
||||||
</resources>
|
</resources>
|
|
@ -53,7 +53,7 @@
|
||||||
<string name="type_dropped">Abgebrochen</string>
|
<string name="type_dropped">Abgebrochen</string>
|
||||||
<string name="type_plan_to_watch">Geplant</string>
|
<string name="type_plan_to_watch">Geplant</string>
|
||||||
<string name="type_none">Nichts</string>
|
<string name="type_none">Nichts</string>
|
||||||
<string name="type_re_watching">Erneut anschauen</string>
|
<string name="type_re_watching">Erneut schauen</string>
|
||||||
<string name="play_movie_button">Film abspielen</string>
|
<string name="play_movie_button">Film abspielen</string>
|
||||||
<string name="play_livestream_button">Livestream abspielen</string>
|
<string name="play_livestream_button">Livestream abspielen</string>
|
||||||
<string name="play_torrent_button">Torrent streamen</string>
|
<string name="play_torrent_button">Torrent streamen</string>
|
||||||
|
@ -212,7 +212,7 @@
|
||||||
<string name="no_subtitles">Keine Untertitel</string>
|
<string name="no_subtitles">Keine Untertitel</string>
|
||||||
<string name="default_subtitles">Standard</string>
|
<string name="default_subtitles">Standard</string>
|
||||||
<string name="free_storage">Frei</string>
|
<string name="free_storage">Frei</string>
|
||||||
<string name="used_storage">Benutzt</string>
|
<string name="used_storage">Belegt</string>
|
||||||
<string name="app_storage">App</string>
|
<string name="app_storage">App</string>
|
||||||
<string name="movies">Filme</string>
|
<string name="movies">Filme</string>
|
||||||
<string name="tv_series">TV-Serien</string>
|
<string name="tv_series">TV-Serien</string>
|
||||||
|
@ -263,7 +263,7 @@
|
||||||
<string name="dont_show_again">Nicht mehr anzeigen</string>
|
<string name="dont_show_again">Nicht mehr anzeigen</string>
|
||||||
<string name="skip_update">Update ignorieren</string>
|
<string name="skip_update">Update ignorieren</string>
|
||||||
<string name="update">Update</string>
|
<string name="update">Update</string>
|
||||||
<string name="watch_quality_pref">Bevorzugte Auflösung</string>
|
<string name="watch_quality_pref">Bevorzugte Videoqualität (WLAN)</string>
|
||||||
<string name="limit_title">Videoplayertitel max. Zeichen</string>
|
<string name="limit_title">Videoplayertitel max. Zeichen</string>
|
||||||
<string name="limit_title_rez">Videoplayer Auflösung</string>
|
<string name="limit_title_rez">Videoplayer Auflösung</string>
|
||||||
<string name="video_buffer_size_settings">Videopuffergröße</string>
|
<string name="video_buffer_size_settings">Videopuffergröße</string>
|
||||||
|
@ -284,7 +284,7 @@
|
||||||
<string name="resize_fill">Strecken</string>
|
<string name="resize_fill">Strecken</string>
|
||||||
<string name="resize_zoom">Vergrößern</string>
|
<string name="resize_zoom">Vergrößern</string>
|
||||||
<string name="legal_notice">Haftungsausschluss</string>
|
<string name="legal_notice">Haftungsausschluss</string>
|
||||||
<string name="category_general">General</string>
|
<string name="category_general">Allgemein</string>
|
||||||
<string name="random_button_settings">Zufalls-Button</string>
|
<string name="random_button_settings">Zufalls-Button</string>
|
||||||
<string name="random_button_settings_desc">Zufallsbutton auf der Startseite anzeigen</string>
|
<string name="random_button_settings_desc">Zufallsbutton auf der Startseite anzeigen</string>
|
||||||
<string name="provider_lang_settings">Anbieter-Sprachen</string>
|
<string name="provider_lang_settings">Anbieter-Sprachen</string>
|
||||||
|
@ -460,11 +460,11 @@
|
||||||
<string name="automatic_plugin_download_summary">Automatische Installation aller noch nicht installierten Plugins aus hinzugefügten Repositories.</string>
|
<string name="automatic_plugin_download_summary">Automatische Installation aller noch nicht installierten Plugins aus hinzugefügten Repositories.</string>
|
||||||
<string name="redo_setup_process">Einrichtungsvorgang wiederholen</string>
|
<string name="redo_setup_process">Einrichtungsvorgang wiederholen</string>
|
||||||
<string name="apk_installer_settings">APK-Installer</string>
|
<string name="apk_installer_settings">APK-Installer</string>
|
||||||
<string name="apk_installer_settings_des">Einige Telefone unterstützen das neue Installationsprogramm für Pakete nicht. Benutze die Legacy-Option, wenn sich die Updates nicht installieren lassen.</string>
|
<string name="apk_installer_settings_des">Einige Telefone unterstützen den neuen Package-Installer nicht. Benutze die Legacy-Option, wenn sich die Updates nicht installieren lassen.</string>
|
||||||
<string name="season_format">%s %d%s</string>
|
<string name="season_format">%s %d%s</string>
|
||||||
<string name="pref_category_links">Links</string>
|
<string name="pref_category_links">Links</string>
|
||||||
<string name="pref_category_app_updates">App-Updates</string>
|
<string name="pref_category_app_updates">App-Updates</string>
|
||||||
<string name="pref_category_backup">Back-Up</string>
|
<string name="pref_category_backup">Sicherung</string>
|
||||||
<string name="pref_category_extensions">Erweiterungen</string>
|
<string name="pref_category_extensions">Erweiterungen</string>
|
||||||
<string name="pref_category_actions">Wartung</string>
|
<string name="pref_category_actions">Wartung</string>
|
||||||
<string name="pref_category_cache">Cache</string>
|
<string name="pref_category_cache">Cache</string>
|
||||||
|
@ -506,4 +506,27 @@
|
||||||
<string name="empty_library_logged_in_message">Diese Liste scheint leer zu sein. Versuche, zu einer anderen Liste zu wechseln.</string>
|
<string name="empty_library_logged_in_message">Diese Liste scheint leer zu sein. Versuche, zu einer anderen Liste zu wechseln.</string>
|
||||||
<string name="safe_mode_file">Datei für abgesicherten Modus gefunden!
|
<string name="safe_mode_file">Datei für abgesicherten Modus gefunden!
|
||||||
\nBeim Start werden keine Erweiterungen geladen, bis die Datei entfernt wird.</string>
|
\nBeim Start werden keine Erweiterungen geladen, bis die Datei entfernt wird.</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings">Player ausgeblendet - Betrag zum vor- und zurückspulen</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings_summary">Der Betrag, welcher verwendet wird, wenn der Player eingeblendet ist</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings_summary">Der Betrag, welcher verwendet wird, wenn der Player ausgeblendet ist</string>
|
||||||
|
<string name="pref_category_android_tv">Android-TV</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings">Player eingeblendet - Betrag zum vor- und zurückspulen</string>
|
||||||
|
<string name="test_failed">Fehlgeschlagen</string>
|
||||||
|
<string name="test_passed">Erfolgreich</string>
|
||||||
|
<string name="category_provider_test">Anbieter-Test</string>
|
||||||
|
<string name="stop">Stopp</string>
|
||||||
|
<string name="test_log">Log</string>
|
||||||
|
<string name="start">Start</string>
|
||||||
|
<string name="restart">Neustarten</string>
|
||||||
|
<string name="watch_quality_pref_data">Bevorzugte Videoqualität (mobile Daten)</string>
|
||||||
|
<string name="jsdelivr_proxy_summary">Umgehung der GitHub Sperre mit jsdelivr, kann zu einigen Tagen Verzögerung bei Updates führen.</string>
|
||||||
|
<string name="subscription_new">%s abonniert</string>
|
||||||
|
<string name="subscription_deleted">%s deabonniert</string>
|
||||||
|
<string name="subscription_episode_released">Episode %d erschienen!</string>
|
||||||
|
<string name="jsdelivr_proxy">raw.githubusercontent.com Proxy</string>
|
||||||
|
<string name="jsdelivr_enabled">GitHub kann nicht erreicht werden, der jsdelivr-Proxy wird aktiviert.</string>
|
||||||
|
<string name="subscription_in_progress_notification">Aktualisierung abonnierter Sendungen</string>
|
||||||
|
<string name="revert">Rückgängig</string>
|
||||||
|
<string name="subscription_list_name">Abonniert</string>
|
||||||
|
<string name="pref_category_bypass">ISP-Umgehungen</string>
|
||||||
</resources>
|
</resources>
|
|
@ -150,7 +150,7 @@
|
||||||
<string name="episodes">Επεισόδια</string>
|
<string name="episodes">Επεισόδια</string>
|
||||||
<string name="episodes_range">%d-%d</string>
|
<string name="episodes_range">%d-%d</string>
|
||||||
<string name="episode_format" formatted="true">%d %s</string>
|
<string name="episode_format" formatted="true">%d %s</string>
|
||||||
<string name="season_short">Κ</string>
|
<string name="season_short">Σ</string>
|
||||||
<string name="episode_short">E</string>
|
<string name="episode_short">E</string>
|
||||||
<string name="no_episodes_found">Δεν βρέθηκαν επεισόδια</string>
|
<string name="no_episodes_found">Δεν βρέθηκαν επεισόδια</string>
|
||||||
<string name="delete_file">Διαγραφή αρχείου</string>
|
<string name="delete_file">Διαγραφή αρχείου</string>
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
<string name="pref_filter_search_quality">Ocultar la calidad de video en los resultados de búsqueda</string>
|
<string name="pref_filter_search_quality">Ocultar la calidad de video en los resultados de búsqueda</string>
|
||||||
<string name="pref_category_player_layout">Diseño</string>
|
<string name="pref_category_player_layout">Diseño</string>
|
||||||
<string name="category_ui">Diseño</string>
|
<string name="category_ui">Diseño</string>
|
||||||
<string name="watch_quality_pref">Calidad de visualización preferida</string>
|
<string name="watch_quality_pref">Calidad de visualización preferida (WiFi)</string>
|
||||||
<string name="player_pref">Reproductor de video preferido</string>
|
<string name="player_pref">Reproductor de video preferido</string>
|
||||||
<string name="emulator_layout">Diseño para emulador</string>
|
<string name="emulator_layout">Diseño para emulador</string>
|
||||||
<string name="app_layout">Diseño de la aplicación</string>
|
<string name="app_layout">Diseño de la aplicación</string>
|
||||||
|
@ -511,4 +511,22 @@
|
||||||
<string name="pref_category_android_tv">Android TV</string>
|
<string name="pref_category_android_tv">Android TV</string>
|
||||||
<string name="android_tv_interface_on_seek_settings_summary">La cantidad de búsqueda utilizada cuando la jugadora es visible</string>
|
<string name="android_tv_interface_on_seek_settings_summary">La cantidad de búsqueda utilizada cuando la jugadora es visible</string>
|
||||||
<string name="android_tv_interface_off_seek_settings_summary">La cantidad de búsqueda utilizada cuando el jugador está oculto</string>
|
<string name="android_tv_interface_off_seek_settings_summary">La cantidad de búsqueda utilizada cuando el jugador está oculto</string>
|
||||||
|
<string name="stop">Parar</string>
|
||||||
|
<string name="test_failed">Falló</string>
|
||||||
|
<string name="test_log">Registro</string>
|
||||||
|
<string name="start">Empezar</string>
|
||||||
|
<string name="test_passed">Aprobado</string>
|
||||||
|
<string name="category_provider_test">Prueba del proveedor</string>
|
||||||
|
<string name="restart">Reiniciar</string>
|
||||||
|
<string name="subscription_list_name">Suscrito</string>
|
||||||
|
<string name="subscription_new">Suscrito a %s</string>
|
||||||
|
<string name="subscription_deleted">Darse de baja de %s</string>
|
||||||
|
<string name="subscription_in_progress_notification">Actualizando los programas suscritos</string>
|
||||||
|
<string name="subscription_episode_released">¡Episodio %d publicado!</string>
|
||||||
|
<string name="jsdelivr_proxy">Proxy raw.githubusercontent.com</string>
|
||||||
|
<string name="jsdelivr_enabled">No se ha podido acceder a GitHub, activando el proxy jsdelivr.</string>
|
||||||
|
<string name="jsdelivr_proxy_summary">Evita el bloqueo de GitHub usando jsdelivr, puede causar que las actualizaciones se retrasen unos días.</string>
|
||||||
|
<string name="revert">Revertir</string>
|
||||||
|
<string name="pref_category_bypass">ISP Bypasses</string>
|
||||||
|
<string name="watch_quality_pref_data">Calidad de visualización preferida (Datos móviles)</string>
|
||||||
</resources>
|
</resources>
|
|
@ -6,12 +6,12 @@
|
||||||
<string name="title_downloads">Téléchargements</string>
|
<string name="title_downloads">Téléchargements</string>
|
||||||
<string name="title_settings">Paramètres</string>
|
<string name="title_settings">Paramètres</string>
|
||||||
<string name="search_hint">Rechercher…</string>
|
<string name="search_hint">Rechercher…</string>
|
||||||
<string name="search_poster_img_des">Miniature</string>
|
<string name="search_poster_img_des">Affiche</string>
|
||||||
<string name="no_data">Aucune Donnée</string>
|
<string name="no_data">Aucune Donnée</string>
|
||||||
<string name="episode_more_options_des">Plus d\'options</string>
|
<string name="episode_more_options_des">Plus d\'options</string>
|
||||||
<string name="go_back_img_des">Retour</string>
|
<string name="go_back_img_des">Retour</string>
|
||||||
<string name="next_episode">Épisode suivant</string>
|
<string name="next_episode">Épisode suivant</string>
|
||||||
<string name="result_poster_img_des">Miniature</string>
|
<string name="result_poster_img_des">Affiche</string>
|
||||||
<string name="result_tags">Genres</string>
|
<string name="result_tags">Genres</string>
|
||||||
<string name="result_share">Partager</string>
|
<string name="result_share">Partager</string>
|
||||||
<string name="result_open_in_browser">Ouvrir dans le navigateur</string>
|
<string name="result_open_in_browser">Ouvrir dans le navigateur</string>
|
||||||
|
@ -29,7 +29,7 @@
|
||||||
<string name="pick_subtitle">Sous-titres</string>
|
<string name="pick_subtitle">Sous-titres</string>
|
||||||
<string name="reload_error">Réessayer la connection…</string>
|
<string name="reload_error">Réessayer la connection…</string>
|
||||||
<string name="go_back">Retour</string>
|
<string name="go_back">Retour</string>
|
||||||
<string name="episode_poster_img_des">Miniature de l\'Épisode</string>
|
<string name="episode_poster_img_des">Affiche de l\'épisode</string>
|
||||||
<string name="play_episode">Lire l\'Épisode</string>
|
<string name="play_episode">Lire l\'Épisode</string>
|
||||||
<!--<string name="need_storage">Permet de télécharger les épisodes</string>-->
|
<!--<string name="need_storage">Permet de télécharger les épisodes</string>-->
|
||||||
<string name="download">Télécharger</string>
|
<string name="download">Télécharger</string>
|
||||||
|
@ -51,10 +51,10 @@
|
||||||
<string name="pref_disable_acra">Désactiver le rapport de bug automatique</string>
|
<string name="pref_disable_acra">Désactiver le rapport de bug automatique</string>
|
||||||
<string name="home_more_info">Plus d\'informations</string>
|
<string name="home_more_info">Plus d\'informations</string>
|
||||||
<string name="home_expanded_hide">Cacher</string>
|
<string name="home_expanded_hide">Cacher</string>
|
||||||
<string name="home_main_poster_img_des">Poster principal</string>
|
<string name="home_main_poster_img_des">Affiche principale</string>
|
||||||
<string name="home_play">Lecture</string>
|
<string name="home_play">Lecture</string>
|
||||||
<string name="home_info">Info</string>
|
<string name="home_info">Infos</string>
|
||||||
<string name="home_next_random_img_des">Suivant Aléatoire</string>
|
<string name="home_next_random_img_des">Aléatoire suivant</string>
|
||||||
<string name="home_change_provider_img_des">Changer le fournisseur</string>
|
<string name="home_change_provider_img_des">Changer le fournisseur</string>
|
||||||
<string name="filter_bookmarks">Filtrer les marques-pages</string>
|
<string name="filter_bookmarks">Filtrer les marques-pages</string>
|
||||||
<string name="error_bookmarks_text">Marque-pages</string>
|
<string name="error_bookmarks_text">Marque-pages</string>
|
||||||
|
@ -211,7 +211,7 @@
|
||||||
<string name="actor_background">Arrière plan</string>
|
<string name="actor_background">Arrière plan</string>
|
||||||
<string name="home_source">Source</string>
|
<string name="home_source">Source</string>
|
||||||
<string name="home_random">Aléatoire</string>
|
<string name="home_random">Aléatoire</string>
|
||||||
<string name="coming_soon">À venir …</string>
|
<string name="coming_soon">Bientôt disponible…</string>
|
||||||
<string name="poster_image">Image de l\'affiche</string>
|
<string name="poster_image">Image de l\'affiche</string>
|
||||||
<string name="authenticated_user">%s Connecté</string>
|
<string name="authenticated_user">%s Connecté</string>
|
||||||
<string name="action_add_to_bookmarks">Définir le statut de visionage</string>
|
<string name="action_add_to_bookmarks">Définir le statut de visionage</string>
|
||||||
|
@ -490,4 +490,22 @@
|
||||||
<string name="delayed_update_notice">L\'application sera mise à jour dès la fin de la session</string>
|
<string name="delayed_update_notice">L\'application sera mise à jour dès la fin de la session</string>
|
||||||
<string name="plugin_downloaded">Plugin Téléchargé</string>
|
<string name="plugin_downloaded">Plugin Téléchargé</string>
|
||||||
<string name="action_remove_from_watched">Retirer de la vue</string>
|
<string name="action_remove_from_watched">Retirer de la vue</string>
|
||||||
|
<string name="library">Bibliothèque</string>
|
||||||
|
<string name="browser">Navigateur</string>
|
||||||
|
<string name="sort">Trier</string>
|
||||||
|
<string name="sort_rating_asc">Note (basse à haute)</string>
|
||||||
|
<string name="sort_rating_desc">Note (haut à bas)</string>
|
||||||
|
<string name="sort_alphabetical_a">Alphabétique (A à Z)</string>
|
||||||
|
<string name="empty_library_no_accounts_message">On dirait que votre bibliothèque est vide :(
|
||||||
|
\nConnectez-vous à un compte ou ajoutez des séries à votre bibliothèque locale</string>
|
||||||
|
<string name="empty_library_logged_in_message">Il semble que cette liste soit vide, essayez d\'en choisir une autre</string>
|
||||||
|
<string name="pref_category_android_tv">Android TV</string>
|
||||||
|
<string name="sort_by">Trié par</string>
|
||||||
|
<string name="sort_alphabetical_z">Alphabétique (Z à A)</string>
|
||||||
|
<string name="select_library">Sélectionnez la bibliothèque</string>
|
||||||
|
<string name="open_with">Ouvrir avec</string>
|
||||||
|
<string name="sort_updated_new">Mis à jour (Nouveau vers ancien)</string>
|
||||||
|
<string name="sort_updated_old">Mis à jour (ancien vers nouveau)</string>
|
||||||
|
<string name="safe_mode_file">Fichier du mode sans échec trouvé !
|
||||||
|
\nAucune extension ne sera chargée au démarrage avant que le fichier ne soit enlevé.</string>
|
||||||
</resources>
|
</resources>
|
|
@ -531,4 +531,26 @@
|
||||||
<string name="empty_library_logged_in_message">Čini se da je ova lista prazna, pokušajte se prebaciti na drugu</string>
|
<string name="empty_library_logged_in_message">Čini se da je ova lista prazna, pokušajte se prebaciti na drugu</string>
|
||||||
<string name="safe_mode_file">Pronađena datoteka sigurnog načina rada!
|
<string name="safe_mode_file">Pronađena datoteka sigurnog načina rada!
|
||||||
\nNe učitavaju se ekstenzije pri pokretanju dok se datoteka ne ukloni.</string>
|
\nNe učitavaju se ekstenzije pri pokretanju dok se datoteka ne ukloni.</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings">Prikazan player- iznos preskakanja</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings_summary">Količina preskakanja koja se koristi kada je player vidljiv</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings">Player skriven - Količina preskakanja</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings_summary">Količina preskakanja koja se koristi kada je player skriven</string>
|
||||||
|
<string name="pref_category_android_tv">Android TV</string>
|
||||||
|
<string name="test_passed">Prošlo</string>
|
||||||
|
<string name="restart">Restart</string>
|
||||||
|
<string name="test_log">Log</string>
|
||||||
|
<string name="start">Početak</string>
|
||||||
|
<string name="test_failed">Neuspješno</string>
|
||||||
|
<string name="stop">Stop</string>
|
||||||
|
<string name="category_provider_test">Test pružatelja usluga</string>
|
||||||
|
<string name="subscription_in_progress_notification">Ažuriram pretplaćene serije</string>
|
||||||
|
<string name="subscription_episode_released">Epizoda %d izbačena!</string>
|
||||||
|
<string name="subscription_list_name">Pretplaćeno</string>
|
||||||
|
<string name="subscription_new">Pretplaćen na %s</string>
|
||||||
|
<string name="subscription_deleted">Otkazana pretplata sa %s</string>
|
||||||
|
<string name="revert">Vraćanje</string>
|
||||||
|
<string name="pref_category_bypass">ISP zaobilaznice</string>
|
||||||
|
<string name="jsdelivr_proxy">raw.githubusercontent.com Proxy</string>
|
||||||
|
<string name="jsdelivr_enabled">Neuspješno dohvaćanje GitHuba, omogućavanje jsdelivr proxyja.</string>
|
||||||
|
<string name="jsdelivr_proxy_summary">Zaobilazi blokiranje GitHuba pomoću jsdelivr, može uzrokovati odgode ažuriranja za nekoliko dana.</string>
|
||||||
</resources>
|
</resources>
|
|
@ -35,7 +35,7 @@
|
||||||
<string name="skip_loading">Skip Loading</string>
|
<string name="skip_loading">Skip Loading</string>
|
||||||
<string name="loading">Loading…</string>
|
<string name="loading">Loading…</string>
|
||||||
<string name="type_watching">Sedang Menonton</string>
|
<string name="type_watching">Sedang Menonton</string>
|
||||||
<string name="type_on_hold">Tertahan</string>
|
<string name="type_on_hold">Tertunda</string>
|
||||||
<string name="type_completed">Selesai</string>
|
<string name="type_completed">Selesai</string>
|
||||||
<string name="type_dropped">Dihentikan</string>
|
<string name="type_dropped">Dihentikan</string>
|
||||||
<string name="type_plan_to_watch">Rencana untuk Menonton</string>
|
<string name="type_plan_to_watch">Rencana untuk Menonton</string>
|
||||||
|
@ -387,7 +387,7 @@
|
||||||
<string name="episode_format" formatted="true">%d %s</string>
|
<string name="episode_format" formatted="true">%d %s</string>
|
||||||
<string name="nsfw">17+</string>
|
<string name="nsfw">17+</string>
|
||||||
<string name="others">Lainnya</string>
|
<string name="others">Lainnya</string>
|
||||||
<string name="other_singular">Vidio</string>
|
<string name="other_singular">Video</string>
|
||||||
<string name="add_site_pref">Duplikasi Website</string>
|
<string name="add_site_pref">Duplikasi Website</string>
|
||||||
<string name="add_site_summary">Duplikasi website yang telah ada, dengan alamat berbeda</string>
|
<string name="add_site_summary">Duplikasi website yang telah ada, dengan alamat berbeda</string>
|
||||||
<string name="pref_category_links">Tautan</string>
|
<string name="pref_category_links">Tautan</string>
|
||||||
|
@ -395,7 +395,7 @@
|
||||||
<string name="pref_category_backup">Cadangkan</string>
|
<string name="pref_category_backup">Cadangkan</string>
|
||||||
<string name="pref_category_extensions">Fitur Tambahan</string>
|
<string name="pref_category_extensions">Fitur Tambahan</string>
|
||||||
<string name="play_with_app_name">Putar di CloudStream</string>
|
<string name="play_with_app_name">Putar di CloudStream</string>
|
||||||
<string name="pref_filter_search_quality">Sembunyikan kualitas vidio terpilih di pencarian</string>
|
<string name="pref_filter_search_quality">Sembunyikan kualitas video terpilih di pencarian</string>
|
||||||
<string name="season_format">%s %d%s</string>
|
<string name="season_format">%s %d%s</string>
|
||||||
<string name="livestreams">Siaran langsung</string>
|
<string name="livestreams">Siaran langsung</string>
|
||||||
<string name="remove_site_pref">Hapus Website</string>
|
<string name="remove_site_pref">Hapus Website</string>
|
||||||
|
@ -444,7 +444,7 @@
|
||||||
<string name="extension_rating" formatted="true">Peringkat: %s</string>
|
<string name="extension_rating" formatted="true">Peringkat: %s</string>
|
||||||
<string name="extension_authors">Pembuat</string>
|
<string name="extension_authors">Pembuat</string>
|
||||||
<string name="extension_language">Bahasa</string>
|
<string name="extension_language">Bahasa</string>
|
||||||
<string name="player_pref">Pemutar vidio utama</string>
|
<string name="player_pref">Pemutar video utama</string>
|
||||||
<string name="player_settings_play_in_app">Pemutar Bawaan</string>
|
<string name="player_settings_play_in_app">Pemutar Bawaan</string>
|
||||||
<string name="player_settings_play_in_vlc">VLC</string>
|
<string name="player_settings_play_in_vlc">VLC</string>
|
||||||
<string name="player_settings_play_in_mpv">MPV</string>
|
<string name="player_settings_play_in_mpv">MPV</string>
|
||||||
|
@ -475,7 +475,7 @@
|
||||||
<string name="subtitles_remove_captions">Hapus teks tertutup dari subtitel</string>
|
<string name="subtitles_remove_captions">Hapus teks tertutup dari subtitel</string>
|
||||||
<string name="subtitles_remove_bloat">Hapus karakter sampah dari subtitel</string>
|
<string name="subtitles_remove_bloat">Hapus karakter sampah dari subtitel</string>
|
||||||
<string name="audio_tracks">Audio Trek</string>
|
<string name="audio_tracks">Audio Trek</string>
|
||||||
<string name="video_tracks">Vidio Trek</string>
|
<string name="video_tracks">Video Trek</string>
|
||||||
<string name="extension_types">Dukungan</string>
|
<string name="extension_types">Dukungan</string>
|
||||||
<string name="hls_playlist">Daftar putar HLS</string>
|
<string name="hls_playlist">Daftar putar HLS</string>
|
||||||
<string name="apk_installer_settings">Penginstal APK</string>
|
<string name="apk_installer_settings">Penginstal APK</string>
|
||||||
|
@ -529,4 +529,26 @@
|
||||||
<string name="empty_library_logged_in_message">Yahh daftar ini kosong, coba ganti ke yang lain</string>
|
<string name="empty_library_logged_in_message">Yahh daftar ini kosong, coba ganti ke yang lain</string>
|
||||||
<string name="safe_mode_file">Mode aman file ditemukan!
|
<string name="safe_mode_file">Mode aman file ditemukan!
|
||||||
\nTidak memuat ekstensi pada startup sampai berkas dihapus.</string>
|
\nTidak memuat ekstensi pada startup sampai berkas dihapus.</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings">Sembunyikan Pemutaran - Geser</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings">Pemutar terlihat - Geser</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings_summary">Geser untuk menghilangkan</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings_summary">Geser untuk menghilangkan</string>
|
||||||
|
<string name="pref_category_android_tv">Android TV</string>
|
||||||
|
<string name="test_log">Log</string>
|
||||||
|
<string name="test_passed">Berhasil</string>
|
||||||
|
<string name="category_provider_test">Tes provider</string>
|
||||||
|
<string name="stop">Berhenti</string>
|
||||||
|
<string name="start">Mulai</string>
|
||||||
|
<string name="restart">Mulai lagi</string>
|
||||||
|
<string name="test_failed">Gagal</string>
|
||||||
|
<string name="subscription_in_progress_notification">Memperbarui acara langganan</string>
|
||||||
|
<string name="subscription_list_name">Berlangganan</string>
|
||||||
|
<string name="subscription_new">Berlangganan ke %s</string>
|
||||||
|
<string name="subscription_deleted">Berhenti berlangganan di %s</string>
|
||||||
|
<string name="subscription_episode_released">Episode %d telah rilis!</string>
|
||||||
|
<string name="jsdelivr_proxy">raw.githubusercontent.com Proksi</string>
|
||||||
|
<string name="jsdelivr_enabled">Gagal mencapai GitHub, mengaktifkan proksi jsdelivr.</string>
|
||||||
|
<string name="jsdelivr_proxy_summary">Bypass pemblokiran Github menggunakan JSDeliVR, dapat menyebabkan pembaruan tertunda beberapa hari.</string>
|
||||||
|
<string name="pref_category_bypass">Bypass ISP</string>
|
||||||
|
<string name="revert">Pulihkan</string>
|
||||||
</resources>
|
</resources>
|
|
@ -528,4 +528,26 @@
|
||||||
<string name="empty_library_logged_in_message">Sembra che questa lista sia vuota, prova a passare a un\'altra</string>
|
<string name="empty_library_logged_in_message">Sembra che questa lista sia vuota, prova a passare a un\'altra</string>
|
||||||
<string name="safe_mode_file">File \"safe mode\" trovato!
|
<string name="safe_mode_file">File \"safe mode\" trovato!
|
||||||
\nAll\'avvio non sarà caricata alcuna estensione finchè il file non verrà rimosso.</string>
|
\nAll\'avvio non sarà caricata alcuna estensione finchè il file non verrà rimosso.</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings_summary">Quantità di ricerca usata quando il player è nascosto</string>
|
||||||
|
<string name="pref_category_android_tv">TV Android</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings_summary">Quantità di ricerca usata quando il player è visibile</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings">Player visibile - Quantità di ricerca</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings">Player nascosto - Quantità di ricerca</string>
|
||||||
|
<string name="test_log">Registro</string>
|
||||||
|
<string name="start">Avvia</string>
|
||||||
|
<string name="category_provider_test">Test del provider</string>
|
||||||
|
<string name="restart">Riavvia</string>
|
||||||
|
<string name="stop">Ferma</string>
|
||||||
|
<string name="test_passed">Superato</string>
|
||||||
|
<string name="test_failed">Fallito</string>
|
||||||
|
<string name="jsdelivr_proxy">Proxy raw.githubusercontent.com</string>
|
||||||
|
<string name="subscription_deleted">Disiscritto da %s</string>
|
||||||
|
<string name="subscription_list_name">Iscritto</string>
|
||||||
|
<string name="subscription_new">Iscritto a %s</string>
|
||||||
|
<string name="jsdelivr_enabled">Impossibile contattare GitHub, abilitazione proxy jsdelivr avviata.</string>
|
||||||
|
<string name="jsdelivr_proxy_summary">Bypassa il blocco di GitHub utilizzando jsdelivr, potrebbe causare un ritardo di alcuni giorni.</string>
|
||||||
|
<string name="pref_category_bypass">Baypass ISP</string>
|
||||||
|
<string name="revert">Ripristina</string>
|
||||||
|
<string name="subscription_in_progress_notification">Aggiornando shows a cui sei iscritto</string>
|
||||||
|
<string name="subscription_episode_released">L\'episodio %d è stato rilasciato!</string>
|
||||||
</resources>
|
</resources>
|
185
app/src/main/res/values-ja/strings.xml
Normal file
185
app/src/main/res/values-ja/strings.xml
Normal file
|
@ -0,0 +1,185 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<string name="next_episode_time_min_format" formatted="true">%d分</string>
|
||||||
|
<string name="title_downloads">ダウンロード</string>
|
||||||
|
<string name="title_search">検索</string>
|
||||||
|
<string name="title_settings">設定</string>
|
||||||
|
<string name="result_share">シェア</string>
|
||||||
|
<string name="movies">映画</string>
|
||||||
|
<string name="title_home">ホーム</string>
|
||||||
|
<string name="library">ライブラリ</string>
|
||||||
|
<string name="home_play">再生</string>
|
||||||
|
<string name="next_episode_time_day_format" formatted="true">%d日 %d時間%d分</string>
|
||||||
|
<string name="next_episode_time_hour_format" formatted="true">%d時間%d分</string>
|
||||||
|
<string name="search_hint">検索…</string>
|
||||||
|
<string name="download">ダウンロード</string>
|
||||||
|
<string name="home_info">情報</string>
|
||||||
|
<string name="season">シーズン</string>
|
||||||
|
<string name="trailer">予告編</string>
|
||||||
|
<string name="tv_series_singular">シリーズ</string>
|
||||||
|
<string name="episodes">エピソード</string>
|
||||||
|
<string name="player_speed_text_format" formatted="true">再生速度 (%.2fx)</string>
|
||||||
|
<string name="next_episode">次のエピソード</string>
|
||||||
|
<string name="sort_apply">適用</string>
|
||||||
|
<string name="category_account">アカウント</string>
|
||||||
|
<string name="cartoons">カートゥーン</string>
|
||||||
|
<string name="tv_series">TVシリーズ</string>
|
||||||
|
<string name="torrent">トレント</string>
|
||||||
|
<string name="documentaries">ドキュメンタリー</string>
|
||||||
|
<string name="ova">OVA</string>
|
||||||
|
<string name="asian_drama">アジアドラマ</string>
|
||||||
|
<string name="livestreams">ライブ配信</string>
|
||||||
|
<string name="movies_singular">映画</string>
|
||||||
|
<string name="others">その他</string>
|
||||||
|
<string name="cartoons_singular">カートゥーン</string>
|
||||||
|
<string name="torrent_singular">トレント</string>
|
||||||
|
<string name="documentaries_singular">ドキュメンタリー</string>
|
||||||
|
<string name="asian_drama_singular">アジアドラマ</string>
|
||||||
|
<string name="live_singular">ライブ配信</string>
|
||||||
|
<string name="nsfw_singular">NSFW</string>
|
||||||
|
<string name="sort_cancel">キャンセル</string>
|
||||||
|
<string name="anime">アニメ</string>
|
||||||
|
<string name="video_lock">ロック</string>
|
||||||
|
<string name="video_source">ソース</string>
|
||||||
|
<string name="nsfw">NSFW</string>
|
||||||
|
<string name="clear_history">履歴を削除</string>
|
||||||
|
<string name="continue_watching">視聴中コンテンツ</string>
|
||||||
|
<string name="category_general">全般</string>
|
||||||
|
<string name="other_singular">動画</string>
|
||||||
|
<string name="category_player">プレーヤー</string>
|
||||||
|
<string name="type_plan_to_watch">懐う</string>
|
||||||
|
<string name="play_trailer_button">予告編を再生</string>
|
||||||
|
<string name="episode_short">エピソード</string>
|
||||||
|
<string name="type_watching">視聴</string>
|
||||||
|
<string name="result_tags">ジャンル</string>
|
||||||
|
<string name="play_movie_button">映画を再生</string>
|
||||||
|
<string name="pick_subtitle">字幕</string>
|
||||||
|
<string name="app_name">CloudStream</string>
|
||||||
|
<string name="play_with_app_name">CloudStreamで再生</string>
|
||||||
|
<string name="browser">ブラウザ</string>
|
||||||
|
<string name="type_completed">完成</string>
|
||||||
|
<string name="type_dropped">放置</string>
|
||||||
|
<string name="type_on_hold">保留</string>
|
||||||
|
<string name="loading">ローディング…</string>
|
||||||
|
<string name="result_open_in_browser">ブラウザで開く</string>
|
||||||
|
<string name="season_short">シーズン</string>
|
||||||
|
<string name="resume_time_left" formatted="true">残り
|
||||||
|
\n%d分</string>
|
||||||
|
<string name="play_episode">再生エピソード</string>
|
||||||
|
<string name="downloaded">ダウンロード済</string>
|
||||||
|
<string name="pref_category_backup">バックアップ</string>
|
||||||
|
<string name="home_source">ソース</string>
|
||||||
|
<string name="history">履歴</string>
|
||||||
|
<string name="result_poster_img_des">ポスター</string>
|
||||||
|
<string name="type_none">なし</string>
|
||||||
|
<string name="sort_copy">コピー</string>
|
||||||
|
<string name="sort_close">閉じる</string>
|
||||||
|
<string name="sort_save">保存</string>
|
||||||
|
<string name="sort_clear">消去</string>
|
||||||
|
<string name="app_dub_sub_episode_text_format" formatted="true">%sエピ%d</string>
|
||||||
|
<string name="cast_format" formatted="true">出演者:%s</string>
|
||||||
|
<string name="search_poster_img_des">ポスター</string>
|
||||||
|
<string name="episode_poster_img_des">エピソードポスター</string>
|
||||||
|
<string name="home_main_poster_img_des">主要ポスター</string>
|
||||||
|
<string name="home_next_random_img_des">次のランダム</string>
|
||||||
|
<string name="go_back_img_des">戻り</string>
|
||||||
|
<string name="rated_format" formatted="true">視聴率 %.1f</string>
|
||||||
|
<string name="new_update_format" formatted="true">新しいアップデートを発見!
|
||||||
|
\n%s -> %s</string>
|
||||||
|
<string name="duration_format" formatted="true">%d分</string>
|
||||||
|
<string name="search_hint_site" formatted="true">%sを検索…</string>
|
||||||
|
<string name="pick_source">ソース</string>
|
||||||
|
<string name="filler" formatted="true">ろくごうきじ</string>
|
||||||
|
<string name="reload_error">接続を再試行…</string>
|
||||||
|
<string name="go_back">戻り</string>
|
||||||
|
<string name="action_remove_from_bookmarks">削除</string>
|
||||||
|
<string name="home_more_info">詳細情報</string>
|
||||||
|
<string name="home_expanded_hide">閉じる</string>
|
||||||
|
<string name="category_updates">アップデート・バックアップ</string>
|
||||||
|
<string name="app_language">アプリ言語</string>
|
||||||
|
<string name="github">GitHub(ギットハブ)</string>
|
||||||
|
<string name="go_back_30">-30</string>
|
||||||
|
<string name="go_forward_30">+30</string>
|
||||||
|
<string name="legal_notice">免責</string>
|
||||||
|
<string name="pref_category_extensions">拡張機能</string>
|
||||||
|
<string name="pref_category_app_updates">アプリ更新</string>
|
||||||
|
<string name="category_providers">提供者</string>
|
||||||
|
<string name="pref_category_subtitles">字幕</string>
|
||||||
|
<string name="pref_category_ui_features">特徴</string>
|
||||||
|
<string name="pref_category_defaults">デフォルト</string>
|
||||||
|
<string name="automatic">自動</string>
|
||||||
|
<string name="home_random">任意</string>
|
||||||
|
<string name="extensions">拡張機能</string>
|
||||||
|
<string name="pref_category_links">リンク</string>
|
||||||
|
<string name="pref_category_android_tv">Android TV</string>
|
||||||
|
<string name="login">ログイン</string>
|
||||||
|
<string name="logout">ログアウト</string>
|
||||||
|
<string name="max">最大</string>
|
||||||
|
<string name="min">最小</string>
|
||||||
|
<string name="none">なし</string>
|
||||||
|
<string name="next">次</string>
|
||||||
|
<string name="is_adult">18+</string>
|
||||||
|
<string name="no">否</string>
|
||||||
|
<string name="open_with">で開く</string>
|
||||||
|
<string name="episode">エピソード</string>
|
||||||
|
<string name="duration">時間</string>
|
||||||
|
<string name="synopsis">概要</string>
|
||||||
|
<string name="site">サイト</string>
|
||||||
|
<string name="used_storage">使用</string>
|
||||||
|
<string name="app_storage">アプリ</string>
|
||||||
|
<string name="action_open_watching">詳細情報</string>
|
||||||
|
<string name="action_remove_watching">削除</string>
|
||||||
|
<string name="picture_in_picture">ピクチャーインピクチャー</string>
|
||||||
|
<string name="player_subtitles_settings">字幕</string>
|
||||||
|
<string name="settings_info">情報</string>
|
||||||
|
<string name="pause">一時停止</string>
|
||||||
|
<string name="play_episode_toast">再生エピソード</string>
|
||||||
|
<string name="delete">削除</string>
|
||||||
|
<string name="start">開始</string>
|
||||||
|
<string name="status">状態</string>
|
||||||
|
<string name="year">年</string>
|
||||||
|
<string name="resume">再開</string>
|
||||||
|
<string name="test_failed">失敗</string>
|
||||||
|
<string name="test_passed">合格</string>
|
||||||
|
<string name="free_storage">空き</string>
|
||||||
|
<string name="status_completed">完成</string>
|
||||||
|
<string name="status_ongoing">進行中</string>
|
||||||
|
<string name="normal">デフォルト</string>
|
||||||
|
<string name="player_settings_play_in_browser">ウェブブラウザ</string>
|
||||||
|
<string name="player_settings_play_in_vlc">VLC</string>
|
||||||
|
<string name="player_settings_play_in_mpv">MPV</string>
|
||||||
|
<string name="extension_language">言語</string>
|
||||||
|
<string name="extension_authors">作成者</string>
|
||||||
|
<string name="extension_size">サイズ</string>
|
||||||
|
<string name="extension_status">状態</string>
|
||||||
|
<string name="extension_version">バージョン</string>
|
||||||
|
<string name="extension_rating" formatted="true">視聴率 %s</string>
|
||||||
|
<string name="rating">視聴率</string>
|
||||||
|
<string name="default_subtitles">デフォルト</string>
|
||||||
|
<string name="download_failed">ダウンロード失敗</string>
|
||||||
|
<string name="download_started">ダウンロード開始</string>
|
||||||
|
<string name="download_done">ダウンロード完了</string>
|
||||||
|
<string name="download_canceled">ダウンロード終了</string>
|
||||||
|
<string name="stream">ストリーム</string>
|
||||||
|
<string name="update_started">アップデート開始</string>
|
||||||
|
<string name="no_season">シーズンなし</string>
|
||||||
|
<string name="no_subtitles">字幕なし</string>
|
||||||
|
<string name="video_aspect_ratio_resize">アスペクト比</string>
|
||||||
|
<string name="skip_loading">ロードをスキップする</string>
|
||||||
|
<string name="episode_more_options_des">その他のオプション</string>
|
||||||
|
<string name="no_data">データなし</string>
|
||||||
|
<string name="downloading">ダウンロード中</string>
|
||||||
|
<string name="error_bookmarks_text">ブックマーク</string>
|
||||||
|
<string name="download_storage_text">内部記憶装置</string>
|
||||||
|
<string name="download_paused">ダウンロードが一時停止</string>
|
||||||
|
<string name="provider_info_meta">メタデータはこのサイトでは提供されません。メタデータがサイト上に存在しない場合、ビデオの読み込みに失敗します。</string>
|
||||||
|
<string name="torrent_plot">記述</string>
|
||||||
|
<string name="show_log_cat">Logcat 🐈を表示</string>
|
||||||
|
<string name="test_log">ログ</string>
|
||||||
|
<string name="search">検索</string>
|
||||||
|
<string name="discord">Discordに参加</string>
|
||||||
|
<string name="update">アップデート</string>
|
||||||
|
<string name="check_for_update">アップデートを確認</string>
|
||||||
|
<string name="show_title">作品名</string>
|
||||||
|
<string name="update_notification_installing">アプリのアップデートをインストール中…</string>
|
||||||
|
</resources>
|
|
@ -1,3 +1,128 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<resources>
|
<resources>
|
||||||
|
<string name="app_dub_sub_episode_text_format" formatted="true">%sಎಪಿ%d</string>
|
||||||
|
<string name="cast_format" formatted="true">ಕ್ಯಾಸ್ಟ್:%s</string>
|
||||||
|
<string name="go_back_img_des">ಹಿಂದೆ ಹೋಗು</string>
|
||||||
|
<string name="filler" formatted="true">ಫಿಲ್ಲರ್</string>
|
||||||
|
<string name="title_search">ಹುಡುಕು</string>
|
||||||
|
<string name="title_downloads">ಡೌನ್ಲೋಡ್</string>
|
||||||
|
<string name="subs_font">ಫಾಂಟ್</string>
|
||||||
|
<string name="search_provider_text_providers">ಪೂರೈಕೆದಾರರನ್ನು ಬಳಸಿಕೊಂಡು ಹುಡುಕಿ</string>
|
||||||
|
<string name="search_provider_text_types">ಪ್ರಕಾರಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಹುಡುಕಿ</string>
|
||||||
|
<string name="benene_count_text_none">ಯಾವುದೇ ಬೆನೆನ್ಸ್ ನೀಡಿಲ್ಲ</string>
|
||||||
|
<string name="subs_auto_select_language">ಸ್ವಯಂ-ಆಯ್ಕೆ ಭಾಷೆ</string>
|
||||||
|
<string name="action_open_watching">ಹೆಚ್ಚಿನ ಮಾಹಿತಿ</string>
|
||||||
|
<string name="action_open_play">\@ಸ್ಟ್ರಿಂಗ್/ಹೋಮ್_ಪ್ಲೇ</string>
|
||||||
|
<string name="vpn_might_be_needed">ಈ ಪೂರೈಕೆದಾರರು ಸರಿಯಾಗಿ ಕೆಲಸ ಮಾಡಲು VPN ಬೇಕಾಗಬಹುದು</string>
|
||||||
|
<string name="player_size_settings_des">ಕಪ್ಪು ಗಡಿಗಳನ್ನು ತೆಗೆದುಹಾಕಿ</string>
|
||||||
|
<string name="next_episode_format" formatted="true">ಸಂಚಿಕೆ%d ಬಿಡುಗಡೆಯಾಗಲಿದೆ</string>
|
||||||
|
<string name="next_episode_time_hour_format" formatted="true">%dh %dm</string>
|
||||||
|
<string name="result_poster_img_des">ಪೋಸ್ಟರ್</string>
|
||||||
|
<string name="search_poster_img_des">ಪೋಸ್ಟರ್</string>
|
||||||
|
<string name="episode_poster_img_des">ಸಂಚಿಕೆ ಪೋಸ್ಟರ್</string>
|
||||||
|
<string name="home_main_poster_img_des">ಮೇನ್ ಪೋಸ್ಟರ್</string>
|
||||||
|
<string name="update_started">ಅಪ್ಡೇಟ್ ಪ್ರಾರಂಭವಾಗಿದೆ</string>
|
||||||
|
<string name="error_loading_links_toast">ಲೋಡಿಂಗ್ ಲಿಂಕ್ ಎರರ್ ಬಂದಿದೆ</string>
|
||||||
|
<string name="download_storage_text">ಇಂಟರ್ನಲ್ ಸ್ಟೋರೇಜ್</string>
|
||||||
|
<string name="app_dubbed_text">ಡಬ್</string>
|
||||||
|
<string name="app_subbed_text">ಸಬ್</string>
|
||||||
|
<string name="pref_disable_acra">ಸ್ವಯಂಚಾಲಿತ ದೋಷ ವರದಿಯನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ</string>
|
||||||
|
<string name="home_expanded_hide">ಹೈಡ್</string>
|
||||||
|
<string name="home_play">ಪ್ಲೇ</string>
|
||||||
|
<string name="home_info">ಮಾಹಿತಿ</string>
|
||||||
|
<string name="action_add_to_bookmarks">ಸೆಟ್ ವಾಚ್ ಸ್ಟೇಟಸ್</string>
|
||||||
|
<string name="sort_apply">ಅನ್ವಯಿಸು</string>
|
||||||
|
<string name="sort_cancel">ರದ್ದುಮಾಡು</string>
|
||||||
|
<string name="subs_subtitle_elevation">ಸಬ್ ಟೈಟಲ್ಸ್ ಎಲೆವಷನ್</string>
|
||||||
|
<string name="subs_font_size">ಫಾಂಟ್ ಸೈಜ್</string>
|
||||||
|
<string name="subs_subtitle_languages">ಸಬ್ ಟೈಟಲ್ಸ್ ಭಾಷೆ</string>
|
||||||
|
<string name="action_remove_watching">ತೆಗೆದುಹಾಕಿ</string>
|
||||||
|
<string name="vpn_torrent">ಈ ಪೂರೈಕೆದಾರರು ಟೊರೆಂಟ್ ಆಗಿದೆ, VPN ಅನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ</string>
|
||||||
|
<string name="normal_no_plot">ಯಾವುದೇ ಪ್ಲಾಟ್ ಕಂಡುಬಂದಿಲ್ಲ</string>
|
||||||
|
<string name="show_log_cat">ಲಾಗ್ಕ್ಯಾಟ್ 🐈 ತೋರಿಸಿ</string>
|
||||||
|
<string name="test_log">ಲಾಗ್</string>
|
||||||
|
<string name="picture_in_picture">ಚಿತ್ರದಲ್ಲಿ-ಚಿತ್ರದಲ್ಲಿ</string>
|
||||||
|
<string name="player_size_settings">ಪ್ಲೇಯರ್ ಮರುಗಾತ್ರಗೊಳಿಸಿ ಬಟನ್</string>
|
||||||
|
<string name="player_subtitles_settings">ಸಬ್ ಟೈಟಲ್ಸ್</string>
|
||||||
|
<string name="player_subtitles_settings_des">ಪ್ಲೇಯರ್ ಸಬ್ ಟೈಟಲ್ಸ್ ಸೆಟ್ಟಿಂಗ್ಗಳು</string>
|
||||||
|
<string name="chromecast_subtitles_settings_des">ಕ್ರೋಮ್ ಕ್ಯಾಸ್ಟ್ ಸಬ್ ಟೈಟಲ್ಸ್ ಸೆಟ್ಟಿಂಗ್ಸ್</string>
|
||||||
|
<string name="go_back">ಹಿಂದೆ ಹೋಗು</string>
|
||||||
|
<string name="popup_pause_download">ಡೌನ್ಲೋಡ್ ವಿರಾಮಗೊಳಿಸಿ</string>
|
||||||
|
<string name="error_bookmarks_text">ಬುಕ್ಮಾರ್ಕ್</string>
|
||||||
|
<string name="subs_background_color">ಬ್ಯಾಕ್ ಗ್ರೌಂಡ್ ಕಲರ್</string>
|
||||||
|
<string name="benene_count_text">%d ಡೇವ್ಗಳಿಗೆ ಬೆನೆನೆಸ್ ನೀಡಲಾಗಿದೆ</string>
|
||||||
|
<string name="subs_hold_to_reset_to_default">ಡೀಫಾಲ್ಟ್ಗೆ ಮರುಹೊಂದಿಸಲು ಹಿಡಿದುಕೊಳ್ಳಿ</string>
|
||||||
|
<string name="provider_info_meta">ಸೈಟ್ನಿಂದ ಮೆಟಾಡೇಟಾವನ್ನು ಒದಗಿಸಲಾಗಿಲ್ಲ, ಅದು ಸೈಟ್ನಲ್ಲಿ ಅಸ್ತಿತ್ವದಲ್ಲಿಲ್ಲದಿದ್ದರೆ ವೀಡಿಯೊ ಲೋಡಿಂಗ್ ವಿಫಲಗೊಳ್ಳುತ್ತದೆ.</string>
|
||||||
|
<string name="picture_in_picture_des">ಇತರ ಅಪ್ಲಿಕೇಶನ್ಗಳ ಮೇಲೆ ಚಿಕಣಿ ಪ್ಲೇಯರ್ನಲ್ಲಿ ಪ್ಲೇಬ್ಯಾಕ್ ಅನ್ನು ಮುಂದುವರಿಸುತ್ತದೆ</string>
|
||||||
|
<string name="chromecast_subtitles_settings">ಕ್ರೋಮ್ ಕ್ಯಾಸ್ಟ್ ಸಬ್ ಟೈಟಲ್ಸ್</string>
|
||||||
|
<string name="rated_format" formatted="true">ರೇಟೆಡ್:%.1f</string>
|
||||||
|
<string name="action_remove_from_bookmarks">ತೆಗೆದುಹಾಕಿ</string>
|
||||||
|
<string name="popup_resume_download">ಡೌನ್ಲೋಡ್ ಅನ್ನು ಪುನರಾರಂಭಿಸಿ</string>
|
||||||
|
<string name="sort_close">ಕ್ಲೋಸ್</string>
|
||||||
|
<string name="sort_clear">ಕ್ಲಿಯರ್</string>
|
||||||
|
<string name="sort_save">ಸೇವ್</string>
|
||||||
|
<string name="subtitles_settings">ಸಬ್ ಟೈಟಲ್ಸ್ ಸೆಟ್ಟಿಂಗ್ಸ್</string>
|
||||||
|
<string name="popup_play_file">ಫೈಲ್ ಪ್ಲೇ</string>
|
||||||
|
<string name="subs_text_color">ಟೆಕ್ಸ್ಟ್ ಕಲರ್</string>
|
||||||
|
<string name="subs_outline_color">ಔಟ್ ಲೈನ್ ಕಲರ್</string>
|
||||||
|
<string name="subs_window_color">ವಿಂಡೋ ಕಲರ್</string>
|
||||||
|
<string name="subs_edge_type">ಎಡ್ಜ್ ಟೈಪ್</string>
|
||||||
|
<string name="home_change_provider_img_des">ಪ್ರೊವೈಡರ್ ಬದಲಾಯಿಸಿ</string>
|
||||||
|
<string name="duration_format" formatted="true">%dಮಿನ</string>
|
||||||
|
<string name="torrent_plot">ವಿವರಣೆ</string>
|
||||||
|
<string name="player_speed_text_format" formatted="true">ಸ್ಪೀಡ್(%.2fx)</string>
|
||||||
|
<string name="title_home">ಹೋಂ</string>
|
||||||
|
<string name="pick_subtitle">ಸಬ್ ಟೈಟಲ್ಸ್</string>
|
||||||
|
<string name="title_settings">ಸೆಟ್ಟಿಂಗ್ಸ್</string>
|
||||||
|
<string name="filter_bookmarks">ಬುಕ್ಮಾರ್ಕ್ಗಳನ್ನು ಫಿಲ್ಟರ್ ಮಾಡಿ</string>
|
||||||
|
<string name="search_hint">ಹುಡುಕು…</string>
|
||||||
|
<string name="play_movie_button">ಚಲನಚಿತ್ರವನ್ನು ಪ್ಲೇ ಮಾಡಿ</string>
|
||||||
|
<string name="preview_background_img_des">ಪ್ರಿವ್ಯೂ ಹಿನ್ನೆಲೆ</string>
|
||||||
|
<string name="next_episode">ಮುಂದಿನ ಸಂಚಿಕೆ</string>
|
||||||
|
<string name="app_name">ಕ್ಲೌಡ್ ಸ್ಟ್ರೀಮ್</string>
|
||||||
|
<string name="downloading">ಡೌನ್ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ</string>
|
||||||
|
<string name="stream">ಸ್ಟ್ರೀಮ್</string>
|
||||||
|
<string name="result_share">ಶೇರ್</string>
|
||||||
|
<string name="popup_delete_file">ಫೈಲ್ ಅಳಿಸಿ</string>
|
||||||
|
<string name="home_more_info">ಹೆಚ್ಚಿನ ಮಾಹಿತಿ</string>
|
||||||
|
<string name="new_update_format" formatted="true">ಹೊಸ ಅಪ್ಡೇಟ್ ಬಂದಿದೆ
|
||||||
|
\n%s-%s</string>
|
||||||
|
<string name="loading">ಲೋಡಿಂಗ್…</string>
|
||||||
|
<string name="subs_download_languages">ಡೌನ್ಲೋಡ್ ಭಾಷೆಗಳನ್ನು ಮಾಡಿ</string>
|
||||||
|
<string name="play_livestream_button">ಲೈವ್ಸ್ಟ್ರೀಮ್ ಪ್ಲೇ ಮಾಡಿ</string>
|
||||||
|
<string name="play_with_app_name">ಕ್ಲೌಡ್ ಸ್ಟ್ರೀಮ್ ಇದರೊಂದಿಗೆ ಪ್ಲೇ ಮಾಡಿ</string>
|
||||||
|
<string name="type_plan_to_watch">ವೀಕ್ಷಿಸಲು ಯೋಜನೆ</string>
|
||||||
|
<string name="play_episode">ಸಂಚಿಕೆಯನ್ನು ಪ್ಲೇ ಮಾಡಿ</string>
|
||||||
|
<string name="continue_watching">ಕಂಟಿನ್ಯೂ ವಾಟಚಿಂಗ್</string>
|
||||||
|
<string name="torrent_no_plot">ಯಾವುದೇ ವಿವರಣೆ ಕಂಡುಬಂದಿಲ್ಲ</string>
|
||||||
|
<string name="play_torrent_button">ಸ್ಟ್ರೀಮ್ ಟೊರೆಂಟ್</string>
|
||||||
|
<string name="download">ಡೌನ್ಲೋಡ್</string>
|
||||||
|
<string name="sort_copy">ಕಾಪಿ</string>
|
||||||
|
<string name="no_data">ನೋ ಡೇಟಾ</string>
|
||||||
|
<string name="player_speed">ಪ್ಲೇಯರ್ ಸ್ಪೀಡ್</string>
|
||||||
|
<string name="next_episode_time_day_format" formatted="true">%d %dh %dm</string>
|
||||||
|
<string name="search_hint_site" formatted="true">ಹುಡುಕು %s…</string>
|
||||||
|
<string name="episode_more_options_des">ಹೆಚ್ಚಿನ ಆಯ್ಕೆ</string>
|
||||||
|
<string name="subs_import_text" formatted="true">ಫಾಂಟ್ಗಳನ್ನು ಇರಿಸುವ ಮೂಲಕ ಆಮದು ಮಾಡಿ %s</string>
|
||||||
|
<string name="next_episode_time_min_format" formatted="true">%dm</string>
|
||||||
|
<string name="result_tags">ಪ್ರಕಾರಗಳು</string>
|
||||||
|
<string name="result_open_in_browser">ಬ್ರೌಸರ್ ತೆರೆಯಿರಿ</string>
|
||||||
|
<string name="type_on_hold">ಆನ್-ಹೋಲ್ಡ್</string>
|
||||||
|
<string name="type_none">ನನ್</string>
|
||||||
|
<string name="reload_error">ಸಂಪರ್ಕವನ್ನು ಮರುಪ್ರಯತ್ನಿಸಿ…</string>
|
||||||
|
<string name="download_paused">ಡೌನ್ಲೋಡ್ ವಿರಾಮಗೊಳಿಸಲಾಗಿದೆ</string>
|
||||||
|
<string name="download_failed">ಡೌನ್ಲೋಡ್ ವಿಫಲವಾಗಿದೆ</string>
|
||||||
|
<string name="download_done">ಡೌನ್ಲೋಡ್ ಮುಗಿದಿದೆ</string>
|
||||||
|
<string name="browser">ಬ್ರೌಸರ್</string>
|
||||||
|
<string name="skip_loading">ಸ್ಕಿಪ್ ಲೋಡಿಂಗ್</string>
|
||||||
|
<string name="type_watching">ವಾಚಿಂಗ್</string>
|
||||||
|
<string name="type_completed">ಪೂರ್ಣಗೊಂಡಿದೆ</string>
|
||||||
|
<string name="type_dropped">ಕೈಬಿಡಲಾಯಿತು</string>
|
||||||
|
<string name="type_re_watching">ಪುನಃ ವೀಕ್ಷಿಸುತ್ತಿದೆ</string>
|
||||||
|
<string name="play_trailer_button">ಟ್ರೈಲರ್ ಪ್ಲೇ ಮಾಡಿ</string>
|
||||||
|
<string name="pick_source">ಮೂಲಗಳು</string>
|
||||||
|
<string name="downloaded">ಡೌನ್ಲೋಡ್ ಮಾಡಲಾಗಿದೆ</string>
|
||||||
|
<string name="download_started">ಡೌನ್ಲೋಡ್ ಪ್ರಾರಂಭವಾಗಿದೆ</string>
|
||||||
|
<string name="download_canceled">ಡೌನ್ಲೋಡ್ ರದ್ದುಗೊಳಿಸಲಾಗಿದೆ</string>
|
||||||
|
<string name="home_next_random_img_des">ಮುಂದಿನ ರಾಂಡಮ್</string>
|
||||||
</resources>
|
</resources>
|
|
@ -373,7 +373,7 @@
|
||||||
<string name="skip_setup">Pomiń setup</string>
|
<string name="skip_setup">Pomiń setup</string>
|
||||||
<string name="app_layout_subtext">Dostosuj wygląd aplikacji do urządzenia</string>
|
<string name="app_layout_subtext">Dostosuj wygląd aplikacji do urządzenia</string>
|
||||||
<string name="crash_reporting_title">Zgłaszanie błędów</string>
|
<string name="crash_reporting_title">Zgłaszanie błędów</string>
|
||||||
<string name="preferred_media_subtext">Co chciałbyś obejrzeć\?</string>
|
<string name="preferred_media_subtext">Co chciałbyś obejrzeć</string>
|
||||||
<string name="setup_done">Gotowe</string>
|
<string name="setup_done">Gotowe</string>
|
||||||
<string name="extensions">Rozszerzenia</string>
|
<string name="extensions">Rozszerzenia</string>
|
||||||
<string name="add_repository">Dodaj repozytorium</string>
|
<string name="add_repository">Dodaj repozytorium</string>
|
||||||
|
@ -509,4 +509,26 @@
|
||||||
<string name="empty_library_logged_in_message">Wygląda na to, że ta lista jest pusta, spróbuj przełączyć się na inną</string>
|
<string name="empty_library_logged_in_message">Wygląda na to, że ta lista jest pusta, spróbuj przełączyć się na inną</string>
|
||||||
<string name="safe_mode_file">Znaleziono plik trybu bezpiecznego.
|
<string name="safe_mode_file">Znaleziono plik trybu bezpiecznego.
|
||||||
\nRozszerzenia nie zostaną wczytane, dopóki plik nie zostanie usunięty.</string>
|
\nRozszerzenia nie zostaną wczytane, dopóki plik nie zostanie usunięty.</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings_summary">Używana ilość przewijania, gdy widoczny jest odtwarzacz</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings">Ukryty odtwarzacz - ilość przewijania</string>
|
||||||
|
<string name="pref_category_android_tv">Android TV</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings">Pokazany odtwarzacz — ilość przewijania</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings_summary">Używana ilość przewijania, gdy ukryty jest odtwarzacz</string>
|
||||||
|
<string name="test_log">Dziennik</string>
|
||||||
|
<string name="restart">Uruchom ponownie</string>
|
||||||
|
<string name="start">Rozpocznij</string>
|
||||||
|
<string name="test_failed">Nie powiodło się</string>
|
||||||
|
<string name="test_passed">Ukończone powodzeniem</string>
|
||||||
|
<string name="jsdelivr_proxy">Serwer pośredniczący raw.githubusercontent.com</string>
|
||||||
|
<string name="pref_category_bypass">Obejścia ISP</string>
|
||||||
|
<string name="category_provider_test">Test dostawcy</string>
|
||||||
|
<string name="stop">Zatrzymaj</string>
|
||||||
|
<string name="revert">Przywróć</string>
|
||||||
|
<string name="subscription_in_progress_notification">Aktualizowanie subskrybowanych programów</string>
|
||||||
|
<string name="subscription_list_name">Zasubskrybowano</string>
|
||||||
|
<string name="subscription_new">Zasubskrybowano %s</string>
|
||||||
|
<string name="subscription_deleted">Anulowano subskrypcję %s</string>
|
||||||
|
<string name="subscription_episode_released">Został wydany odcinek %d!</string>
|
||||||
|
<string name="jsdelivr_proxy_summary">Obchodzi blokadę GitHuba za pomocą jsdelivr, może spowodować opóźnienie aktualizacji o kilka dni.</string>
|
||||||
|
<string name="jsdelivr_enabled">Nie udało się połączyć z GitHub, włączono serwer pośredniczący jsdelivr.</string>
|
||||||
</resources>
|
</resources>
|
|
@ -6,12 +6,12 @@
|
||||||
<string name="next_episode_format" formatted="true">Episódio %d será lançado em</string>
|
<string name="next_episode_format" formatted="true">Episódio %d será lançado em</string>
|
||||||
<string name="result_poster_img_des">Poster</string>
|
<string name="result_poster_img_des">Poster</string>
|
||||||
<string name="episode_poster_img_des">Capa do Episódio</string>
|
<string name="episode_poster_img_des">Capa do Episódio</string>
|
||||||
<string name="search_poster_img_des">\@string/result_poster_img_des</string>
|
<string name="search_poster_img_des">Poster</string>
|
||||||
<string name="home_main_poster_img_des">Capa Principal</string>
|
<string name="home_main_poster_img_des">Capa Principal</string>
|
||||||
<string name="home_next_random_img_des">Próximo Aleatório</string>
|
<string name="home_next_random_img_des">Próximo Aleatório</string>
|
||||||
<string name="go_back_img_des">Voltar</string>
|
<string name="go_back_img_des">Voltar</string>
|
||||||
<string name="home_change_provider_img_des">Trocar Provedor</string>
|
<string name="home_change_provider_img_des">Trocar Provedor</string>
|
||||||
<string name="next_episode_time_day_format" formatted="true">%dd %dh %dm</string>
|
<string name="next_episode_time_day_format" formatted="true">%d dia(s), %d hora(s) e %d mese(s)</string>
|
||||||
<string name="home_source">Fonte</string>
|
<string name="home_source">Fonte</string>
|
||||||
<string name="resolution">Resolução</string>
|
<string name="resolution">Resolução</string>
|
||||||
<string name="extras">Extras</string>
|
<string name="extras">Extras</string>
|
||||||
|
@ -381,4 +381,31 @@
|
||||||
<string name="uppercase_all_subtitles">Todas as legendas em maiúsculas</string>
|
<string name="uppercase_all_subtitles">Todas as legendas em maiúsculas</string>
|
||||||
<string name="download_all_plugins_from_repo">Transferir todos os plugins deste repositório\?</string>
|
<string name="download_all_plugins_from_repo">Transferir todos os plugins deste repositório\?</string>
|
||||||
<string name="single_plugin_disabled" formatted="true">%s (Desativado)</string>
|
<string name="single_plugin_disabled" formatted="true">%s (Desativado)</string>
|
||||||
|
<string name="apk_installer_settings">Instalador APK</string>
|
||||||
|
<string name="duration_format" formatted="true">%d minuto(s)</string>
|
||||||
|
<string name="play_trailer_button">Reproduzir trailer</string>
|
||||||
|
<string name="action_add_to_bookmarks">Marcar como visto/não visto</string>
|
||||||
|
<string name="action_open_play">Reproduzir</string>
|
||||||
|
<string name="automatic_plugin_download_summary">Instalar automaticamente todas as extensões dos repositórios cadastrados.</string>
|
||||||
|
<string name="automatic_plugin_download">Baixar extensões automaticamente</string>
|
||||||
|
<string name="redo_setup_process">Refazer o processo de configuração</string>
|
||||||
|
<string name="go_back_30">-30</string>
|
||||||
|
<string name="other_singular">Vídeo</string>
|
||||||
|
<string name="go_forward_30">+30</string>
|
||||||
|
<string name="season_format">%s %d%s</string>
|
||||||
|
<string name="cast_format" formatted="true">Elenco: %s</string>
|
||||||
|
<string name="update_started">Atualização em andamento</string>
|
||||||
|
<string name="test_log">Log</string>
|
||||||
|
<string name="apk_installer_settings_des">Alguns aparelhos não possuem suporte para o novo instalador de pacotes. Use a opção legado caso não esteja conseguindo atualizar.</string>
|
||||||
|
<string name="episodes_range">%d-%d</string>
|
||||||
|
<string name="episode_format" formatted="true">%d %s</string>
|
||||||
|
<string name="start">Iniciar</string>
|
||||||
|
<string name="test_failed">Falha</string>
|
||||||
|
<string name="test_passed">Sucesso</string>
|
||||||
|
<string name="library">Biblioteca</string>
|
||||||
|
<string name="browser">Navegar</string>
|
||||||
|
<string name="anim">Aplicativo de Anime pelos mesmos desenvolvedores</string>
|
||||||
|
<string name="ova_singular">Ova</string>
|
||||||
|
<string name="anime_singular">Anime</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings">Player visível - Procurar valor</string>
|
||||||
</resources>
|
</resources>
|
|
@ -195,7 +195,8 @@
|
||||||
<string name="phone_layout">u ooah uo ahauao huhuu hauu h</string>
|
<string name="phone_layout">u ooah uo ahauao huhuu hauu h</string>
|
||||||
<string name="primary_color_settings">a ou oh ouhuouhoaaha</string>
|
<string name="primary_color_settings">a ou oh ouhuouhoaaha</string>
|
||||||
<string name="show_fillers_settings">aaooohhouhhha hauauuu</string>
|
<string name="show_fillers_settings">aaooohhouhhha hauauuu</string>
|
||||||
<string name="new_update_format">aaaaaaa uuuuuu\n%s -> %s</string>
|
<string name="new_update_format">aaaaaaa uuuuuu
|
||||||
|
\n%s -> %s</string>
|
||||||
<string name="app_dub_sub_episode_text_format" formatted="true">%s aaou %d</string>
|
<string name="app_dub_sub_episode_text_format" formatted="true">%s aaou %d</string>
|
||||||
<string name="cast_format" formatted="true">oouaaahh %s</string>
|
<string name="cast_format" formatted="true">oouaaahh %s</string>
|
||||||
<string name="next_episode_format" formatted="true">aaaaaaugh ouh %d uuoogahaaah ooua-h-ha</string>
|
<string name="next_episode_format" formatted="true">aaaaaaugh ouh %d uuoogahaaah ooua-h-ha</string>
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
<string name="next_episode_time_min_format" formatted="true">%dm</string>
|
<string name="next_episode_time_min_format" formatted="true">%dm</string>
|
||||||
<!-- IS NOT NEEDED TO TRANSLATE AS THEY ARE ONLY USED FOR SCREEN READERS AND WONT SHOW UP TO NORMAL USERS -->
|
<!-- IS NOT NEEDED TO TRANSLATE AS THEY ARE ONLY USED FOR SCREEN READERS AND WONT SHOW UP TO NORMAL USERS -->
|
||||||
<string name="result_poster_img_des">Poster</string>
|
<string name="result_poster_img_des">Poster</string>
|
||||||
<string name="search_poster_img_des">\@string/result_poster_img_des</string>
|
<string name="search_poster_img_des">Poster</string>
|
||||||
<string name="episode_poster_img_des">Poster Episod</string>
|
<string name="episode_poster_img_des">Poster Episod</string>
|
||||||
<string name="home_main_poster_img_des">Poster Principal</string>
|
<string name="home_main_poster_img_des">Poster Principal</string>
|
||||||
<string name="home_next_random_img_des">Următorul la Întâmplare</string>
|
<string name="home_next_random_img_des">Următorul la Întâmplare</string>
|
||||||
|
@ -142,7 +142,7 @@
|
||||||
<string name="restore_success">Fișier de rezervă încărcat</string>
|
<string name="restore_success">Fișier de rezervă încărcat</string>
|
||||||
<string name="restore_failed_format" formatted="true">Imposibilitatea de a restaura datele din %s</string>
|
<string name="restore_failed_format" formatted="true">Imposibilitatea de a restaura datele din %s</string>
|
||||||
<string name="backup_success">Date stocate</string>
|
<string name="backup_success">Date stocate</string>
|
||||||
<string name="backup_failed">Permisiuni de arhivare lipsă, vă rugăm să încercați din nou</string>
|
<string name="backup_failed">Permisiunea de arhivare lipșe, vă rugăm să încercați din nou.</string>
|
||||||
<string name="backup_failed_error_format">Eroare de backup %s</string>
|
<string name="backup_failed_error_format">Eroare de backup %s</string>
|
||||||
<string name="search">Căutare</string>
|
<string name="search">Căutare</string>
|
||||||
<string name="category_account">Conturi și credite</string>
|
<string name="category_account">Conturi și credite</string>
|
||||||
|
@ -154,7 +154,7 @@
|
||||||
<string name="bug_report_settings_on">Nu trimiteți niciun fel de date</string>
|
<string name="bug_report_settings_on">Nu trimiteți niciun fel de date</string>
|
||||||
<string name="show_fillers_settings">Afișează etichetele [filler] pentru anime</string>
|
<string name="show_fillers_settings">Afișează etichetele [filler] pentru anime</string>
|
||||||
<string name="show_trailers_settings">Arată trailerul</string>
|
<string name="show_trailers_settings">Arată trailerul</string>
|
||||||
<string name="kitsu_settings">Arată posterele de la Kitsu</string>
|
<string name="kitsu_settings">Arată afișele de la Kitsu</string>
|
||||||
<string name="updates_settings">Afișați actualizările aplicației</string>
|
<string name="updates_settings">Afișați actualizările aplicației</string>
|
||||||
<string name="updates_settings_des">Căutați automat noi actualizări la pornire</string>
|
<string name="updates_settings_des">Căutați automat noi actualizări la pornire</string>
|
||||||
<string name="uprereleases_settings">Actualizați la prerelease</string>
|
<string name="uprereleases_settings">Actualizați la prerelease</string>
|
||||||
|
@ -384,4 +384,8 @@
|
||||||
<string name="autoplay_next_settings_des">Începe următorul episod când se termină episodul curent</string>
|
<string name="autoplay_next_settings_des">Începe următorul episod când se termină episodul curent</string>
|
||||||
<string name="pref_filter_search_quality">Ascundeți calitatea video selectată în rezultatele căutării</string>
|
<string name="pref_filter_search_quality">Ascundeți calitatea video selectată în rezultatele căutării</string>
|
||||||
<string name="play_livestream_button">Redare Livestream</string>
|
<string name="play_livestream_button">Redare Livestream</string>
|
||||||
|
<string name="library">Librărie</string>
|
||||||
|
<string name="test_log">Log</string>
|
||||||
|
<string name="browser">Browser</string>
|
||||||
|
<string name="play_with_app_name">Joacă cu CloudStream</string>
|
||||||
</resources>
|
</resources>
|
|
@ -506,4 +506,16 @@
|
||||||
<string name="android_tv_interface_on_seek_settings">Плеер показан - Перемотки объем</string>
|
<string name="android_tv_interface_on_seek_settings">Плеер показан - Перемотки объем</string>
|
||||||
<string name="android_tv_interface_off_seek_settings">Плеер спрятан - Перемотки объем</string>
|
<string name="android_tv_interface_off_seek_settings">Плеер спрятан - Перемотки объем</string>
|
||||||
<string name="subtitles_remove_bloat">Удалять лишнее из субтитров</string>
|
<string name="subtitles_remove_bloat">Удалять лишнее из субтитров</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings_summary">Местоположение ползунка, когда игрок скрыт</string>
|
||||||
|
<string name="pref_category_android_tv">Android TV</string>
|
||||||
|
<string name="actor_supporting">Второго планa</string>
|
||||||
|
<string name="skip_type_mixed_op">Смешанный опенинг</string>
|
||||||
|
<string name="skip_type_mixed_ed">Смешанный конец</string>
|
||||||
|
<string name="category_provider_test">Тест провайдер</string>
|
||||||
|
<string name="test_log">Журнал</string>
|
||||||
|
<string name="start">Запустить</string>
|
||||||
|
<string name="test_passed">Выполнено</string>
|
||||||
|
<string name="test_failed">Неудачный</string>
|
||||||
|
<string name="stop">Прекратить</string>
|
||||||
|
<string name="restart">Перезапустить</string>
|
||||||
</resources>
|
</resources>
|
|
@ -17,7 +17,7 @@
|
||||||
<string name="next_episode_time_day_format" formatted="true">%dd %dh %dm</string>
|
<string name="next_episode_time_day_format" formatted="true">%dd %dh %dm</string>
|
||||||
<string name="next_episode_time_min_format" formatted="true">%dm</string>
|
<string name="next_episode_time_min_format" formatted="true">%dm</string>
|
||||||
<string name="duration_format" formatted="true">%d min</string>
|
<string name="duration_format" formatted="true">%d min</string>
|
||||||
<string name="search_poster_img_des">\@string/result_poster_img_des</string>
|
<string name="search_poster_img_des">Plagát</string>
|
||||||
<string name="episode_poster_img_des">Plagát epizódy</string>
|
<string name="episode_poster_img_des">Plagát epizódy</string>
|
||||||
<string name="home_main_poster_img_des">Hlavný plagát</string>
|
<string name="home_main_poster_img_des">Hlavný plagát</string>
|
||||||
<string name="play_with_app_name">Prehrať s CloudStream</string>
|
<string name="play_with_app_name">Prehrať s CloudStream</string>
|
||||||
|
|
|
@ -217,7 +217,7 @@
|
||||||
<string name="video_skip_op">Пропустити OP</string>
|
<string name="video_skip_op">Пропустити OP</string>
|
||||||
<string name="dont_show_again">Не показувати знову</string>
|
<string name="dont_show_again">Не показувати знову</string>
|
||||||
<string name="update">Оновити</string>
|
<string name="update">Оновити</string>
|
||||||
<string name="watch_quality_pref">Бажана якість перегляду</string>
|
<string name="watch_quality_pref">Бажана якість перегляду (WiFi)</string>
|
||||||
<string name="show_title">Заголовок</string>
|
<string name="show_title">Заголовок</string>
|
||||||
<string name="poster_ui_settings">Перемикання елементів інтерфейсу на плакаті</string>
|
<string name="poster_ui_settings">Перемикання елементів інтерфейсу на плакаті</string>
|
||||||
<string name="no_update_found">Оновлення не знайдено</string>
|
<string name="no_update_found">Оновлення не знайдено</string>
|
||||||
|
@ -507,4 +507,27 @@
|
||||||
<string name="safe_mode_file">Файл безпечного режиму знайдено!
|
<string name="safe_mode_file">Файл безпечного режиму знайдено!
|
||||||
\nРозширеня не завантажуються під час запуску, доки файл не буде видалено.</string>
|
\nРозширеня не завантажуються під час запуску, доки файл не буде видалено.</string>
|
||||||
<string name="pref_category_android_tv">Android TV</string>
|
<string name="pref_category_android_tv">Android TV</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings">Плеєр сховано - обсяг пошуку</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings">Плеєр показано - обсяг пошуку</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings_summary">Обсяг пошуку, який використовується, коли плеєр видимий</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings_summary">Обсяг пошуку, який використовується, коли гравець прихований</string>
|
||||||
|
<string name="test_failed">Не вдалося</string>
|
||||||
|
<string name="test_passed">Пройдено</string>
|
||||||
|
<string name="restart">Перезапуск</string>
|
||||||
|
<string name="test_log">Журнал</string>
|
||||||
|
<string name="start">Старт</string>
|
||||||
|
<string name="stop">Стоп</string>
|
||||||
|
<string name="category_provider_test">Тест постачальника</string>
|
||||||
|
<string name="subscription_in_progress_notification">Оновлення підписаних шоу</string>
|
||||||
|
<string name="subscription_list_name">Підписано</string>
|
||||||
|
<string name="subscription_new">Підписано на %s</string>
|
||||||
|
<string name="subscription_deleted">Відписатися від %s</string>
|
||||||
|
<string name="subscription_episode_released">Епізод %d випущено!</string>
|
||||||
|
<string name="revert">Повернути</string>
|
||||||
|
<string name="jsdelivr_proxy">raw.githubusercontent.com
|
||||||
|
\nProxy</string>
|
||||||
|
<string name="jsdelivr_enabled">Не вдалося зв\'язатися з GitHub, увімкнувши проксі-сервер jsdelivr.</string>
|
||||||
|
<string name="pref_category_bypass">Обходи ISP</string>
|
||||||
|
<string name="jsdelivr_proxy_summary">Обходити блокування GitHub з використанням jsdlitr, може викликати затримку оновлень на кілька днів.</string>
|
||||||
|
<string name="watch_quality_pref_data">Бажана якість перегляду (Мобільні дані)</string>
|
||||||
</resources>
|
</resources>
|
|
@ -19,7 +19,7 @@
|
||||||
<string name="next_episode_time_min_format" formatted="true">%dm</string>
|
<string name="next_episode_time_min_format" formatted="true">%dm</string>
|
||||||
<!-- IS NOT NEEDED TO TRANSLATE AS THEY ARE ONLY USED FOR SCREEN READERS AND WONT SHOW UP TO NORMAL USERS -->
|
<!-- IS NOT NEEDED TO TRANSLATE AS THEY ARE ONLY USED FOR SCREEN READERS AND WONT SHOW UP TO NORMAL USERS -->
|
||||||
<string name="result_poster_img_des">封面</string>
|
<string name="result_poster_img_des">封面</string>
|
||||||
<string name="search_poster_img_des">\@string/result_poster_img_des</string>
|
<string name="search_poster_img_des">封面</string>
|
||||||
<string name="episode_poster_img_des">劇集封面</string>
|
<string name="episode_poster_img_des">劇集封面</string>
|
||||||
<string name="home_main_poster_img_des">主封面</string>
|
<string name="home_main_poster_img_des">主封面</string>
|
||||||
<string name="home_next_random_img_des">隨機下一個</string>
|
<string name="home_next_random_img_des">隨機下一個</string>
|
||||||
|
@ -533,4 +533,5 @@
|
||||||
<string name="pref_category_defaults">預設</string>
|
<string name="pref_category_defaults">預設</string>
|
||||||
<string name="pref_category_looks">外觀</string>
|
<string name="pref_category_looks">外觀</string>
|
||||||
<string name="pref_category_ui_features">功能</string>
|
<string name="pref_category_ui_features">功能</string>
|
||||||
|
<string name="browser">瀏覽器</string>
|
||||||
</resources>
|
</resources>
|
|
@ -554,4 +554,26 @@
|
||||||
<string name="empty_library_no_accounts_message">看来您的库是空的 :(
|
<string name="empty_library_no_accounts_message">看来您的库是空的 :(
|
||||||
\n登录库账户或添加节目到您的本地库</string>
|
\n登录库账户或添加节目到您的本地库</string>
|
||||||
<string name="empty_library_logged_in_message">看来此列表是空的,请尝试切换到另一个</string>
|
<string name="empty_library_logged_in_message">看来此列表是空的,请尝试切换到另一个</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings">播放器显示 - 快进快退秒数</string>
|
||||||
|
<string name="android_tv_interface_on_seek_settings_summary">播放器可见时使用的快进快退秒数</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings">播放器隐藏 - 快进快退秒数</string>
|
||||||
|
<string name="android_tv_interface_off_seek_settings_summary">播放器隐藏时使用的快进快退秒数</string>
|
||||||
|
<string name="pref_category_android_tv">Android TV</string>
|
||||||
|
<string name="test_failed">失败</string>
|
||||||
|
<string name="category_provider_test">片源测试</string>
|
||||||
|
<string name="restart">重启</string>
|
||||||
|
<string name="stop">停止</string>
|
||||||
|
<string name="subscription_in_progress_notification">正在更新订阅节目</string>
|
||||||
|
<string name="subscription_list_name">已订阅</string>
|
||||||
|
<string name="subscription_new">已订阅 %s</string>
|
||||||
|
<string name="subscription_deleted">已取消订阅 %s</string>
|
||||||
|
<string name="start">开始</string>
|
||||||
|
<string name="subscription_episode_released">第 %d 集已发布!</string>
|
||||||
|
<string name="test_passed">成功</string>
|
||||||
|
<string name="test_log">日志</string>
|
||||||
|
<string name="jsdelivr_proxy">raw.githubusercontent.com 代理</string>
|
||||||
|
<string name="jsdelivr_enabled">连接 Github 失败,正在启用 jsdelivr 代理。</string>
|
||||||
|
<string name="jsdelivr_proxy_summary">使用 jsdelivr 绕过对 Github 的封锁,可能导致更新延迟几天。</string>
|
||||||
|
<string name="pref_category_bypass">ISP 绕过</string>
|
||||||
|
<string name="revert">还原</string>
|
||||||
</resources>
|
</resources>
|
|
@ -16,6 +16,7 @@
|
||||||
<string name="test_providers_key" translatable="false">test_providers_key</string>
|
<string name="test_providers_key" translatable="false">test_providers_key</string>
|
||||||
<string name="subtitle_settings_chromecast_key" translatable="false">subtitle_settings_chromecast_key</string>
|
<string name="subtitle_settings_chromecast_key" translatable="false">subtitle_settings_chromecast_key</string>
|
||||||
<string name="quality_pref_key" translatable="false">quality_pref_key</string>
|
<string name="quality_pref_key" translatable="false">quality_pref_key</string>
|
||||||
|
<string name="quality_pref_mobile_data_key" translatable="false">quality_pref_mobile_data_key</string>
|
||||||
<string name="player_pref_key" translatable="false">player_pref_key</string>
|
<string name="player_pref_key" translatable="false">player_pref_key</string>
|
||||||
<string name="prefer_limit_title_key" translatable="false">prefer_limit_title_key</string>
|
<string name="prefer_limit_title_key" translatable="false">prefer_limit_title_key</string>
|
||||||
<string name="prefer_limit_title_rez_key" translatable="false">prefer_limit_title_rez_key</string>
|
<string name="prefer_limit_title_rez_key" translatable="false">prefer_limit_title_rez_key</string>
|
||||||
|
@ -43,6 +44,7 @@
|
||||||
<string name="random_button_key" translatable="false">random_button_key</string>
|
<string name="random_button_key" translatable="false">random_button_key</string>
|
||||||
<string name="provider_lang_key" translatable="false">provider_lang_key</string>
|
<string name="provider_lang_key" translatable="false">provider_lang_key</string>
|
||||||
<string name="dns_key" translatable="false">dns_key</string>
|
<string name="dns_key" translatable="false">dns_key</string>
|
||||||
|
<string name="jsdelivr_proxy_key" translatable="false">jsdelivr_proxy_key</string>
|
||||||
<string name="download_path_key" translatable="false">download_path_key</string>
|
<string name="download_path_key" translatable="false">download_path_key</string>
|
||||||
<string name="app_name_download_path" translatable="false">Cloudstream</string>
|
<string name="app_name_download_path" translatable="false">Cloudstream</string>
|
||||||
<string name="app_layout_key" translatable="false">app_layout_key</string>
|
<string name="app_layout_key" translatable="false">app_layout_key</string>
|
||||||
|
@ -363,7 +365,8 @@
|
||||||
<string name="dont_show_again">Don\'t show again</string>
|
<string name="dont_show_again">Don\'t show again</string>
|
||||||
<string name="skip_update">Skip this Update</string>
|
<string name="skip_update">Skip this Update</string>
|
||||||
<string name="update">Update</string>
|
<string name="update">Update</string>
|
||||||
<string name="watch_quality_pref">Preferred watch quality</string>
|
<string name="watch_quality_pref">Preferred watch quality (WiFi)</string>
|
||||||
|
<string name="watch_quality_pref_data">Preferred watch quality (Mobile Data)</string>
|
||||||
<string name="limit_title">Video player title max chars</string>
|
<string name="limit_title">Video player title max chars</string>
|
||||||
<string name="limit_title_rez">Video player resolution</string>
|
<string name="limit_title_rez">Video player resolution</string>
|
||||||
<string name="video_buffer_size_settings">Video buffer size</string>
|
<string name="video_buffer_size_settings">Video buffer size</string>
|
||||||
|
@ -378,6 +381,9 @@
|
||||||
<string name="video_disk_description">Causes problems if set too high on devices with low storage space, such as Android TV.</string>
|
<string name="video_disk_description">Causes problems if set too high on devices with low storage space, such as Android TV.</string>
|
||||||
<string name="dns_pref">DNS over HTTPS</string>
|
<string name="dns_pref">DNS over HTTPS</string>
|
||||||
<string name="dns_pref_summary">Useful for bypassing ISP blocks</string>
|
<string name="dns_pref_summary">Useful for bypassing ISP blocks</string>
|
||||||
|
<string name="jsdelivr_proxy">raw.githubusercontent.com Proxy</string>
|
||||||
|
<string name="jsdelivr_enabled">Failed to reach GitHub, enabling jsdelivr proxy.</string>
|
||||||
|
<string name="jsdelivr_proxy_summary">Bypasses blocking of GitHub using jsdelivr, may cause updates to be delayed by few days.</string>
|
||||||
<string name="add_site_pref">Clone site</string>
|
<string name="add_site_pref">Clone site</string>
|
||||||
<string name="remove_site_pref">Remove site</string>
|
<string name="remove_site_pref">Remove site</string>
|
||||||
<string name="add_site_summary">Add a clone of an existing site, with a different URL</string>
|
<string name="add_site_summary">Add a clone of an existing site, with a different URL</string>
|
||||||
|
@ -405,6 +411,7 @@
|
||||||
responsibility of user to avoid any actions that might violate the laws governing his/her locality. Use
|
responsibility of user to avoid any actions that might violate the laws governing his/her locality. Use
|
||||||
CloudStream 3 at your own risk.
|
CloudStream 3 at your own risk.
|
||||||
</string>
|
</string>
|
||||||
|
<string name="pref_category_bypass">ISP Bypasses</string>
|
||||||
<string name="pref_category_links">Links</string>
|
<string name="pref_category_links">Links</string>
|
||||||
<string name="pref_category_app_updates">App updates</string>
|
<string name="pref_category_app_updates">App updates</string>
|
||||||
<string name="pref_category_backup">Backup</string>
|
<string name="pref_category_backup">Backup</string>
|
||||||
|
@ -644,6 +651,7 @@
|
||||||
<string name="empty_library_no_accounts_message">Looks like your library is empty :(\nLogin to a library account or add shows to your local library</string>
|
<string name="empty_library_no_accounts_message">Looks like your library is empty :(\nLogin to a library account or add shows to your local library</string>
|
||||||
<string name="empty_library_logged_in_message">Looks like this list is empty, try switching to another one</string>
|
<string name="empty_library_logged_in_message">Looks like this list is empty, try switching to another one</string>
|
||||||
<string name="safe_mode_file">Safe mode file found!\nNot loading any extensions on startup until file is removed.</string>
|
<string name="safe_mode_file">Safe mode file found!\nNot loading any extensions on startup until file is removed.</string>
|
||||||
|
<string name="revert">Revert</string>
|
||||||
<string name="subscription_in_progress_notification">Updating subscribed shows</string>
|
<string name="subscription_in_progress_notification">Updating subscribed shows</string>
|
||||||
<string name="subscription_list_name">Subscribed</string>
|
<string name="subscription_list_name">Subscribed</string>
|
||||||
<string name="subscription_new">Subscribed to %s</string>
|
<string name="subscription_new">Subscribed to %s</string>
|
||||||
|
|
|
@ -15,6 +15,10 @@
|
||||||
android:icon="@drawable/ic_baseline_hd_24"
|
android:icon="@drawable/ic_baseline_hd_24"
|
||||||
android:key="@string/quality_pref_key"
|
android:key="@string/quality_pref_key"
|
||||||
android:title="@string/watch_quality_pref" />
|
android:title="@string/watch_quality_pref" />
|
||||||
|
<Preference
|
||||||
|
android:icon="@drawable/ic_baseline_hd_24"
|
||||||
|
android:key="@string/quality_pref_mobile_data_key"
|
||||||
|
android:title="@string/watch_quality_pref_data" />
|
||||||
|
|
||||||
<Preference
|
<Preference
|
||||||
android:icon="@drawable/netflix_play"
|
android:icon="@drawable/netflix_play"
|
||||||
|
|
|
@ -6,18 +6,6 @@
|
||||||
android:title="@string/app_language"
|
android:title="@string/app_language"
|
||||||
android:icon="@drawable/ic_baseline_language_24" />
|
android:icon="@drawable/ic_baseline_language_24" />
|
||||||
|
|
||||||
<Preference
|
|
||||||
android:key="@string/override_site_key"
|
|
||||||
android:title="@string/add_site_pref"
|
|
||||||
android:summary="@string/add_site_summary"
|
|
||||||
android:icon="@drawable/ic_baseline_add_24" />
|
|
||||||
|
|
||||||
<Preference
|
|
||||||
android:key="@string/dns_key"
|
|
||||||
android:title="@string/dns_pref"
|
|
||||||
android:summary="@string/dns_pref_summary"
|
|
||||||
android:icon="@drawable/ic_baseline_dns_24" />
|
|
||||||
|
|
||||||
<Preference
|
<Preference
|
||||||
android:key="@string/download_path_key"
|
android:key="@string/download_path_key"
|
||||||
android:title="@string/download_path_pref"
|
android:title="@string/download_path_pref"
|
||||||
|
@ -34,6 +22,30 @@
|
||||||
android:icon="@drawable/benene"
|
android:icon="@drawable/benene"
|
||||||
app:summary="@string/benene_des" />
|
app:summary="@string/benene_des" />
|
||||||
|
|
||||||
|
<PreferenceCategory
|
||||||
|
android:title="@string/pref_category_bypass">
|
||||||
|
|
||||||
|
<Preference
|
||||||
|
android:key="@string/override_site_key"
|
||||||
|
android:title="@string/add_site_pref"
|
||||||
|
android:summary="@string/add_site_summary"
|
||||||
|
android:icon="@drawable/ic_baseline_add_24" />
|
||||||
|
|
||||||
|
<Preference
|
||||||
|
android:key="@string/dns_key"
|
||||||
|
android:title="@string/dns_pref"
|
||||||
|
android:summary="@string/dns_pref_summary"
|
||||||
|
android:icon="@drawable/ic_baseline_dns_24" />
|
||||||
|
|
||||||
|
<SwitchPreference
|
||||||
|
android:defaultValue="false"
|
||||||
|
android:icon="@drawable/ic_github_logo"
|
||||||
|
android:key="@string/jsdelivr_proxy_key"
|
||||||
|
android:title="@string/jsdelivr_proxy"
|
||||||
|
android:summary="@string/jsdelivr_proxy_summary" />
|
||||||
|
|
||||||
|
</PreferenceCategory>
|
||||||
|
|
||||||
<PreferenceCategory
|
<PreferenceCategory
|
||||||
android:title="@string/pref_category_links">
|
android:title="@string/pref_category_links">
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue