mirror of
https://github.com/recloudstream/cloudstream.git
synced 2024-08-15 01:53:11 +00:00
[Feature] Skip update (#953)
This commit is contained in:
parent
765b3efa26
commit
a4735c41ba
2 changed files with 19 additions and 8 deletions
|
@ -44,6 +44,7 @@ class InAppUpdater {
|
|||
@JsonProperty("assets") val assets: List<GithubAsset>,
|
||||
@JsonProperty("target_commitish") val target_commitish: String, // branch
|
||||
@JsonProperty("prerelease") val prerelease: Boolean,
|
||||
@JsonProperty("node_id") val node_id: String //Node Id
|
||||
)
|
||||
|
||||
data class GithubObject(
|
||||
|
@ -61,6 +62,7 @@ class InAppUpdater {
|
|||
@JsonProperty("updateURL") val updateURL: String?,
|
||||
@JsonProperty("updateVersion") val updateVersion: String?,
|
||||
@JsonProperty("changelog") val changelog: String?,
|
||||
@JsonProperty("updateNodeId") val updateNodeId: String?
|
||||
)
|
||||
|
||||
private val mapper = JsonMapper.builder().addModule(KotlinModule())
|
||||
|
@ -76,7 +78,7 @@ class InAppUpdater {
|
|||
}
|
||||
} catch (e: Exception) {
|
||||
println(e)
|
||||
Update(false, null, null, null)
|
||||
Update(false, null, null, null, null)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -136,13 +138,14 @@ class InAppUpdater {
|
|||
shouldUpdate,
|
||||
foundAsset.browser_download_url,
|
||||
foundVersion.groupValues[2],
|
||||
found.body
|
||||
found.body,
|
||||
found.node_id
|
||||
)
|
||||
} else {
|
||||
Update(false, null, null, null)
|
||||
Update(false, null, null, null, null)
|
||||
}
|
||||
}
|
||||
return Update(false, null, null, null)
|
||||
return Update(false, null, null, null, null)
|
||||
}
|
||||
|
||||
private fun Activity.getPreReleaseUpdate(): Update = runBlocking {
|
||||
|
@ -170,10 +173,11 @@ class InAppUpdater {
|
|||
shouldUpdate,
|
||||
foundAsset.browser_download_url,
|
||||
tagResponse.github_object.sha,
|
||||
found.body
|
||||
found.body,
|
||||
found.node_id
|
||||
)
|
||||
} else {
|
||||
Update(false, null, null, null)
|
||||
Update(false, null, null, null, null)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -265,6 +269,11 @@ class InAppUpdater {
|
|||
) {
|
||||
val update = getAppUpdate()
|
||||
if (update.shouldUpdate && update.updateURL != null) {
|
||||
//Check if update should be skipped
|
||||
val updateNodeId = settingsManager.getString(getString(R.string.skip_update_key), "")
|
||||
if (update.updateNodeId.equals(updateNodeId)) {
|
||||
return false
|
||||
}
|
||||
runOnUiThread {
|
||||
try {
|
||||
val currentVersion = packageName?.let {
|
||||
|
@ -306,8 +315,8 @@ class InAppUpdater {
|
|||
setNegativeButton(R.string.cancel) { _, _ -> }
|
||||
|
||||
if (checkAutoUpdate) {
|
||||
setNeutralButton(R.string.dont_show_again) { _, _ ->
|
||||
settingsManager.edit().putBoolean("auto_update", false)
|
||||
setNeutralButton(R.string.skip_update) { _, _ ->
|
||||
settingsManager.edit().putString(getString(R.string.skip_update_key), update.updateNodeId ?: "")
|
||||
.apply()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
<string name="search_types_list_key" translatable="false">search_type_list</string>
|
||||
<string name="grid_format_key" translatable="false">grid_format</string>
|
||||
<string name="auto_update_key" translatable="false">auto_update</string>
|
||||
<string name="skip_update_key" translatable="false">skip_update_key</string>
|
||||
<string name="prerelease_update_key" translatable="false">prerelease_update</string>
|
||||
<string name="manual_check_update_key" translatable="false">manual_check_update</string>
|
||||
<string name="fast_forward_button_time_key" translatable="false">fast_forward_button_time</string>
|
||||
|
@ -347,6 +348,7 @@
|
|||
<string name="video_skip_op">Skip OP</string>
|
||||
|
||||
<string name="dont_show_again">Don\'t show again</string>
|
||||
<string name="skip_update">Skip this Update</string>
|
||||
<string name="update">Update</string>
|
||||
<string name="watch_quality_pref">Preferred watch quality</string>
|
||||
<string name="limit_title">Limit title characters on player</string>
|
||||
|
|
Loading…
Reference in a new issue