在iOS上通过URL方案启动Viber应用程序

问题描述 投票:7回答:8

我正在制作一个iOS应用程序,它可以打开Viber应用程序并自动呼叫一个人或者与该人聊天窗口。是否有任何针对Viber的网址方案,例如:

viber://tel:<phone_number>
viber://chat:<phone_number>

我跟着this链接,但它是Android。

ios url-scheme viber
8个回答
8
投票

我发了一封邮件给Viber支持,他们告诉我这种URL(打开Viber呼叫/用电话号码聊天)不再受支持了。键入Viber版本时是5.6。

看看他们的回答:

support@vi部二.com:

“感谢您与我们联系。不幸的是,Viber没有这样的选择。”


我发现的唯一一件事是转发邮件的网址:https://www.viber.com/en/developers/share_on_viber你可以指定文字而不是收件人

例:

viber://forward?text=foo

9
投票

至于现在(26.03.2017),我发现这个URI正在工作:

  • viber:// add?number = NUM​​BER - 打开用户页面
  • viber:// forward?text = foo - 与所选用户共享文本
  • viber://聊天 - 打开聊天标签
  • viber:// calls - 打开调用选项卡
  • ??? - 找不到如何打开用户/联系人选项卡
  • viber:// public - 打开一个公共标签
  • viber://更多 - 打开更多标签(行中的最后一个)

和一些与公共账户互动的链接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


5
投票

我找到了一种使用Viber“几乎”调用的方法 - 通过添加联系人:

viber://add?number=0123456789

这将打开Viber“添加联系人”对话框,用户可以在将其添加为新联系人后最终调用预期的号码。

在5.6 Viber上测试过。也适用于HTML:

<a href="viber://add?number=%2B49150123456789">Viber me</a>

但是,如果联系人不存在,则第一次单击将仅打开对话框,保存新联系人并返回到您的应用程序/页面。再次单击相同的链接将直接打开联系人视图,其中包含“呼出”按钮

干杯!


4
投票

您可以使用此代码来完成您想要的任务:

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
}

4
投票
viber://contact?number= mobile number

它将打开特定的用户联系人。让用户选择聊天和通话。 它对我有用!


1
投票

这有效:“viber://聊天”或“viber://调用”


0
投票

对于Swift,你可以这样做:)

let viberShareUrl = "viber://forward?text=\(shareUrl)"
let url:NSURL =NSURL(string: viberShareUrl)!  
UIApplication.sharedApplication().openURL(url)

-2
投票

你可以使用检查

[[UIApplication sharedApplication] canOpenURL:@"viber://url"];

如果Viber应用程序安装在设备上,并且viber处理此url方案,则返回true,否则为false。

© www.soinside.com 2019 - 2024. All rights reserved.