在iOS上通过URLscheme启动Viber应用程序
我正在制作一个iOS应用程序,可以打开Viber应用程序,并自动呼叫一个人或与该人进入聊天窗口。 有什么网站计划为Viber做到这一点,如:
viber://tel:<phone_number> viber://chat:<phone_number>
我遵循这个链接,但它是为Android。
我发送了一封邮件给Viber的支持,他们告诉我,这种URL(打开Viber的电话/聊天电话号码)不再支持。 inputViber版本是5.6。
看看他们的答案:
“感谢您与我们联系,不幸的是,Viber没有这样的select。”
我唯一find的是一个url转发消息: https : //www.viber.com/en/developers/share_on_viber你可以指定文本,但不是收件人
例:
viber://forward?text=foo
我发现了一种使用Viber进行“几乎”呼叫的方式 – 通过添加联系人:
viber://add?number=0123456789
这将打开Viber的“添加联系人”对话框,用户最终可以在添加新联系人后调用预期号码。
testing5.6 Viber这个。 也从HTML工作:
<a href="viber://add?number=%2B49150123456789">Viber me</a>
但是,如果联系人不存在,第一次点击只会打开对话框,保存新联系人并返回到您的应用程序/页面。 再次点击相同的链接将打开直接联系与呼出button视图
干杯!
至于现在(26.03.2017),我伤了这个URI正在工作:
- viber:// add?number = NUMBER – 打开用户页面
- viber:// forward?text = foo – 与选定的用户共享文本
- viber://聊天 – 打开聊天标签
- viber://电话 – 打开通话标签
- ??? – 找不到如何打开用户/联系人标签
- viber:// public – 打开公共选项卡
- viber:// more – 打开更多选项卡(行中的最后一个)
以及一些与公共账户交互的链接https://developers.viber.com/tools/deep-links/index.html – viber:// pa?chatURI = hello&context = abcdefg&text = hi – 尝试向您好公共账号
支持论坛: https : //support.viber.com/
他们有扩展名 – https://support.viber.com/customer/en/portal/articles/2191386-new-chrome-web-extension#top
你可以使用这个代码来完成你想要的:
NSString *phoneNumber = @"1112223333"; NSString * const viberScheme = @"viber://"; NSString * const tel = @"tel"; NSString * const chat = @"chat"; NSString *action = @"<user selection, chat or tel>"; // this could be @"chat" or @"tel" depending on the choice of the user if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:viberScheme]]) { // viber is installed NSString *myString; if ([action isEqualToString:tel]) { myString = [NSString stringWithFormat:@"%@:%@", tel, phoneNumber]; } else if ([action isEqualToString:chat]) { myString = [NSString stringWithFormat:@"%@:%@", chat, phoneNumber]; } NSURL *myUrl = [NSURL URLWithString:[viberScheme stringByAppendingString:myString]]; if ([[UIApplication sharedApplication] canOpenURL:myUrl]) { [[UIApplication sharedApplication] openURL:myUrl]; } else { // wrong parameters } } else { // viber is not installed }
这工作:“viber://聊天”或“viber://电话”
对于Swift,你可以这样做:)
let viberShareUrl = "viber://forward?text=\(shareUrl)" let url:NSURL =NSURL(string: viberShareUrl)! UIApplication.sharedApplication().openURL(url)
viber://contact?number= mobile number
它会打开特定的用户联系人。 让用户select聊天和通话。
它为我工作!
您可以使用检查
[[UIApplication sharedApplication] canOpenURL:@"viber://url"];
如果Viber应用程序安装在设备上,并且viber处理这个URLscheme,它将返回true,否则返回false。
- UIWebView不检测网站上的文本框
- 是在AppDelegate中的variables在Swift中的静态variables的解决方法?
- Obscure Xcode build error:“文件”myapp-SBPartialInfo.plist“无法打开,因为没有这样的文件。
- 什么时候应该使用UIImageJPEGRepresentation和UIImagePNGRepresentation上传不同的图像格式到服务器?
- 在iOS上使用和访问现有的SQLite数据库
- 在使用AudioStreamer中的下一个和上一个function时,两个或更多个歌曲将一起启动
- 向QR码添加多个键值对
- App Store 2018提示和清单
- Swift中socket.io的意外古怪行为