Skip to content

Commit 4ff2d9d

Browse files
authored
build: update target SDK to 34 and declare foreground service type (#546)
1 parent f883215 commit 4ff2d9d

File tree

4 files changed

+42
-5
lines changed

4 files changed

+42
-5
lines changed

Android/app/src/main/AndroidManifest.xml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33

44
<uses-permission android:name="android.permission.INTERNET" />
55
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
6+
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
67
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
78
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
9+
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE" />
810
<uses-permission android:name="android.permission.VIBRATE"/>
911
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>
1012

@@ -30,7 +32,8 @@
3032
android:name="app.intra.sys.IntraVpnService"
3133
android:exported="false"
3234
android:label="@string/app_name"
33-
android:permission="android.permission.BIND_VPN_SERVICE" >
35+
android:permission="android.permission.BIND_VPN_SERVICE"
36+
android:foregroundServiceType="connectedDevice">
3437
<intent-filter>
3538
<action android:name="android.net.VpnService"/>
3639
</intent-filter>

Android/app/src/main/java/app/intra/sys/IntraVpnService.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import android.content.Intent;
2525
import android.content.SharedPreferences;
2626
import android.content.pm.PackageManager;
27+
import android.content.pm.ServiceInfo;
2728
import android.net.ConnectivityManager;
2829
import android.net.Network;
2930
import android.net.NetworkInfo;
@@ -190,7 +191,13 @@ public int onStartCommand(Intent intent, int flags, int startId) {
190191
builder = builder.setVisibility(Notification.VISIBILITY_SECRET);
191192
}
192193

193-
startForeground(SERVICE_ID, builder.getNotification());
194+
if (Build.VERSION.SDK_INT >= VERSION_CODES.TIRAMISU) {
195+
// https://developer.android.com/about/versions/14/changes/fgs-types-required
196+
startForeground(SERVICE_ID, builder.build(),
197+
ServiceInfo.FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE);
198+
} else {
199+
startForeground(SERVICE_ID, builder.build());
200+
}
194201

195202
updateQuickSettingsTile();
196203

Android/gradle.properties

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ android.defaults.buildfeatures.buildconfig=true
2727
android.nonTransitiveRClass=false
2828
android.nonFinalResIds=false
2929

30-
ANDROID_COMPILE_SDK_VERSION=33
31-
ANDROID_BUILD_TOOLS_VERSION=33.0.0
30+
ANDROID_COMPILE_SDK_VERSION=34
31+
ANDROID_BUILD_TOOLS_VERSION=34.0.0
3232

3333
ANDROID_MIN_SDK_VERSION=16
34-
ANDROID_TARGET_SDK_VERSION=33
34+
ANDROID_TARGET_SDK_VERSION=34

Android/gradle/verification-metadata.xml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,9 @@
6464
</artifact>
6565
</component>
6666
<component group="androidx.arch.core" name="core-runtime" version="2.0.0">
67+
<artifact name="core-runtime-2.0.0.aar">
68+
<sha256 value="87e65fc767c712b437649c7cee2431ebb4bed6daef82e501d4125b3ed3f65f8e" origin="Generated by Gradle"/>
69+
</artifact>
6770
<artifact name="core-runtime-2.0.0.pom">
6871
<sha256 value="e2007d41ddc69ee2a77fed7b5c1dc5a41e01122926ba59696aab7b18d2264411" origin="Generated by Gradle"/>
6972
</artifact>
@@ -239,6 +242,9 @@
239242
</artifact>
240243
</component>
241244
<component group="androidx.lifecycle" name="lifecycle-common" version="2.3.1">
245+
<artifact name="lifecycle-common-2.3.1.jar">
246+
<sha256 value="15848fb56db32f4c7cdc72b324003183d52a4884d6bf09be708ac7f587d139b5" origin="Generated by Gradle"/>
247+
</artifact>
242248
<artifact name="lifecycle-common-2.3.1.module">
243249
<sha256 value="5fb7c8514d8c56cada5e29ef89dc0289e71942ab4cb0b2e6dca137b9dcb8fdd4" origin="Generated by Gradle"/>
244250
</artifact>
@@ -281,6 +287,9 @@
281287
</artifact>
282288
</component>
283289
<component group="androidx.lifecycle" name="lifecycle-runtime" version="2.3.1">
290+
<artifact name="lifecycle-runtime-2.3.1.aar">
291+
<sha256 value="dd294f4a689c71ff877fd41f3b67a3a62f7760d44ce420e6130f1fc3569d8f00" origin="Generated by Gradle"/>
292+
</artifact>
284293
<artifact name="lifecycle-runtime-2.3.1.module">
285294
<sha256 value="2a7b90e5049b674b36bccfd68677b3a0b3178b3f7c2ef7ddf618d3895598c4ce" origin="Generated by Gradle"/>
286295
</artifact>
@@ -1764,16 +1773,25 @@
17641773
</artifact>
17651774
</component>
17661775
<component group="junit" name="junit" version="4.13.1">
1776+
<artifact name="junit-4.13.1.jar">
1777+
<sha256 value="c30719db974d6452793fe191b3638a5777005485bae145924044530ffa5f6122" origin="Generated by Gradle"/>
1778+
</artifact>
17671779
<artifact name="junit-4.13.1.pom">
17681780
<sha256 value="c68defdedaaaeae1432e12a5302bf2bfa05057d8b5acc65aaa3f3d9853ff40d6" origin="Generated by Gradle"/>
17691781
</artifact>
17701782
</component>
17711783
<component group="net.bytebuddy" name="byte-buddy" version="1.7.9">
1784+
<artifact name="byte-buddy-1.7.9.jar">
1785+
<sha256 value="2ea2ada12b790d16ac7f6e6c065cb55cbcdb6ba519355f5958851159cad3b16a" origin="Generated by Gradle"/>
1786+
</artifact>
17721787
<artifact name="byte-buddy-1.7.9.pom">
17731788
<sha256 value="abf1ec22e85e9f99833f51c0342d116838e60dedb5b186421b5552aa39f9833b" origin="Generated by Gradle"/>
17741789
</artifact>
17751790
</component>
17761791
<component group="net.bytebuddy" name="byte-buddy-agent" version="1.7.9">
1792+
<artifact name="byte-buddy-agent-1.7.9.jar">
1793+
<sha256 value="ac1a993befb528c3271a83a9ad9c42d363d399e9deb26e0470e3c4962066c550" origin="Generated by Gradle"/>
1794+
</artifact>
17771795
<artifact name="byte-buddy-agent-1.7.9.pom">
17781796
<sha256 value="7df0a37b1bc03e393060f3d1395fdf7f35bb3608fe8ff425539e41c118cccbd1" origin="Generated by Gradle"/>
17791797
</artifact>
@@ -2120,6 +2138,9 @@
21202138
</artifact>
21212139
</component>
21222140
<component group="org.json" name="json" version="20180813">
2141+
<artifact name="json-20180813.jar">
2142+
<sha256 value="518080049ba83181914419d11a25d9bc9833a2d729b6a6e7469fa52851356da8" origin="Generated by Gradle"/>
2143+
</artifact>
21232144
<artifact name="json-20180813.pom">
21242145
<sha256 value="c7e660c50bf4ecda0fc81ab62b489db9171e207fa784ddcb48c6c85bb40b49f5" origin="Generated by Gradle"/>
21252146
</artifact>
@@ -2133,11 +2154,17 @@
21332154
</artifact>
21342155
</component>
21352156
<component group="org.mockito" name="mockito-core" version="2.13.0">
2157+
<artifact name="mockito-core-2.13.0.jar">
2158+
<sha256 value="92a746b37cf8c5730a5e7b35fd7d8cd72700089435ff92ee03ed8384d4eb3377" origin="Generated by Gradle"/>
2159+
</artifact>
21362160
<artifact name="mockito-core-2.13.0.pom">
21372161
<sha256 value="d6a107375f367d0198c505fe316102ee04f337275c17aad0240c992bb3ccd2f0" origin="Generated by Gradle"/>
21382162
</artifact>
21392163
</component>
21402164
<component group="org.objenesis" name="objenesis" version="2.6">
2165+
<artifact name="objenesis-2.6.jar">
2166+
<sha256 value="5e168368fbc250af3c79aa5fef0c3467a2d64e5a7bd74005f25d8399aeb0708d" origin="Generated by Gradle"/>
2167+
</artifact>
21412168
<artifact name="objenesis-2.6.pom">
21422169
<sha256 value="4c1307909dc62df1bd91f075503f8bdef5ae445e13353f1752af9448bea1d3f1" origin="Generated by Gradle"/>
21432170
</artifact>

0 commit comments

Comments
 (0)