0

I have an app which enables an user to make phone call to a certain number. I am doing following:-

private void CallContact(string phone)
            {

                phone = phone.Replace(" ", "");

                var callURL = new NSUrl("tel:" + phone);


                try
                {
                    if (UIApplication.SharedApplication.CanOpenUrl(callURL))
                    {
                        UIApplication.SharedApplication.OpenUrl(callURL);
                    }
                    else
                    {
                        var av = new UIAlertView("Not supported",
                         "Calling is not supported on this device",
                         null,
                         "OK",
                         null);
                        av.Show();
                    }
                }
                catch (Exception ex)
                {
                    return;
                }



            }

This works fine. But when I tried publishing the app, my app got rejected and the Apple team asked me the following:-

We noticed that your app has CallKit and CallKit Blocker enabled: 
⁃Which features of your app require CallKit and CallKit Blocker functionality? 
⁃Where, specifically, in the app would users access these features?

I am not using the CallKit functionality anywhere in my app. I searched SO and found that it is shipped with the Xamarin.iOS.dll . It is possible that the way I am making calls in my app uses the CallKit?

Sorry for bein a noob :)

user3034944
  • 1,541
  • 2
  • 17
  • 35
  • https://stackoverflow.com/questions/39751196/publishing-issue-callkit-is-included-even-we-are-not-using-it – SushiHangover May 26 '17 at 04:47
  • @SushiHangover I have gone through that question already. I have implemented what is suggested as well. I just need to confirm since I am using the calling feature but that does not seem to use the CallKit. – user3034944 May 26 '17 at 04:50
  • @SushiHangover Also since I am new to iOS, I am not sure if the way I am making phone call uses the CallKit indirectly. – user3034944 May 26 '17 at 04:52
  • 1
    Opening the Dialer is not a part of CallKit/CallKit Blocker (these are VOIP features). Is the linker enabled in your release build configuration? – SushiHangover May 26 '17 at 04:53
  • @SushiHangover it wasn't. I have created a new build with the linker enabled and will be submitting the new one for review. I needed to confirm so that I can reply them about my scenario. – user3034944 May 26 '17 at 04:56
  • @SushiHangover In my previously submitted binary, The Linker behavior was "Don't link", now I have changed it to "Link Framework SDK only". I hope that should solve the issue – user3034944 May 26 '17 at 04:57
  • 1
    Just tell them it was a build mistake and your app is not referencing CallKit in the new build.... – SushiHangover May 26 '17 at 04:58

1 Answers1

1

try this solution

partial void BtnContactBillingCall_TouchUpInside (UIButton sender)
        {
            var confirm = new UIAlertView("","Call "+ mobilenumber + " ?",null,"Cancel","Call");
            confirm.Show();
            confirm.Clicked +=    (object senderConfirm, UIButtonEventArgs e) => 
            {
                if(e.ButtonIndex ==0)
                {

                }
                else
                {
                    var url = new Foundation.NSUrl("tel:"+mBillingPhoneNumber);
                    UIApplication.SharedApplication.OpenUrl(url);
                }

            };
        }
Pritish
  • 2,194
  • 2
  • 21
  • 44