如何在 Buildfire 中创建共享链接

Posted

技术标签:

【中文标题】如何在 Buildfire 中创建共享链接【英文标题】:How to create a share link in Buildfire 【发布时间】:2021-09-04 04:30:39 【问题描述】:

我正在尝试创建一个插件中的用户可以通过电子邮件或短信发送给朋友的共享链接。如果他们的朋友有该应用程序,则目标是使用类似于 navigation.navigateTo 的查询字符串打开应用程序到插件,以便它可以打开插件内的特定内容。如果他们不这样做,目标是将他们发送到应用程序的网页,在那里他们可以从适当的商店(安卓或苹果)下载应用程序。这是可能的还是至少是其中的一部分?

我使用 buildfire.deeplink.generateUrl 生成了一个共享链接,但在 API 文档中找不到相应的步骤。

【问题讨论】:

【参考方案1】:

是的,步骤如下:

生成深层链接网址

buildfire.deeplink.generateUrl(options, callback)

确保将data 属性传递给它代表的选项 一旦用户使用,开发人员需要向插件提供的深层链接数据 打开分享链接。有关如何从中获取此数据的更多信息 插件,见buildfrire.deeplink.getData。

   buildfire.deeplink.generateUrl(
    
      data:  videoId: "9Q-4sZF0_CE" ,
    ,
    (err, result) => 
      if (err) 
        console.error(err);
       else 
        console.log(result.url);
      
    
  );

生成深层链接后使用以下函数打开共享设备选项

buildfire.device.share( link: deepLinkUrl , callback);

最后,您必须在插件中处理深度链接数据,以便能够打开您在生成深度链接 URL 期间传递的所需内容的深度链接数据,请查看buildfrire.deeplink.getData。

更多详情check the doc。

示例

// share function
const share = () => 
  let deeplinOptions= ;
  deeplinOptions.title = 'Hello world';
  deeplinOptions.type = "website";
  deeplinOptions.description = 'First program';
  deeplinOptions.imageUrl = '<IMAGE URL>';

  deeplinOptions.data = 
    "link": vidId
  ;

  buildfire.deeplink.generateUrl(deeplinOptions, function (err, result) 
    if (err) 
      console.error(err);
     else 
      let options = 
        link: result.url
      ;
      let callback = function (err, result) 
        if (err) 
          console.warn(err);
        ;
      ;

      buildfire.device.share(options, callback);
    ;
   );
 ;


// Handle Deeplink data in your plugin 
const handleDeepLinkData = () => 
  buildfire.deeplink.getData(function (data) 
    if (data && data.link) 
      let vidId= data.link;
      
      // Do what you want
    
    // Do what you want
  );


【讨论】:

谢谢@Mohammad Al Rawashdah 我希望实现的第二部分是针对未安装应用程序的收件人。在这种情况下,他们将被引导到相应应用商店中的下载页面或应用的网页,然后他们可以导航到其设备的相应商店。这是对生成的 URL 的默认操作/响应,还是有办法实现这一点? 是的,这是一个默认操作,生成的 URL 会小心的【参考方案2】:

是的,只需分享结果网址

【讨论】:

以上是关于如何在 Buildfire 中创建共享链接的主要内容,如果未能解决你的问题,请参考以下文章

CMake:如何从子项目的所有静态库中创建一个共享库?

如何在 python 的多处理中创建嵌套共享对象?

如何在iOS 9中创建共享按钮?

如何在 Swift 中创建类似 Android 的共享选项 [重复]

如何在 MVC 中创建共享视图

如何在 ASP.NET CORE Razor Pages 中创建共享表单?