feat: wakelock

This commit is contained in:
Canny 2022-10-10 20:49:02 +03:00
parent 40770e14cb
commit 34fe627478
No known key found for this signature in database
GPG Key ID: 395CCB0AA979F27B
2 changed files with 13 additions and 2 deletions

View File

@ -12,6 +12,7 @@
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/> <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission <uses-permission
android:name="android.permission.MANAGE_EXTERNAL_STORAGE" android:name="android.permission.MANAGE_EXTERNAL_STORAGE"
tools:ignore="ScopedStorage" /> tools:ignore="ScopedStorage" />

View File

@ -7,6 +7,7 @@ import android.app.PendingIntent
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import android.graphics.drawable.Icon import android.graphics.drawable.Icon
import android.os.PowerManager
import android.util.Log import android.util.Log
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import androidx.work.CoroutineWorker import androidx.work.CoroutineWorker
@ -90,6 +91,13 @@ class PatcherWorker(context: Context, parameters: WorkerParameters, private val
private suspend fun runPatcher( private suspend fun runPatcher(
workdir: File workdir: File
): Boolean { ): Boolean {
val wakeLock: PowerManager.WakeLock =
(applicationContext.getSystemService(Context.POWER_SERVICE) as PowerManager).run {
newWakeLock(PowerManager.FULL_WAKE_LOCK, "$tag::Patcher").apply {
acquire(10*60*1000L)
}
}
Log.d(tag, "Acquired wakelock.")
val aaptPath = Aapt.binary(applicationContext)?.absolutePath val aaptPath = Aapt.binary(applicationContext)?.absolutePath
if (aaptPath == null) { if (aaptPath == null) {
Logging.log += "AAPT2 not found.\n" Logging.log += "AAPT2 not found.\n"
@ -188,8 +196,10 @@ class PatcherWorker(context: Context, parameters: WorkerParameters, private val
Signer("ReVanced", "s3cur3p@ssw0rd").signApk(patchedFile, outputFile) Signer("ReVanced", "s3cur3p@ssw0rd").signApk(patchedFile, outputFile)
Logging.log += "Successfully patched!\n" Logging.log += "Successfully patched!\n"
} finally { } finally {
// Log.d(tag, "Deleting workdir") Log.d(tag, "Deleting workdir")
// workdir.deleteRecursively() workdir.deleteRecursively()
wakeLock.release()
Log.d(tag, "Released wakelock.")
} }
return false return false
} }