flutter許可權管理permission_handler

學富五車發表於2020-09-19

flutter許可權管理permission_handler

新增依賴

#許可權
  permission_handler: ^3.0.0

使用

androidmainfest中新增許可權:

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.CAMERA"/>
<!-- 這個許可權用於進行網路定位 -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<!-- 這個許可權用於訪問GPS定位 -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

然後在程式碼中請求:

import 'package:permission_handler/permission_handler.dart';
requestPermiss() async {
    //請求許可權
    Map<PermissionGroup, PermissionStatus> permissions =
    await PermissionHandler()
        .requestPermissions([PermissionGroup.location,PermissionGroup.camera]);
    //校驗許可權
    if(permissions[PermissionGroup.camera] != PermissionStatus.granted){
      print("無照相許可權");
    }
    if(permissions[PermissionGroup.location] != PermissionStatus.granted){
      print("無定位許可權");
    }
  }

設定效果圖如下:

 

 

開啟系統設定頁面:

PermissionHandler().openAppSettings();

 

相關文章