3

我想通过单击按钮打开相机,但无法在iOS包中添加相机图库权限。

我有这些钥匙:

NSPhotoLibraryUsageDescription
NSCameraUsageDescription
NSMicrophoneUsageDescription

我不知道我应该把这些线放在哪里。

4

4 回答 4

6

编辑这个文件:

[Flutter Project Folder]/ios/Runner/Info.plist

添加这些条目:

<key>NSPhotoLibraryUsageDescription</key>
<string>App needs access to photo lib for profile images</string>

<key>NSCameraUsageDescription</key>
<string>To capture profile photo please grant camera access</string>

字符串部分可以是您希望用户看到的任何描述,以解释您的应用为什么需要这些权限

这些行应该添加在标签之后

这里有其他选项的详细说明: https ://stackoverflow.com/a/39519960/530884

于 2020-10-30T14:15:56.270 回答
1

看一下camera包的示例项目:https ://github.com/flutter/plugins/blob/master/packages/camera/camera/example/ios/Runner/Info.plist

您会看到这些行与其余行一致。

于 2019-12-17T13:05:38.510 回答
1

要在 Flutter 中添加权限,必须同时添加AndroidManifest.xml文件和info.plist文件的权限。

要将您要求的特定权限添加到 info.plist,您可以转到:

iOS -> 亚军 -> info.plist

在此处输入图像描述

于 2019-12-17T13:07:54.290 回答
0

图库、相机和麦克风(等)的权限应添加到ios/Runner/info.plist文件中,就在UILaunchStoryboardName密钥之前。

<dict>
    <!-- permissions -->
    <key>NSPhotoLibraryUsageDescription</key>
    <string>Please grant photo gallery access</string>
    <key>NSCameraUsageDescription</key>
    <string>Please grant camera access</string>
    <key>NSMicrophoneUsageDescription</key>
    <string>Please grant microphone access</string>
    <!-- end permissions -->
    <key>UILaunchStoryboardName</key>
    <string>LaunchScreen</string>
</dict>

请注意,plist 文件是制表符分隔的,因此您不应使用空格。

于 2022-02-15T03:52:59.977 回答