【问题标题】:SocialSharing-PhoneGap-Plugin canShareVia check whether WhatsApp is availableSocialSharing-PhoneGap-Plugin canShareVia 检查 WhatsApp 是否可用
【发布时间】:2015-10-13 15:14:29
【问题描述】:

在显示“通过 WhatsApp 分享”按钮之前,我想检查这种分享是否可行。

我正在使用 SocialSharing-PhoneGap-Plugin 和薄纸 ngCordova 包装器。

由于canShareVia的“via”参数是平台相关的,我使用以下结构来确定via参数:

var viaByKeyAndPlatform = {
    facebook: {
        ios: 'com.apple.social.facebook',
        android: 'com.facebook.katana'
    },
    whatsapp: {
        ios: '??? ', // not working: com.apple.social.whatsapp
        android: 'com.whatsapp'
    },
    twitter: {
        ios: 'com.apple.social.twitter',
        android: 'com.twitter.android'
    }
};

// ... determine `via` parameter from parameters above

$cordovaSocialSharing.canShareVia(
    via, 'message', 'subject', null, 'http://example.com')

这适用于 iOS 和 Android 上的所有这些社交网络,iOS 上的 WhatsApp 除外

我可以为此使用哪个参数?不幸的是,com.apple.social.whatsapp 不起作用。

【问题讨论】:

  • 这行得通吗?
  • @SeanMC 几年前,它与一个古老的 Ionic 版本一起工作。

标签: ios cordova share whatsapp ngcordova


【解决方案1】:

刚刚发现在文档中,该参数whatsapp 应该可以工作,但对于iOS9,whatsapp:// url 需要白名单。

所以我使用 whatsapp 作为 via 参数并将以下内容添加到 *-Info.plist 文件中,它就像一个魅力。顺便说一句,剪贴板提示也需要*-Info.plist 中的条目。没有,提示不会显示!

<key>LSApplicationQueriesSchemes</key>
<array>

  <!-- quite sure there are already other entries -->

  <string>whatsapp</string>
  <string>fb</string>
</array>

【讨论】:

  • 文档没有提到将 whatsapp 放在 LSApplicationQueriesSchemes 中,这样做并不能正常工作
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多