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

时间:2015-05-30 03:05:57

标签: ios url-scheme viber

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

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

我关注this链接,但它适用于Android。

9 个答案:

答案 0 :(得分:9)

就目前而言(26.03.2017),我发现这个URI正在运行:

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

和一些与公共帐户互动的链接 https://developers.viber.com/tools/deep-links/index.html - viber:// pa?chatURI = hello&amp; context = abcdefg&amp; text = hi - 尝试打招呼公共帐户

支持论坛:https://support.viber.com/

他们有chrome扩展程序 - https://support.viber.com/customer/en/portal/articles/2191386-new-chrome-web-extension#top

答案 1 :(得分:8)

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

看看他们的答案:

<强> support@viber.com

&#34;感谢您与我们联系。 不幸的是,Viber没有这样的选择。&#34;

我唯一能找到的是转发邮件的网址:https://www.viber.com/en/developers/share_on_viber 您可以指定文本但不能指定收件人

示例:

viber://forward?text=foo

答案 2 :(得分: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
}

答案 3 :(得分:4)

viber://contact?number= mobile number

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

答案 4 :(得分:1)

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

答案 5 :(得分:1)

这指向联系页面

  

viber:// contact?number = 38095xxxxxxx

重要提示:请勿在数字的开头加上+,否则将无法正常工作

答案 6 :(得分:0)

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

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

答案 7 :(得分:0)

我不知道这是否适用于 iOS,但它适用于 Viber Desktop Windows 10。

<a href="viber://chat?number=0912222222" class="viber"></a>

它将打开一个与目标人的聊天窗口。 2021 年 7 月 7 日测试。

答案 8 :(得分:-2)

您可以使用

进行检查
[[UIApplication sharedApplication] canOpenURL:@"viber://url"];

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