Android Permissions
Permissions#
You can check here about what are the permissions needed for calls in Android and iOS. 
Android Permissions#
Open the file android/app/src/main/AndroidManifest.xml and add the following code in outside the <application> tag.
Add device permissions for access the application#
Add runtime permissions for calls#
For audio calls, we need below permissions:
For video call, we need below permissions:
From
Android 12, ensure thatandroid.permission.BLUETOOTH_CONNECTandandroid.permission.READ_PHONE_STATEruntime permissions are granted for your app for seameless audio routing and gsm call handling. If theandroid.permission.BLUETOOTH_CONNECTpermission is not granted, call audio will not be routed to BT Headset even though it is connected. If theandroid.permission.READ_PHONE_STATEpermission is not granted, gsm call related functionalities will not work in sdk.
Ensure that your app has the
android.permission.MODIFY_AUDIO_SETTINGSpermission to enable seamless audio routing between the device receiver, headset, and Bluetooth devices.
From Android 13, CallSDK need below permission to show ongoing call notification.
iOS Permissions#
Open the file ios/Runner/Info.plist and add the following Key and it's corresponding Descriptions
Note : If you are using the Permission Handler in Flutter, make sure to add the corresponding
GCC_PREPROCESSOR_DEFINITIONSin Podfile.
GCC_PREPROCESSOR_DEFINITIONS#
Inside the ios/Podfile file, use the following code. You can also add other required permission for your application.