# 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" />
```
