Uses-permission

Name Permission Type Feature
android.permission.INTERNET * Normal  
android.permission.ACCESS_NETWORK_STATE * Normal  
android.permission.CAMERA Runtime Voice and Video
Photo and File Sharing
android.permission.RECORD_AUDIO Runtime Voice and Video
Audio Message
android.webkit.resource.AUDIO_CAPTURE Runtime Voice and Video
android.webkit.resource.VIDEO_CAPTURE Runtime Voice and Video
android.permission.MODIFY_AUDIO_SETTINGS Normal Voice and Video
android.permission.FOREGROUND_SERVICE Normal Photo and File Sharing
android.permission.VIBRATE Normal Vibrate on new incoming message
android.permission.FOREGROUND_SERVICE_DATA_SYNC
Android 14 and above
Normal Voice and Video
Audio Message
Photo and File Sharing
android.permission.READ_EXTERNAL_STORAGE
For SDKs previous to 5.20.1
Runtime Voice and Video
Audio Message
Photo and File Sharing
android.permission.WRITE_EXTERNAL_STORAGE
For SDKs previous to 5.20.1
Runtime Voice and Video
Audio Message
Photo and File Sharing
android.permission.READ_MEDIA_IMAGES
For SDKs previous to 5.20.1
and Android 13 and above
Runtime Voice and Video
Audio Message
Photo and File Sharing

* Required permission

When a project has LivePerson Android SDK (lp_messaging_sdk) as one of dependencies, all of the other permissions will be merged into the final AndroidManifest.xml. Any of these permissions can be removed if the application does not use it.
Example: If an application does not implement Voice and Video yet, then it can remove corresponding permissions:

  • Declare tools namespace in the element, to use merge rule maker, as shown here:
          <manifest xmlns:android="http://schemas.android.com/apk/res/android"
            package="com.example.myapp"
            xmlns:tools="http://schemas.android.com/tools">
    
  • Remove permissions from the merged manifest by using tools:node="remove"
          <uses-permission android:name="android.webkit.resource.AUDIO_CAPTURE" tools:node="remove"/>
          <uses-permission android:name="android.webkit.resource.VIDEO_CAPTURE" tools:node="remove"/>
          <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" tools:node="remove"/>
    

Use merge rule makers carefully when the application has multiple dependencies.

SDK Foreground services

SDK is using foreground service to upload/download files like DOC, PPTX, XLSX, uploading/downloading images, and uploading voice messages if upload_photo_using_service is set to true.

According to the documentation, foregroundServiceType is set to dataSync which matches the Use Case.

Uses-feature

Name Feature
android.hardware.audio.pro Voice and Video
android.hardware.microphone Voice and Video

Declare these features enables Google Play filter your application from devices that do not meet its hardware requirements. You can disable the filter by using merge rule makers. Check more in Voice and Video.