question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

BIND_TELECOM_CONNECTION_SERVICE permission error with RNCallKeep

See original GitHub issue

I am trying to use RNCallKeep by testing it first. I am getting “BIND_TELECOM_CONNECTION_SERVICE permission” error when I am trying to call RNCallKeep.setup: componentDidMount() { const options = { ios: { appName: 'Video Call', }, android: { alertTitle: 'Permissions required', alertDescription: 'This application needs to access your phone accounts for video calls', cancelButton: 'Cancel', okButton: 'ok', }, }; try { RNCallKeep.setup(options); } catch (err) { console.log(err); } }

From googling it looks like I have to add the service to androidmanifest. So I added the following service within “application” tag: <service android:name=".RNCallKeep" android:permission="android.permission.BIND_TELECOM_CONNECTION_SERVICE"> <intent-filter> <action android:name="android.telecom.ConnectionService" /> </intent-filter> </service>

It is still giving me the error. I have a feeling that I am not setting the “android:name=” class value correct. I have also tried “io.wazo.callkeep”, “io.wazo.callkeep.modules.RNCallKeep”, “io.wazo.callkeep.RNCallKeep”, “com.mycompany.myapp.RNCallKeep”, and none is working. How did you get yours to work? Thanks.

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:5

github_iconTop GitHub Comments

14reactions
hungMtacommented, Sep 17, 2020

Flow the instruction : https://github.com/react-native-webrtc/react-native-callkeep/blob/master/docs/android-installation.md

<uses-permission android:name="android.permission.BIND_TELECOM_CONNECTION_SERVICE"/>
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.CALL_PHONE" />

<application>
    // ...
    <service android:name="io.wazo.callkeep.VoiceConnectionService"
        android:label="Wazo"
        android:permission="android.permission.BIND_TELECOM_CONNECTION_SERVICE">
        <intent-filter>
            <action android:name="android.telecom.ConnectionService" />
        </intent-filter>
    </service>
    // ....
</application>
3reactions
mlazzecommented, Apr 29, 2022

Just found out that the android:name attribute must be set to “io.wazo.callkeep.VoiceConnectionService”, do not replace “io.wazo.callkeep.VoiceConnectionService” with your own identifier 😄 android:label can be customized

This may be obvious to many, but we spent a few hours trying to understand why it didn’t work.

Read more comments on GitHub >

github_iconTop Results From Across the Web

voip - Stack Overflow
My request for BIND_TELECOM_CONNECTION_SERVICE Permission is getting denied. Doesn't know the reason for that. Thanks in Advance. android · voip ...
Read more >
react-native-callkeep - npm
import RNCallKeep from 'react-native-callkeep'; ... alertTitle : string (required) When asking for phone account permission, ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found