Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nothing happening when calling RNImmediatePhoneCall.immediatePhoneCall() #40

Open
Sidharth1999 opened this issue Jul 2, 2020 · 16 comments

Comments

@Sidharth1999
Copy link

Sidharth1999 commented Jul 2, 2020

Hi,

I installed and linked the module successfully on iOS, but when I call RNImmediatePhoneCall.immediatePhoneCall() with some phone number, nothing happens.

What could be the reason? Do I need to explicitly check and request permission to make a phone call? Do I need to modify some other native files as well? Is it because I'm using a simulator?

Any help would be appreciated, thanks

@Sidharth1999 Sidharth1999 changed the title Nothing happening when calling RNImmediatePhoneCall.immediatePhoneCall('4245358689') Nothing happening when calling RNImmediatePhoneCall.immediatePhoneCall() Jul 6, 2020
@jonybar9
Copy link

jonybar9 commented Jul 15, 2020

Same here
ran the following commands on a freshly opened react-native project:

`npm install react-native-immediate-phone-call --save

react-native link react-native-immediate-phone-call`

Then when using the following, nothing happens

import RNImmediatePhoneCall from 'react-native-immediate-phone-call'; .... RNImmediatePhoneCall.immediatePhoneCall('0123456789'); ...

@coloredlambda
Copy link

Confirmed, nothing happens...

@wumke
Copy link
Owner

wumke commented Jul 20, 2020

Well, do you guys use the latest RN version? Linking has changed for ios and I did not use or test this myself... that might be the issue...

@jonybar9
Copy link

jonybar9 commented Jul 20, 2020

@wumke
I was using android, but maybe that's the issue, cause I was using the latest RN
I'll try downgrading and will update on the results

Thanks for replying

@wumke
Copy link
Owner

wumke commented Jul 20, 2020

If you find the solution feel free to send a pull request for the README !

@murbanowicz
Copy link

Have you managed to get it working @R44J / @jonybar9 / @Sidharth1999 ?
I am trying to make it work with latest RN and no success :(

@billel-boudchicha
Copy link

@murbanowicz try wrap the call in try catch block

@jonybar9
Copy link

jonybar9 commented Jan 7, 2021

Ok I think I figured it out, I'll upload later what I did differently
@wumke could you contact me at [email protected] about making a pull request?

@jonybar9
Copy link

jonybar9 commented Feb 9, 2021

Ok so @wumke didn't contact me so I'll just post my solution here and if one of you has the time make a pull request

First do react-link
Then add the following lines:

In settings.gradle:
after rootProject.name = 'YOUR_PROJ_NAME'
add the following line: include ':react-native-immediate-phone-call', ':app'

In build.gradle:
Inside the dependencies section insert the following line:
implementation project(':react-native-immediate-phone-call')

In AndroidManifest.xml:
add the following line with all other user-permissions
<uses-permission android:name="android.permission.CALL_PHONE" />

In MainActivity.java:
inside the class MainActivity add the following override:
(include the "@OverRide" for some reason it's not in the same block with the rest of the code)
`@Override

public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
    
    RNImmediatePhoneCallPackage.onRequestPermissionsResult(requestCode, permissions, grantResults); // very important event callback
    
    super.onRequestPermissionsResult(requestCode, permissions, grantResults);

}   

@sankaSanjeeva
Copy link

@jonybar9, Thanks. It works. But I think you have missed importing this
import com.github.wumke.RNImmediatePhoneCall.RNImmediatePhoneCallPackage;
in MainActivity.java

@Habinezajanvier
Copy link

Hello @wumke, and @jonybar9, using the same way it's not working as expected

  • In the emulator, it's not doing anything but only requesting user permissions for calls
  • In a real android device after getting permissions, it directs to the phone dialer which is not what I want

Here are some details on my project

  • React-native version: 0.68.0
  • React-native-immediate-phone-call version: ^2.0.0

@jonybar9
Copy link

@Habinezajanvier Sorry to hear that.
You're right that directing you to the dialer is not the expected behavior, it should make a direct call.
Sadly I won't have the time to dive deeper into it anytime soon

@wumke
Copy link
Owner

wumke commented Jul 5, 2023

Maybe the newer Android versions also blocked direct calling, and forward us to the dailer now (just like Apple did before, see readme). It is possible that there is no longer an option to immediately start a call without an intermediate action/confirmation.

If someone knows a solution, feel free to create a pull request.
Also, pull requests for the Readme with exact Android/iOS versions that are reported to work are very welcome!

@Naveen-g09
Copy link

is there a way to do it directly in expo?

@thepragmaticidealist
Copy link

thepragmaticidealist commented Jan 9, 2024

I've experienced the same in expo once I built the .apk using eas build. When I tap the button that should start the phone call, nothing happens. @wumke would you know what the issue is and how to fix it?

I followed the readme by adding "permissions": [ "android.permission.CALL_PHONE" ] to my app.json then calling RNImmediatePhoneCall.immediatePhoneCall(phoneNumber) where phoneNumber is the number the user wants to call.

@thepragmaticidealist
Copy link

I managed to make this work but had to use React Native CLI instead of expo. After doing some research on the expo icebox and the expo intent launcher package it seems that at the moment expo has no way for us to ask the user for the CALL_PHONE permission. Nevertheless, the API is still supported by Android so, if you install the package through RN CLI, the functionality works.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants