Skip to content

Commit eb4c946

Browse files
committed
bump sdk, gradle and deps
1 parent 67086bc commit eb4c946

32 files changed

Lines changed: 96 additions & 82 deletions

app/build.gradle

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
//file:noinspection GrDeprecatedAPIUsage
12
apply plugin: 'com.android.application'
23
apply plugin: 'kotlin-android'
34

@@ -8,9 +9,6 @@ android {
89
compileSdk rootProject.ext.compileSdk
910
def baseVersionCode = versCode as Integer
1011

11-
aaptOptions {
12-
noCompress '7z'
13-
}
1412

1513
defaultConfig {
1614
applicationId "org.koreader.launcher"
@@ -120,6 +118,9 @@ android {
120118
htmlReport false
121119
xmlReport false
122120
}
121+
androidResources {
122+
noCompress '7z'
123+
}
123124

124125
applicationVariants.configureEach { variant ->
125126
variant.outputs.configureEach {
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
2+
<adaptive-icon xmlns:tools="http://schemas.android.com/tools"
3+
xmlns:android="http://schemas.android.com/apk/res/android"
4+
tools:ignore="MonochromeLauncherIcon">
35
<background android:drawable="@color/icon_debug"/>
46
<foreground android:drawable="@mipmap/icon_foreground"/>
57
</adaptive-icon>

app/src/main/AndroidManifest.xml

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,23 @@
1111
<!-- common android permissions -->
1212
<uses-permission android:name="android.permission.INTERNET" />
1313
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
14+
<uses-permission android:name="android.permission.WRITE_SETTINGS"
15+
tools:ignore="ProtectedPermissions" />
16+
17+
<!-- legacy storage permissions -->
1418
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"
1519
android:maxSdkVersion="29" />
1620
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
1721
tools:ignore="ScopedStorage" android:maxSdkVersion="29" />
18-
<uses-permission android:name="android.permission.WRITE_SETTINGS"
19-
tools:ignore="ProtectedPermissions" />
2022

2123
<!-- These are used on API30+ -->
2224
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"
23-
tools:ignore="ScopedStorage" />
24-
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
25+
tools:ignore="AllFilesAccessPolicy,ScopedStorage" />
26+
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"
27+
tools:ignore="PackageVisibilityPolicy" />
2528

2629
<application
30+
tools:ignore="DataExtractionRules,DiscouragedApi,NonResizeableActivity"
2731
android:name=".MainApp"
2832
android:icon="@mipmap/icon"
2933
android:banner="@mipmap/banner"
@@ -41,8 +45,7 @@
4145
android:resizeableActivity="false"
4246
android:screenOrientation="nosensor"
4347
android:launchMode="singleInstance"
44-
android:configChanges="colorMode|density|fontScale|keyboard|keyboardHidden|layoutDirection|locale|mcc|mnc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|touchscreen|uiMode"
45-
tools:ignore="NonResizeableActivity">
48+
android:configChanges="colorMode|density|fontScale|keyboard|keyboardHidden|layoutDirection|locale|mcc|mnc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|touchscreen|uiMode">
4649
<meta-data android:name="android.app.lib_name" android:value="luajit-launcher" />
4750
<intent-filter>
4851
<action android:name="android.intent.action.MAIN" />

app/src/main/java/org/koreader/launcher/ApkUpdater.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.koreader.launcher
22

3+
import android.annotation.SuppressLint
34
import android.app.DownloadManager
45
import android.content.Context
56
import android.content.Intent
@@ -8,6 +9,7 @@ import android.os.Build
89
import android.util.Log
910
import androidx.core.content.FileProvider
1011
import java.io.File
12+
import androidx.core.net.toUri
1113

1214
class ApkUpdater {
1315

@@ -27,7 +29,7 @@ class ApkUpdater {
2729
if (file.exists()) {
2830
DOWNLOAD_EXISTS
2931
} else {
30-
val request = DownloadManager.Request(Uri.parse(url))
32+
val request = DownloadManager.Request(url.toUri())
3133
request.setMimeType("application/vnd.android.package-archive")
3234
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_HIDDEN)
3335
request.setDestinationInExternalFilesDir(context, null, name)
@@ -56,6 +58,7 @@ class ApkUpdater {
5658
}
5759
}
5860

61+
@SuppressLint("RequestInstallPackagesPolicy")
5962
fun install(context: Context) {
6063
if (MainApp.OTA_UPDATES) {
6164
downloadPath?.let { apk ->

app/src/main/java/org/koreader/launcher/LuaInterface.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
@file:Suppress("SameReturnValue")
2+
13
package org.koreader.launcher
24

35
import androidx.annotation.WorkerThread

app/src/main/java/org/koreader/launcher/MainActivity.kt

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ package org.koreader.launcher
22

33
import android.Manifest
44
import android.annotation.SuppressLint
5-
import android.annotation.TargetApi
6-
import android.app.Activity
75
import android.app.NativeActivity
86
import android.content.ClipboardManager
97
import android.content.ClipData
@@ -24,9 +22,9 @@ import androidx.core.content.ContextCompat
2422
import org.koreader.launcher.device.Device
2523
import org.koreader.launcher.dialog.LightDialog
2624
import org.koreader.launcher.extensions.*
27-
import java.io.File
2825
import java.util.Locale
2926
import java.util.concurrent.CountDownLatch
27+
import androidx.core.net.toUri
3028

3129
class MainActivity : NativeActivity(), LuaInterface,
3230
ActivityCompat.OnRequestPermissionsResultCallback {
@@ -178,6 +176,7 @@ class MainActivity : NativeActivity(), LuaInterface,
178176
drawSplashScreen(holder)
179177
}
180178

179+
@SuppressLint("ObsoleteSdkInt")
181180
@RequiresApi(Build.VERSION_CODES.P)
182181
override fun onAttachedToWindow() {
183182
Log.d(TAG_SURFACE, "onAttachedToWindow()")
@@ -226,9 +225,9 @@ class MainActivity : NativeActivity(), LuaInterface,
226225
}
227226

228227
/* Called on activity result, available from KitKat onwards */
229-
@TargetApi(19)
228+
@RequiresApi(19)
230229
override fun onActivityResult(requestCode: Int, resultCode: Int, resultData: Intent?) {
231-
if (requestCode == ACTION_SAF_FILEPICKER_ID && resultCode == Activity.RESULT_OK) {
230+
if (requestCode == ACTION_SAF_FILEPICKER_ID && resultCode == RESULT_OK) {
232231
val importPath = lastImportedPath ?: return
233232
resultData?.let {
234233
val clipData = it.clipData
@@ -277,7 +276,7 @@ class MainActivity : NativeActivity(), LuaInterface,
277276
@Suppress("NewApi")
278277
override fun canIgnoreBatteryOptimizations(): Boolean {
279278
return if (MainApp.isAtLeastApi(Build.VERSION_CODES.M)) {
280-
val pm = applicationContext.getSystemService(Context.POWER_SERVICE) as PowerManager
279+
val pm = applicationContext.getSystemService(POWER_SERVICE) as PowerManager
281280
pm.isIgnoringBatteryOptimizations(packageName)
282281
} else false
283282
}
@@ -359,7 +358,7 @@ class MainActivity : NativeActivity(), LuaInterface,
359358
val result = Box<String>()
360359
runOnUiThread {
361360
result.value = try {
362-
val clipboard = getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
361+
val clipboard = getSystemService(CLIPBOARD_SERVICE) as ClipboardManager
363362
val clipData: ClipData? = clipboard.primaryClip
364363
clipData?.getItemAt(0)?.text?.toString()?.trim() ?: ""
365364
} catch (e: Exception) {
@@ -521,7 +520,7 @@ class MainActivity : NativeActivity(), LuaInterface,
521520
}
522521

523522
override fun hasClipboardText(): Boolean {
524-
val clipboard = getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
523+
val clipboard = getSystemService(CLIPBOARD_SERVICE) as ClipboardManager
525524
return clipboard.primaryClip?.let {
526525
(it.itemCount > 0)
527526
}?: false
@@ -629,7 +628,7 @@ class MainActivity : NativeActivity(), LuaInterface,
629628
}
630629

631630
override fun openLink(url: String): Boolean {
632-
val webpage = Uri.parse(url)
631+
val webpage = url.toUri()
633632
val intent = Intent(Intent.ACTION_VIEW, webpage)
634633
return try {
635634
startActivity(intent)
@@ -692,7 +691,7 @@ class MainActivity : NativeActivity(), LuaInterface,
692691

693692
override fun setClipboardText(text: String) {
694693
runOnUiThread {
695-
val clipboard = getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
694+
val clipboard = getSystemService(CLIPBOARD_SERVICE) as ClipboardManager
696695
clipboard.setPrimaryClip(ClipData.newPlainText("KOReader_clipboard", text))
697696
}
698697
}

app/src/main/java/org/koreader/launcher/MainApp.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.koreader.launcher
22

3+
import android.annotation.SuppressLint
34
import android.app.Application
45
import android.content.Context
56
import android.content.Intent
@@ -10,6 +11,7 @@ import java.io.BufferedReader
1011
import java.io.File
1112
import java.io.InputStreamReader
1213

14+
@Suppress("HasPlatformType")
1315
class MainApp : Application() {
1416
companion object {
1517
const val NAME = BuildConfig.APP_NAME
@@ -89,6 +91,7 @@ class MainApp : Application() {
8991
}
9092
}
9193

94+
@SuppressLint("DefaultUncaughtExceptionDelegation")
9295
@Suppress("DEPRECATION")
9396
override fun onCreate() {
9497
super.onCreate()

app/src/main/java/org/koreader/launcher/TestActivity.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.koreader.launcher
22

3+
import android.annotation.SuppressLint
34
import android.graphics.Point
45
import android.text.method.LinkMovementMethod
56
import android.util.Log
@@ -151,6 +152,7 @@ class TestActivity: AppCompatActivity() {
151152
Log.i(tag, MARKER_END)
152153
}
153154

155+
@SuppressLint("DefaultLocale")
154156
override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
155157
val msg = String.format("Pressed: %d", keyCode)
156158
Toast.makeText(this, msg, Toast.LENGTH_SHORT).show()

app/src/main/java/org/koreader/launcher/device/DeviceInfo.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import android.os.Build
1010
import android.util.Log
1111
import java.util.Locale
1212

13-
@Suppress("detekt:all")
13+
@Suppress("detekt:all", "LocalVariableName")
1414
object DeviceInfo {
1515
private const val TAG = "DeviceInfo"
1616

@@ -509,7 +509,7 @@ object DeviceInfo {
509509
// Onyx Note Air 4C
510510
BRAND == "onyx" && MODEL == "noteair4c"
511511
-> Id.ONYX_NOTE_AIR_4C
512-
512+
513513
// Onyx Note Air 5C
514514
BRAND == "onyx" && MODEL == "noteair5c"
515515
-> Id.ONYX_NOTE_AIR_5C

app/src/main/java/org/koreader/launcher/device/EPDFactory.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/* generic EPD Controller for Android devices,
22
* based on https://github.com/unwmun/refreshU */
33

4+
@file:Suppress("EmptyMethod")
5+
46
package org.koreader.launcher.device
57

68
import android.util.Log

0 commit comments

Comments
 (0)