Add support for foreground service permission
This commit is contained in:
@@ -32,6 +32,7 @@
|
||||
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
|
||||
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
|
||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
|
||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE"/>
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
<uses-permission android:name="android.permission.LOCAL_MAC_ADDRESS"
|
||||
tools:ignore="ProtectedPermissions" />
|
||||
@@ -102,11 +103,13 @@
|
||||
<service
|
||||
android:name=".LocalOnlyHotspotService"
|
||||
android:directBootAware="true"
|
||||
android:foregroundServiceType="location|connectedDevice"/>
|
||||
android:foregroundServiceType="location|connectedDevice"
|
||||
tools:ignore="ForegroundServicePermission"/>
|
||||
<service
|
||||
android:name=".RepeaterService"
|
||||
android:directBootAware="true"
|
||||
android:foregroundServiceType="location|connectedDevice"/>
|
||||
android:foregroundServiceType="location|connectedDevice"
|
||||
tools:ignore="ForegroundServicePermission"/>
|
||||
<service
|
||||
android:name=".TetheringService"
|
||||
android:directBootAware="true"
|
||||
|
||||
@@ -3,6 +3,8 @@ package be.mygod.vpnhotspot
|
||||
import android.app.*
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.content.pm.ServiceInfo
|
||||
import android.os.Build
|
||||
import androidx.core.content.getSystemService
|
||||
import be.mygod.vpnhotspot.App.Companion.app
|
||||
import java.util.*
|
||||
@@ -53,7 +55,10 @@ object ServiceNotification {
|
||||
synchronized(this) {
|
||||
deviceCountsMap[service] = deviceCounts
|
||||
if (inactive.isEmpty()) inactiveMap.remove(service) else inactiveMap[service] = inactive
|
||||
service.startForeground(NOTIFICATION_ID, buildNotification(service))
|
||||
if (Build.VERSION.SDK_INT >= 33) {
|
||||
service.startForeground(NOTIFICATION_ID, buildNotification(service),
|
||||
ServiceInfo.FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE)
|
||||
} else service.startForeground(NOTIFICATION_ID, buildNotification(service))
|
||||
}
|
||||
}
|
||||
fun stopForeground(service: Service) = synchronized(this) {
|
||||
|
||||
Reference in New Issue
Block a user