summaryrefslogtreecommitdiff
path: root/app/src/main/java/com/example/mylauncher/WifiNetworkCallback.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/com/example/mylauncher/WifiNetworkCallback.java')
-rw-r--r--app/src/main/java/com/example/mylauncher/WifiNetworkCallback.java39
1 files changed, 39 insertions, 0 deletions
diff --git a/app/src/main/java/com/example/mylauncher/WifiNetworkCallback.java b/app/src/main/java/com/example/mylauncher/WifiNetworkCallback.java
new file mode 100644
index 0000000..f365b17
--- /dev/null
+++ b/app/src/main/java/com/example/mylauncher/WifiNetworkCallback.java
@@ -0,0 +1,39 @@
+package com.example.mylauncher;
+
+import android.net.ConnectivityManager;
+import android.net.Network;
+import android.net.ConnectivityManager.NetworkCallback;
+import android.os.Build;
+import android.widget.Toast;
+
+public class WifiNetworkCallback extends NetworkCallback {
+ private final String ssid;
+ private final ConnectivityManager connectivityManager;
+ private final MainActivity mainActivity;
+
+ public WifiNetworkCallback(MainActivity activity, String ssid, ConnectivityManager connectivityManager) {
+ this.ssid = ssid;
+ this.connectivityManager = connectivityManager;
+ this.mainActivity = activity;
+ }
+
+ @Override
+ public void onAvailable(Network network) {
+ // Use this network object to send requests
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
+ connectivityManager.bindProcessToNetwork(network);
+ } else {
+ ConnectivityManager.setProcessDefaultNetwork(network);
+ }
+ mainActivity.runOnUiThread(() -> {
+ Toast.makeText(mainActivity, "Connected to " + ssid, Toast.LENGTH_SHORT).show();
+ });
+ }
+
+ @Override
+ public void onUnavailable() {
+ mainActivity.runOnUiThread(() -> {
+ Toast.makeText(mainActivity, "Unable to connect to " + ssid, Toast.LENGTH_SHORT).show();
+ });
+ }
+}