Mayank Jain Mayank Jain - 2 months ago 38
iOS Question

iOS9: canOpenURL returning false for WhatApp's url scheme

In my current project I need to share text on whatsapp from iOS app.

Here is my code to share text on whatsapp:-

NSURL *whatsappURL = [NSURL URLWithString:@"whatsapp://send?text=Hello%2C%20World!"];
if ([[UIApplication sharedApplication] canOpenURL: whatsappURL]) {
[[UIApplication sharedApplication] openURL: whatsappURL];
}


but canOpenURL always returning false in iOS9.

Is there any iOS9 privacy policy ?
Can anyone help me out.

Thanks in advance.

z22 z22
Answer

In iOS 9 you must whitelist any URL schemes your App wants to query in Info.plist under the LSApplicationQueriesSchemes key (an array of strings):

For example:

enter image description here

So in your case, instead of fb and twitter you will have to specify whatsapp.

Note that this mechanism only applies to canOpenURL and not openURL. You do not need to have a scheme listed in Info.plist to be able to open it with openURL. Hope that helps.

Comments