--- /dev/null
+{
+ "version": 2,
+ "artifactType": {
+ "type": "APK",
+ "kind": "Directory"
+ },
+ "applicationId": "com.ic.temperature",
+ "variantName": "processReleaseResources",
+ "elements": [
+ {
+ "type": "SINGLE",
+ "filters": [],
+ "versionCode": 2,
+ "versionName": "202012081519",
+ "outputFile": "ICL02Temperature_V2_202012081519_release.apk"
+ }
+ ]
+}
\ No newline at end of file
package com.ic.temperature
-import android.annotation.SuppressLint
import android.content.Context
import android.os.Bundle
import android.os.PowerManager
initWakeLock()
}
- private val wakeLock by lazy {
- val powerManager: PowerManager = getSystemService(Context.POWER_SERVICE) as PowerManager
- powerManager.newWakeLock(
- PowerManager.ACQUIRE_CAUSES_WAKEUP or PowerManager.SCREEN_DIM_WAKE_LOCK,
- "ic:temperatureWakeLock"
- )
- }
+ private var wakeLock: PowerManager.WakeLock? = null
+
- @SuppressLint("InvalidWakeLockTag")
private fun initWakeLock() {
- wakeLock.acquire(10 * 60)
+ val powerManager: PowerManager = getSystemService(Context.POWER_SERVICE) as PowerManager
+ if (wakeLock == null) {
+ wakeLock = powerManager.newWakeLock(
+ PowerManager.ACQUIRE_CAUSES_WAKEUP or PowerManager.SCREEN_DIM_WAKE_LOCK,
+ "ic:temperatureWakeLock"
+ )
+ wakeLock?.setReferenceCounted(false)
+ }
+ wakeLock?.acquire(10 * 60)
}
- override fun onDestroy() {
- super.onDestroy()
+ override fun onPause() {
+ super.onPause()
+ println("onPause...")
releaseWakeLock()
}
private fun releaseWakeLock() {
- wakeLock.release()
+ try {
+ wakeLock?.release()
+ wakeLock = null
+ } catch (e: Exception) {
+ e.printStackTrace()
+ }
}
/**