uniapp WIFI上下班打卡

大纲

uniapp WIFI上下班打卡_第1张图片


   uniapp官网:uni-app官网  

   WIFI功能模块:

        1、下载 wifi 插件 uni-WiFi

        2、在 manifest.json 中 App权限配置中 配置权限

                1. ACCESS_WIFI_STATE (访问权限状态)

                2. CHANGE_WIFI_STATE(更改wifi状态)

                3. ACCESS_FINE_LOCATION(访问线路位置)

                4. ACCESS_COARSE_LOCATION(访问文件位置)

uniapp WIFI上下班打卡_第2张图片

        3、编写方法来获取WiFi的名称

        4、后台设定好 wifi mac 名称。前端通过调用获取网络的方法 获取当前连接WIFI的信息从而拿到 mac 进行比对,验证是否是公司WIFI。

需要使用到的一些方法:

        1、uni.getConnectedWifi(OBJECT)

uniapp WIFI上下班打卡_第3张图片

        2、uni.connectWifi(OBJECT)

uniapp WIFI上下班打卡_第4张图片

uniapp WIFI上下班打卡_第5张图片

 代码展示: 




以上代码片段是通过 Native API(本地API) 与 Android Wi-Fi (安卓Wi-Fi) 系统服务进行交互的案例。以下是重点代码的详解:

        1、获取主 Activity(活动/窗体) 的引用,这对于访问 Android 系统服务是必需的

   let MainActivity = plus.android.runtimeMainActivity();

   2、从 Android 框架导入 Context 类,它提供了访问应用程序特定资源和服务的能力

           let Context = plus.android.importClass('android.content.Context');

        3、从 Android 框架导入 WifiManager 类,它允许管理 Wi-Fi 连接

           plus.android.importClass("android.net.wifi.WifiManager");

        4、导入其他与 Wi-Fi 操作相关的类

           plus.android.importClass("android.net.wifi.WifiInfo");

    plus.android.importClass("android.net.wifi.ScanResult");

    plus.android.importClass("java.util.ArrayList");

        5、使用主 Activity 的 getSystemService() 方法获取 WifiManager 类的实例

          let wifiManager = MainActivity.getSystemService(Context.WIFI_SERVICE);

       6、调用 WifiManager 实例的 setWifiEnabled() 方法将 Wi-Fi 启用,false为关闭

          wifiManager.setWifiEnabled(true);

         7、调用 WifiManager 实例的 getConnectionInfo() 方法获取当前连接信息

          let info = wifiManager.getConnectionInfo(); 

          获取当前 WIFI 连接的 SSID (WIFI 名称)
          this.mac = info.getBSSID()

    uni.navigateBack() 函数用于关闭当前页面并返回上一个页面或多个页面 ( 我这边了设置等待1秒钟,再跳转到上一个页面)

    setTimeout(() => { uni.navigateBack({ delta: 1 }); }, 1000);

效果展示:

uniapp WIFI上下班打卡_第6张图片 uniapp WIFI上下班打卡_第7张图片

 uniapp WIFI上下班打卡_第8张图片uniapp WIFI上下班打卡_第9张图片

你可能感兴趣的:(uniapp,uView,uni-app,前端,javascript)