Skip to content

Instantly share code, notes, and snippets.

View sajjadyousefnia's full-sized avatar
🤒
Out sick

Sajjad Yousefnia sajjadyousefnia

🤒
Out sick
View GitHub Profile
package com.sands.android.view.activity
import android.annotation.SuppressLint
import android.app.Activity
import android.content.res.Configuration
import android.net.Uri
import android.os.AsyncTask
import android.os.Bundle
import android.os.Handler
package com.sands.android.view.adapter
import android.content.Context
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.content.ContextCompat
import androidx.recyclerview.widget.RecyclerView
import com.sands.android.R
import com.sands.android.dao.entity.SubtitleColorModel
// private var currentTitle: String = ""
// private var currentUrl: String = ""
private var periodicJob: Job? = null
private var service: DownloadService? = null
private var bound: Boolean = false
private val TAG = "DownloadActivity"
private lateinit var runningAdapter: AdapterRunningDownload
private lateinit var historyAdapter: AdapterHistoryDownload
private lateinit var downloadCompletedReceiver: BroadcastReceiver
private var isCursorOpen = true
package com.sands.android.view.activity
import android.Manifest
import android.annotation.SuppressLint
import android.app.DownloadManager
import android.content.BroadcastReceiver
import android.content.Context
import android.content.pm.PackageManager
import android.database.Cursor
import android.net.Uri
private fun checkRunningDownloads() {
val allDownloads = db.appDao().getUnfinishedDownloadsHistory()
runningDownloadList.addAll(allDownloads)
historyAdapter.notifyDataSetChanged()
runningDownloadList.forEach { downloadModel ->
val downloadManager = getSystemService(DownloadManager::class.java)
observerDownload(
downloadId = downloadModel.id,
currentDownloadModel = downloadModel,
package com.sands.android.dao.entity
import androidx.room.ColumnInfo
import androidx.room.Entity
import androidx.room.PrimaryKey
@Entity(tableName = "download_model")
public data class DownloadModel(
@PrimaryKey(autoGenerate = true)
@ColumnInfo(name = "id")
package com.sands.android.dao
import androidx.room.Dao
import androidx.room.Delete
import androidx.room.Insert
import androidx.room.OnConflictStrategy
import androidx.room.Query
import androidx.room.Update
import com.sands.android.dao.entity.DownloadModel
import com.sands.android.dao.entity.MdlLastPlay
package com.sands.android.view.activity
import android.Manifest
import android.annotation.SuppressLint
import android.app.DownloadManager
import android.content.BroadcastReceiver
import android.content.Context
import android.content.pm.PackageManager
import android.database.Cursor
import android.net.Uri
package com.sands.android.view.activity
import android.Manifest
import android.annotation.SuppressLint
import android.app.DownloadManager
import android.content.BroadcastReceiver
import android.content.Context
import android.content.pm.PackageManager
import android.database.Cursor
import android.net.Uri
package com.sands.android.view.adapter
import android.app.DownloadManager
import android.content.Context
import android.content.Intent
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.content.ContextCompat
import androidx.core.content.ContextCompat.startActivity