Skip to content

Commit d76c381

Browse files
committed
- [wifi_basic,android] WiFiBasic, WifiBasicPlugin: setEnabled - removed shouldOpenSettings arg
- [wifi_basic,android,test] `WiFiBasic`, `WifiBasicPlugin`: `openSettings` method added, implemented and test for it added - [wifi_basic,example] smaller example with just buttons
1 parent 6a34081 commit d76c381

File tree

4 files changed

+58
-68
lines changed

4 files changed

+58
-68
lines changed

packages/wifi_basic/android/src/main/kotlin/dev/flutternetwork/wifi/wifi_basic/WifiBasicPlugin.kt

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,12 @@ class WifiBasicPlugin : FlutterPlugin, MethodCallHandler {
4242
}
4343
"setEnabled" -> {
4444
val enabled = call.argument<Boolean>("enabled")
45-
if (enabled != null) {
46-
val shouldOpenSettings = call.argument<Boolean>("shouldOpenSettings")
47-
val isSuccess = setEnabled(enabled, shouldOpenSettings ?: false)
48-
result.success(isSuccess)
49-
} else {
50-
result.error("InvalidArg", "enabled argument is null", null)
51-
}
45+
?: return result.error("InvalidArg", "enabled argument is null", null)
46+
result.success(setEnabled(enabled))
47+
}
48+
"openSettings" -> {
49+
openSettings()
50+
result.success(null)
5251
}
5352
else -> {
5453
result.notImplemented()
@@ -67,16 +66,16 @@ class WifiBasicPlugin : FlutterPlugin, MethodCallHandler {
6766

6867
private fun isEnabled(): Boolean = wifi!!.isWifiEnabled
6968

70-
private fun setEnabled(enabled: Boolean, shouldOpenSettings: Boolean): Boolean =
69+
private fun setEnabled(enabled: Boolean): Boolean =
7170
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) {
7271
wifi!!.setWifiEnabled(enabled)
7372
} else {
74-
val isSuccess = wifi!!.setWifiEnabled(enabled)
75-
if (!isSuccess && shouldOpenSettings) {
76-
val intent = Intent(Settings.ACTION_WIFI_SETTINGS)
77-
intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK
78-
context!!.startActivity(intent)
79-
}
80-
isSuccess
73+
false;
8174
}
75+
76+
private fun openSettings() {
77+
val intent = Intent(Settings.ACTION_WIFI_SETTINGS)
78+
intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK
79+
context!!.startActivity(intent)
80+
}
8281
}

packages/wifi_basic/example/lib/main.dart

Lines changed: 36 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -24,55 +24,44 @@ class _MyAppState extends State<MyApp> {
2424
Widget build(BuildContext context) {
2525
return MaterialApp(
2626
home: Builder(
27-
builder: (context) => Scaffold(
28-
appBar: AppBar(
29-
title: const Text('Plugin example app'),
27+
builder: (context) => Scaffold(
28+
appBar: AppBar(
29+
title: const Text('Plugin example app'),
30+
),
31+
body: Padding(
32+
padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 20),
33+
child: Column(
34+
crossAxisAlignment: CrossAxisAlignment.start,
35+
children: [
36+
ElevatedButton(
37+
child: const Text("WiFiBasic.hasCapability();"),
38+
onPressed: () async => showSnackbar(context,
39+
"hasCapability: ${await WiFiBasic.hasCapability()}"),
3040
),
31-
body: Padding(
32-
padding:
33-
const EdgeInsets.symmetric(vertical: 12, horizontal: 20),
34-
child: Column(
35-
crossAxisAlignment: CrossAxisAlignment.center,
36-
children: [
37-
Row(
38-
children: [
39-
const Text("WiFiBasic.hasCapability:"),
40-
TextButton(
41-
child: const Text("call"),
42-
onPressed: () async => showSnackbar(context,
43-
"hasCapability: ${await WiFiBasic.hasCapability()}"),
44-
),
45-
],
46-
),
47-
Row(
48-
children: [
49-
const Text("WiFiBasic.isEnabled:"),
50-
TextButton(
51-
child: const Text("call"),
52-
onPressed: () async => showSnackbar(context,
53-
"isEnabled: ${await WiFiBasic.isEnabled()}"),
54-
),
55-
],
56-
),
57-
Row(
58-
children: [
59-
const Text("WiFiBasic.setEnabled:"),
60-
TextButton(
61-
child: const Text("enable"),
62-
onPressed: () async => showSnackbar(context,
63-
"setEnabled(true): ${await WiFiBasic.setEnabled(true, shouldOpenSettings: true)}"),
64-
),
65-
TextButton(
66-
child: const Text("disable"),
67-
onPressed: () async => showSnackbar(context,
68-
"setEnabled(false): ${await WiFiBasic.setEnabled(false, shouldOpenSettings: true)}"),
69-
),
70-
],
71-
),
72-
],
73-
),
41+
ElevatedButton(
42+
child: const Text("WiFiBasic.isEnabled();"),
43+
onPressed: () async => showSnackbar(
44+
context, "isEnabled: ${await WiFiBasic.isEnabled()}"),
7445
),
75-
)),
46+
ElevatedButton(
47+
child: const Text("WiFiBasic.setEnabled(true);"),
48+
onPressed: () async => showSnackbar(context,
49+
"setEnabled(true): success? ${await WiFiBasic.setEnabled(true)}"),
50+
),
51+
ElevatedButton(
52+
child: const Text("WiFiBasic.setEnabled(false);"),
53+
onPressed: () async => showSnackbar(context,
54+
"setEnabled(false): success? ${await WiFiBasic.setEnabled(false)}"),
55+
),
56+
ElevatedButton(
57+
child: const Text("WiFiBasic.openSettings();"),
58+
onPressed: () async => await WiFiBasic.openSettings(),
59+
),
60+
],
61+
),
62+
),
63+
),
64+
),
7665
);
7766
}
7867
}

packages/wifi_basic/lib/wifi_basic.dart

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,9 @@ class WiFiBasic {
1111
static Future<bool> isEnabled() async =>
1212
await _channel.invokeMethod('isEnabled');
1313

14-
static Future<bool> setEnabled(bool enabled,
15-
{bool shouldOpenSettings = false}) async =>
16-
await _channel.invokeMethod('setEnabled', {
17-
"enabled": enabled,
18-
"shouldOpenSettings": shouldOpenSettings,
19-
});
14+
static Future<bool> setEnabled(bool enabled) async =>
15+
await _channel.invokeMethod('setEnabled', {"enabled": enabled});
16+
17+
static Future<void> openSettings() async =>
18+
await _channel.invokeMethod("openSettings");
2019
}

packages/wifi_basic/test/wifi_basic_test.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ void main() {
1818
case "setEnabled":
1919
isEnabled = methodCall.arguments["enabled"];
2020
return true;
21+
case "openSettings":
22+
return null;
2123
default:
2224
throw MissingPluginException();
2325
}
@@ -33,5 +35,6 @@ void main() {
3335
expect(await WiFiBasic.isEnabled(), true);
3436
expect(await WiFiBasic.setEnabled(false), true);
3537
expect(await WiFiBasic.isEnabled(), false);
38+
await WiFiBasic.openSettings();
3639
});
3740
}

0 commit comments

Comments
 (0)