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…
	
	Add table
		Add a link
		
	
		Reference in a new issue