mirror of
https://github.com/KDE/kdeconnect-android
synced 2025-09-02 15:15:09 +00:00
Use registerNetworkCallback to listen to network changes
ConnectivityManager.CONNECTIVITY_ACTION was deprecated in Android 9
This commit is contained in:
@@ -17,6 +17,8 @@ import android.content.IntentFilter;
|
|||||||
import android.content.SharedPreferences;
|
import android.content.SharedPreferences;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.net.ConnectivityManager;
|
import android.net.ConnectivityManager;
|
||||||
|
import android.net.Network;
|
||||||
|
import android.net.NetworkRequest;
|
||||||
import android.os.Binder;
|
import android.os.Binder;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.os.IBinder;
|
import android.os.IBinder;
|
||||||
@@ -262,11 +264,27 @@ public class BackgroundService extends Service {
|
|||||||
// Register screen on listener
|
// Register screen on listener
|
||||||
IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_ON);
|
IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_ON);
|
||||||
// See: https://developer.android.com/reference/android/net/ConnectivityManager.html#CONNECTIVITY_ACTION
|
// See: https://developer.android.com/reference/android/net/ConnectivityManager.html#CONNECTIVITY_ACTION
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N && Build.VERSION.SDK_INT < Build.VERSION_CODES.P) {
|
||||||
filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
|
filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
|
||||||
}
|
}
|
||||||
registerReceiver(new KdeConnectBroadcastReceiver(), filter);
|
registerReceiver(new KdeConnectBroadcastReceiver(), filter);
|
||||||
|
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||||
|
ConnectivityManager cm = (ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE);
|
||||||
|
NetworkRequest.Builder builder = new NetworkRequest.Builder();
|
||||||
|
cm.registerNetworkCallback(builder.build(), new ConnectivityManager.NetworkCallback() {
|
||||||
|
@Override
|
||||||
|
public void onAvailable(Network network) {
|
||||||
|
onDeviceListChanged();
|
||||||
|
onNetworkChange();
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void onLost(Network network) {
|
||||||
|
onDeviceListChanged();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
Log.i("KDE/BackgroundService", "Service not started yet, initializing...");
|
Log.i("KDE/BackgroundService", "Service not started yet, initializing...");
|
||||||
|
|
||||||
PluginFactory.initPluginInfo(getBaseContext());
|
PluginFactory.initPluginInfo(getBaseContext());
|
||||||
|
Reference in New Issue
Block a user