# Android Sdk Permission Requirements

> Understand Android SDK permission requirements for Vivox.

使用 Vivox Android SDK 时，具有以下权限要求：

* 必需

  * android.permission.INTERNET - 允许与 Vivox 服务器通信

  * android.permission.RECORD\_AUDIO - 允许使用麦克风

    要了解更多信息，请参阅关于[请求应用权限](https://developer.android.com/training/permissions/requesting)的 Android 开发者文档。

* 推荐

  > **Note:**
  >
  > 未授予这些权限可能会导致某些 Vivox SDK 功能无法正常工作。

  * android.permission.MODIFY\_AUDIO\_SETTINGS

  * android.permission.ACCESS\_NETWORK\_STATE - 允许访问网络信息

  * android.permission.ACCESS\_WIFI\_STATE - 允许访问 Wi-Fi 信息

  * android.permission.BLUETOOTH - 在 Android 12 以下的版本上允许访问蓝牙设备

  * android.permission.BLUETOOTH\_CONNECT - 在 Android 版本 12 及更高版本上允许访问蓝牙设备

    > **Note:**
    >
    > 在 Android 12（Android SDK 版本 31）及更高版本上，您需要在运行时请求 android.permission.BLUETOOTH\_CONNECT 权限。要了解更多信息，请参阅关于[蓝牙权限](https://developer.android.com/guide/topics/connectivity/bluetooth/permissions)的 Android 开发者文档。

在使用 Vivox SDK 编译您的应用程序后，这些权限将默认授予该应用程序。

要移除您的应用程序中不需要的可选权限，您需要为您的应用程序自定义 AndroidManifest.xml 文件。要创建此文件，请完成以下步骤：

1. 在 Unity 编辑器中打开您的项目。

2. 选择 **Edit > Project Settings**。

3. 在 **Player** 选项卡上，打开 Android 部分。

4. 在 Publishing Settings 部分中，启用 **Build > Custom Main Manifest** 复选框。

   该文件将在您的资源中生成，其路径将显示在复选框之后。

当您具有自定义的 `AndroidManifest.xml` 文件时，您可以为其添加权限标签并指定 `tools:node”remove”` 以确保不包含诸如 `android.permission.BLUETOOTH_CONNECT` 等：

```plaintext
<uses-permission android:name="android.permission.BLUETOOTH" tools:node="remove" />
```
