123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- package com.kfb.kfbv1;
-
- import android.content.Context;
- import android.net.wifi.WifiConfiguration;
- import android.net.wifi.WifiManager;
- import android.os.Handler;
- import android.util.Log;
-
- import androidx.core.util.Preconditions;
-
- import java.lang.reflect.InvocationTargetException;
- import java.lang.reflect.Method;
-
-
-
- public class MyAcessPoint {
-
- private static final int WIFI_AP_STATE_FAILED = 4;
- private WifiManager mWifiManager = null;
- private final String TAG = "Wifi Access Manager";
- private Method wifiControlMethod;
- private Method wifiApConfigurationMethod;
- private Method wifiApState;
-
- public MyAcessPoint(Context context) throws SecurityException, NoSuchMethodException {
- mWifiManager = (WifiManager)context.getSystemService(Context.WIFI_SERVICE);
- wifiControlMethod = mWifiManager.getClass().getMethod("setWifiApEnabled", WifiConfiguration.class, boolean.class);
- wifiApConfigurationMethod = mWifiManager.getClass().getMethod("getWifiApConfiguration", null);
- wifiApState = mWifiManager.getClass().getMethod("getWifiApState");
- }
-
- public boolean setWifiApState(WifiConfiguration config, boolean enabled) {
- try {
- if (enabled) {
- mWifiManager.setWifiEnabled(!enabled);
- }
- return (Boolean) wifiControlMethod.invoke(mWifiManager, config, enabled);
- } catch (Exception e) {
- Log.e(TAG, "", e);
- return false;
- }
- }
-
- public WifiConfiguration getWifiApConfiguration() {
- try {
- return (WifiConfiguration) wifiApConfigurationMethod.invoke(mWifiManager, null);
- } catch (Exception e) {
- return null;
- }
- }
-
- public int getWifiApState() {
- try {
- return (Integer) wifiApState.invoke(mWifiManager);
- } catch (Exception e) {
- Log.e(TAG, "", e);
- return WIFI_AP_STATE_FAILED;
- }
- }
- }
-
-
|