Skip to content

Commit 46e8369

Browse files
committed
Upgrade minSdk to 24
1 parent 4ed4953 commit 46e8369

File tree

9 files changed

+6
-117
lines changed

9 files changed

+6
-117
lines changed

.github/workflows/ci.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ jobs:
2424
fail-fast: false
2525
matrix:
2626
api-level: [24, 29, 31, 33]
27-
target: [google_apis]
2827

2928
steps:
3029
- name: checkout
@@ -45,7 +44,6 @@ jobs:
4544
arch: x86_64
4645
profile: Nexus 6
4746
cores: 4
48-
avd-name: macOS-avd-x86-${{ matrix.api-level }}
4947
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
5048
disable-animations: true
5149
script: ./gradlew connectedCheck mergeAndroidReports --continue

baseLib/src/androidTest/java/me/ycdev/android/lib/common/async/AsyncTaskQueueTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ class AsyncTaskQueueTest {
6262

6363
// Waiting for the task done
6464
assertThat(latch.count).isEqualTo(2)
65-
latch.await(1000, TimeUnit.MILLISECONDS)
65+
latch.await(1500, TimeUnit.MILLISECONDS)
6666
assertThat(latch.count).isEqualTo(1)
6767
latch.await(2000, TimeUnit.MILLISECONDS)
6868
assertThat(latch.count).isEqualTo(0)
Lines changed: 1 addition & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package me.ycdev.android.lib.common.net
22

33
import android.content.Context
4-
import android.os.SystemClock
54
import androidx.test.core.app.ApplicationProvider
65
import androidx.test.ext.junit.runners.AndroidJUnit4
76
import androidx.test.filters.LargeTest
@@ -14,8 +13,6 @@ import me.ycdev.android.lib.common.net.NetworkUtils.NETWORK_TYPE_MOBILE
1413
import me.ycdev.android.lib.common.net.NetworkUtils.NETWORK_TYPE_NONE
1514
import me.ycdev.android.lib.common.net.NetworkUtils.NETWORK_TYPE_WIFI
1615
import me.ycdev.android.lib.common.net.NetworkUtils.NetworkType
17-
import me.ycdev.android.lib.common.utils.SystemSwitchUtils
18-
import org.junit.Assert.fail
1916
import org.junit.Rule
2017
import org.junit.Test
2118
import org.junit.rules.Timeout
@@ -32,7 +29,7 @@ class NetworkUtilsTest {
3229
// for any network
3330
val context = ApplicationProvider.getApplicationContext<Context>()
3431

35-
@NetworkType var networkType = NetworkUtils.getNetworkType(context)
32+
@NetworkType val networkType = NetworkUtils.getNetworkType(context)
3633
assertWithMessage("check all return values")
3734
.that(networkType)
3835
.isAnyOf(
@@ -41,47 +38,6 @@ class NetworkUtilsTest {
4138
NETWORK_TYPE_COMPANION_PROXY,
4239
NETWORK_TYPE_NONE
4340
)
44-
45-
val oldNetworkType = NetworkUtils.getNetworkType(context)
46-
if (SystemSwitchUtils.isWifiEnabled(context)) {
47-
// disable WiFi
48-
SystemSwitchUtils.setWifiEnabled(context, false)
49-
waitForWiFiConnected(context, false)
50-
if (!SystemSwitchUtils.isWifiEnabled(context)) {
51-
networkType = NetworkUtils.getNetworkType(context)
52-
assertWithMessage("wifi disabled")
53-
.that(networkType)
54-
.isAnyOf(NETWORK_TYPE_MOBILE, NETWORK_TYPE_COMPANION_PROXY, NETWORK_TYPE_NONE)
55-
56-
if (oldNetworkType == NETWORK_TYPE_WIFI) {
57-
// enable WiFi
58-
SystemSwitchUtils.setWifiEnabled(context, true)
59-
if (!waitForWiFiConnected(context, true)) {
60-
fail("waitForWiFiConnected(true) timeout")
61-
}
62-
networkType = NetworkUtils.getNetworkType(context)
63-
assertWithMessage("wifi enabled")
64-
.that(networkType).isEqualTo(NETWORK_TYPE_WIFI)
65-
}
66-
}
67-
} else {
68-
// enable WiFi
69-
SystemSwitchUtils.setWifiEnabled(context, true)
70-
waitForWiFiConnected(context, true)
71-
if (SystemSwitchUtils.isWifiEnabled(context)) {
72-
networkType = NetworkUtils.getNetworkType(context)
73-
assertWithMessage("wifi enabled 2")
74-
.that(networkType).isAnyOf(NETWORK_TYPE_WIFI, oldNetworkType)
75-
76-
// disable WiFi
77-
SystemSwitchUtils.setWifiEnabled(context, false)
78-
waitForWiFiConnected(context, false)
79-
networkType = NetworkUtils.getNetworkType(context)
80-
assertWithMessage("wifi disabled 2")
81-
.that(networkType)
82-
.isAnyOf(NETWORK_TYPE_MOBILE, NETWORK_TYPE_COMPANION_PROXY, NETWORK_TYPE_NONE)
83-
}
84-
}
8541
}
8642

8743
@Test
@@ -93,13 +49,6 @@ class NetworkUtilsTest {
9349
assertWithMessage("check all return values")
9450
.that(networkType)
9551
.isAnyOf(NETWORK_TYPE_2G, NETWORK_TYPE_3G, NETWORK_TYPE_4G, NETWORK_TYPE_NONE)
96-
97-
// disable WiFi
98-
SystemSwitchUtils.setWifiEnabled(context, false)
99-
waitForWiFiConnected(context, false)
100-
assertWithMessage("check all return values")
101-
.that(networkType)
102-
.isAnyOf(NETWORK_TYPE_2G, NETWORK_TYPE_3G, NETWORK_TYPE_4G, NETWORK_TYPE_NONE)
10352
}
10453

10554
@Test
@@ -128,21 +77,4 @@ class NetworkUtilsTest {
12877
fun test_openHttpURLConnection() {
12978
// TODO
13079
}
131-
132-
private fun waitForWiFiConnected(cxt: Context, connected: Boolean): Boolean {
133-
val timeStart = SystemClock.elapsedRealtime()
134-
while (true) {
135-
if (SystemClock.elapsedRealtime() - timeStart >= 1000 * 15) {
136-
return false // timeout
137-
}
138-
139-
if (connected && NetworkUtils.getNetworkType(cxt) == NETWORK_TYPE_WIFI) {
140-
break
141-
} else if (!connected && NetworkUtils.getNetworkType(cxt) != NETWORK_TYPE_WIFI) {
142-
break
143-
}
144-
SystemClock.sleep(100)
145-
}
146-
return true
147-
}
14880
}

baseLib/src/androidTest/java/me/ycdev/android/lib/common/utils/SystemSwitchUtils.kt

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,4 @@ object SystemSwitchUtils {
1313
val wifiState = wifiMgr.wifiState
1414
return wifiState == WifiManager.WIFI_STATE_ENABLED || wifiState == WifiManager.WIFI_STATE_ENABLING
1515
}
16-
17-
fun setWifiEnabled(cxt: Context, enable: Boolean) {
18-
val wifiMgr = cxt.applicationContext.getSystemService(
19-
Context.WIFI_SERVICE
20-
) as WifiManager
21-
wifiMgr.isWifiEnabled = enable
22-
}
2316
}

baseLib/src/main/java/me/ycdev/android/lib/common/androidx/app/JobScheduler.kt

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,25 +2,8 @@
22

33
package me.ycdev.android.lib.common.androidx.app
44

5-
import android.app.job.JobInfo
65
import android.app.job.JobScheduler
7-
import android.os.Build.VERSION
8-
import android.os.Build.VERSION_CODES
9-
10-
fun JobScheduler.getPendingJobCompat(jobId: Int): JobInfo? {
11-
if (VERSION.SDK_INT >= VERSION_CODES.N) {
12-
return getPendingJob(jobId)
13-
} else {
14-
val jobInfoList = allPendingJobs
15-
for (jobInfo in jobInfoList) {
16-
if (jobInfo.id == jobId) {
17-
return jobInfo
18-
}
19-
}
20-
return null
21-
}
22-
}
236

247
fun JobScheduler.isJobScheduled(jobId: Int): Boolean {
25-
return getPendingJobCompat(jobId) != null
8+
return getPendingJob(jobId) != null
269
}

baseLib/src/main/java/me/ycdev/android/lib/common/apps/AppsLoader.kt

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package me.ycdev.android.lib.common.apps
22

3-
import android.annotation.TargetApi
43
import android.content.Context
54
import android.content.pm.ApplicationInfo
65
import android.content.pm.PackageInfo
@@ -11,16 +10,13 @@ import me.ycdev.android.lib.common.utils.MiscUtils
1110
import me.ycdev.android.lib.common.utils.PackageUtils
1211
import me.ycdev.android.lib.common.utils.StringUtils
1312
import java.io.File
14-
import java.util.ArrayList
15-
import java.util.HashMap
1613

1714
@Suppress("unused", "DEPRECATION")
1815
class AppsLoader private constructor(cxt: Context) {
1916
private val appContext: Context = cxt.applicationContext
2017
private val pm: PackageManager = cxt.packageManager
2118
private val myselfPkgName: String = cxt.packageName
2219

23-
@TargetApi(Build.VERSION_CODES.N)
2420
fun loadInstalledApps(
2521
filter: AppsLoadFilter,
2622
config: AppsLoadConfig,
@@ -132,9 +128,7 @@ class AppsLoader private constructor(cxt: Context) {
132128
}
133129

134130
item.targetSdkVersion = pkgInfo.applicationInfo.targetSdkVersion
135-
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
136-
item.minSdkVersion = pkgInfo.applicationInfo.minSdkVersion
137-
}
131+
item.minSdkVersion = pkgInfo.applicationInfo.minSdkVersion
138132

139133
return item
140134
}

baseLib/src/main/java/me/ycdev/android/lib/common/net/NetworkUtils.kt

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import android.content.Context
44
import android.net.ConnectivityManager
55
import android.net.Network
66
import android.net.NetworkCapabilities
7-
import android.os.Build
87
import android.telephony.TelephonyManager
98
import android.text.TextUtils
109
import androidx.annotation.IntDef
@@ -131,12 +130,7 @@ object NetworkUtils {
131130

132131
val tmType: Int
133132
try {
134-
@Suppress("DEPRECATION")
135-
tmType = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
136-
tm.dataNetworkType
137-
} else {
138-
tm.networkType
139-
}
133+
tmType = tm.dataNetworkType
140134
} catch (e: Exception) {
141135
LibLogger.w(TAG, "failed to get telephony network type", e)
142136
return NETWORK_TYPE_NONE

baseLib/src/main/java/me/ycdev/android/lib/common/utils/PackageUtils.kt

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,12 @@
22

33
package me.ycdev.android.lib.common.utils
44

5-
import android.annotation.TargetApi
65
import android.content.Context
76
import android.content.Intent
87
import android.content.pm.ActivityInfo
98
import android.content.pm.ApplicationInfo
109
import android.content.pm.PackageManager
1110
import android.content.pm.ServiceInfo
12-
import android.os.Build
1311
import android.view.inputmethod.InputMethodManager
1412
import java.util.ArrayList
1513

@@ -87,7 +85,6 @@ object PackageUtils {
8785
return pkgNames
8886
}
8987

90-
@TargetApi(Build.VERSION_CODES.N)
9188
fun getAllReceivers(
9289
cxt: Context,
9390
pkgName: String,
@@ -121,7 +118,6 @@ object PackageUtils {
121118
return emptyArray()
122119
}
123120

124-
@TargetApi(Build.VERSION_CODES.N)
125121
fun getAllServices(cxt: Context, pkgName: String, onlyExported: Boolean): Array<ServiceInfo> {
126122
try {
127123
val pm = cxt.packageManager
@@ -151,7 +147,6 @@ object PackageUtils {
151147
return emptyArray()
152148
}
153149

154-
@TargetApi(Build.VERSION_CODES.N)
155150
fun getAllActivities(
156151
cxt: Context,
157152
pkgName: String,

build_common.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
ext {
2-
versions.minSdk = 23
2+
versions.minSdk = 24
33
}

0 commit comments

Comments
 (0)