如何将firebase动态链接传输到新安装的应用程序?

时间:2017-08-02 12:33:03

标签: ios firebase xamarin.ios firebase-dynamic-links

我说的一切都与ios 9及以上相关。 Firebase文档说:

  

当用户打开您的某个动态链接时,如果您的应用尚未推出   安装后,用户将被发送到Play商店或App Store进行安装   您的应用(除非您另行指定),您的应用就会打开。您可以   然后检索传递给您的应用程序并处理链接的链接   适合您的应用。

我成功通过FB-link安装我的应用程序,并通过链接打开我已安装的应用程序。但是当我尝试安装并单步打开时,应用程序打开而没有链接通过。也就是说,如果我的应用程序已经安装,我点击链接,然后打开应用程序并传递链接。但是如果没有安装应用程序,我点击FN-link然后iOS打开AppStore并安装应用程序然后我点击“打开”按钮,打开应用程序没有链接。我很抱歉我的英语不好,但希望你能理解我。

更新

我见过相同的questionquestion

检查点。

  1. 自定义架构URL启动应用程序(openURL)(在我的例子中,它与bundle id相同)
  2. 通过动态链接启动应用程序(continueUserActivity)。
  3. 我试图使用手机而不是wi-fi而没有成功。
  4. 如果未安装应用程序,请在动态链接上使用我的应用程序打开AppStore。
  5. 在didFinishLaunchingWithOptions中,我调用[FIRApp configure]。
  6. 没有任何帮助。

    我没有说我使用Xamarin和Xamarin FireBase 可能是它使用旧版本的原生FireBase库。

    解决!

    Xamarin Firebase插件已更新,问题已解决。

2 个答案:

答案 0 :(得分:2)

让我建议如何在未安装iOS应用的情况下测试iOS上的Firebase动态链接。

  • 从iPhone中删除iOS应用程序(确保使用实际设备,而不是模拟器);
  • 生成Firebase动态链接并将链接粘贴到iOS Notes应用程序;
  • 点击Notes App中的链接;
  • 确保您看到非页内广告页面,点击"打开"按钮。在此之后,您应该导航到Apple AppStore;
  • 将断点或NSLog置于[UIApplicationDelegate application:openURL:options:]并观察url值;
  • 使用Xcode安装并启动应用程序;
  • 应用程序启动后不久,您应该观察使用网址呼叫[UIApplicationDelegate application:openURL:options:]。在这里,您将致电:
  

FIRDynamicLink * dynamicLink = [[FIRDynamicLinks dynamicLinks]   dynamicLinkFromCustomSchemeURL:URL];

如果找到Firebase动态链接,您应该会看到dynamicLink.url属性为非零。如果找不到Firebase动态链接,您将看到dynamicLink.url属性为nil。

如果此方案运行良好,您可以在Safari,Facebook,电子邮件和其他应用程序中重新检查FDL行为。

如果已安装应用,则点击Firebase动态链接应启动带有该链接的应用。请注意[UIApplicationDelegate application:continueUserActivity:restorationHandler:],值userActivity.webpageURL

答案 1 :(得分:0)

我能够在没有任何代码更改的情况下解决此问题,只需运行pod update并更新到最新版本的Firebase即可。