Flutter獲取當前網路型別

早起的年輕人發表於2021-05-14

在碼農的世界裡,優美的應用體驗,來源於程式設計師對細節的處理以及自我要求的境界,年輕人也是忙忙碌碌的碼農中一員,每天、每週,都會留下一些腳印,就是這些創作的內容,有一種執著,就是不知為什麼,如果你迷茫,不妨來瞅瞅碼農的軌跡。

如果你有興趣 你可以關注一下公眾號 biglead 來獲取最新的學習資料。

通過使用外掛connectivity可以獲取到當前裝置是否聯網,以及當前的網路型別是WIFI還是行動網路

那麼首先第一步就是去載入外掛,首先去 pub倉庫 搜尋外掛最新版本 在這裡插入圖片描述 在這裡插入圖片描述

然後將最新版本新增到 Flutter 專案配置檔案中

在這裡插入圖片描述 然後在使用的時候匯入標頭檔案

import 'package:connectivity/connectivity.dart';
複製程式碼
  //獲取網路型別
  String _netType;

  void isConnectedType() async {
    //獲取網路連線型別
    var connectivityResult = await (Connectivity().checkConnectivity());
    
    if (connectivityResult == ConnectivityResult.mobile) {
      // 網路型別為行動網路
      _netType = "4G";
    } else if (connectivityResult == ConnectivityResult.wifi) {
      // 網路型別為WIFI
      _netType = "WIFI";
    }else{
      _netType = "未聯接";
    }
    setState(() {});
  }
複製程式碼

當然可以直接根據 connectivityResult 來判斷是否聯網

//判斷是否聯網
  Future<bool> isConnected() async {
    var connectivityResult = await (Connectivity().checkConnectivity());
    return connectivityResult != ConnectivityResult.none;
  }
複製程式碼

當然當你的網路有變化時,還可以在這裡設定監聽

  //新增網路切換監聽 
  connectLiserner() async {
    //獲取Stream
    Stream<ConnectivityResult> resultStream =
        Connectivity().onConnectivityChanged;
    //新增監聽
    resultStream.listen((event) {
      //
    });
  }
複製程式碼

完畢

不侷限於思維,不侷限語言限制,才是程式設計的最高境界。

以小編的性格,肯定是要錄製一套視訊的,隨後會上傳

有興趣 你可以關注一下公眾號 biglead 來獲取最新的學習資料

相關文章