要接收您创建的 Firebase 动态链接,您必须在您的应用中包含动态链接 SDK 并创建一个实现OnDynamicLinkReceived
虚函数的 firebase firebase::dynamic_links::Listener
对象。
C++ SDK 适用于 Android 和 iOS,每个平台都需要一些额外的设置。
在你开始之前
在使用Firebase 动态链接之前,您需要:
注册您的 C++ 项目并将其配置为使用 Firebase。
如果您的 C++ 项目已经使用 Firebase,那么它已经针对 Firebase 进行了注册和配置。
将Firebase C++ SDK添加到您的 C++ 项目。
请注意,将 Firebase 添加到您的 C++ 项目涉及Firebase 控制台和您打开的 C++ 项目中的任务(例如,您从控制台下载 Firebase 配置文件,然后将它们移动到您的 C++ 项目中)。
添加自定义 URL 方案(仅适用于 iOS)
Firebase Dynamic Links C++ 客户端库在 iOS 上使用自定义 URL 方案来处理链接。您必须将自定义 URL 方案添加到您的应用程序以支持接收动态链接。
要打开项目配置,请双击左侧树视图中的项目名称。
从TARGETS部分选择您的应用程序,然后选择Info选项卡,然后展开URL Types部分。
单击+按钮,然后为反向客户端 ID 添加 URL 方案。要找到这个值:
打开
配置文件,然后查找GoogleService-Info.plist REVERSED_CLIENT_ID
键。复制该键的值,然后将其粘贴到配置页面上的URL Schemes框中。
将其他字段留空。
单击+按钮,然后添加第二个 URL 方案。这一个与您应用程序的捆绑包 ID 相同。
例如,如果您的包 ID 是
com.example.ios
,请将该值键入URL Schemes框中。您可以在项目配置的常规选项卡中找到您的应用程序的捆绑包 ID ( Identity > Bundle Identifier )。
接收动态链接
创建并初始化应用
在检查收到的动态链接之前,您需要创建并初始化一个firebase::App
对象。
包括firebase::App
的头文件:
#include "firebase/app.h"
下一部分因平台而异:
安卓
创建firebase::App
,将 JNI 环境和对 Java Activity 的jobject
引用作为参数传递:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
iOS
创建firebase::App
:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
实施侦听器以检查动态链接
要检查收到的动态链接,请实施并使用firebase::dynamic_links::Listener
类。
包含用于接收动态链接的头文件:
#include "firebase/dynamic_links.h"
初始化动态链接库:
::firebase::dynamic_links::Initialize(app, null);
创建一个实现firebase::dynamic_links::Listener
的对象,并使用SetListener()
将其提供给动态链接库,或将其作为第二个参数传递给Initialize 。
要接收动态链接,您的 Listener 类必须实现OnDynamicLinkReceived
虚函数。通过重写该方法,您可以收到一个深层链接(如果收到的话)。
class Listener : public firebase::dynamic_links::Listener { public: // Called on the client when a dynamic link arrives. void OnDynamicLinkReceived( const firebase::dynamic_links::DynamicLink* dynamic_link) override { printf("Received link: %s", dynamic_link->url.c_str()); } };,
要接收您创建的 Firebase 动态链接,您必须在您的应用中包含动态链接 SDK 并创建一个实现OnDynamicLinkReceived
虚函数的 firebase firebase::dynamic_links::Listener
对象。
C++ SDK 适用于 Android 和 iOS,每个平台都需要一些额外的设置。
在你开始之前
在使用Firebase 动态链接之前,您需要:
注册您的 C++ 项目并将其配置为使用 Firebase。
如果您的 C++ 项目已经使用 Firebase,那么它已经针对 Firebase 进行了注册和配置。
将Firebase C++ SDK添加到您的 C++ 项目。
请注意,将 Firebase 添加到您的 C++ 项目涉及Firebase 控制台和您打开的 C++ 项目中的任务(例如,您从控制台下载 Firebase 配置文件,然后将它们移动到您的 C++ 项目中)。
添加自定义 URL 方案(仅适用于 iOS)
Firebase Dynamic Links C++ 客户端库在 iOS 上使用自定义 URL 方案来处理链接。您必须将自定义 URL 方案添加到您的应用程序以支持接收动态链接。
要打开项目配置,请双击左侧树视图中的项目名称。
从TARGETS部分选择您的应用程序,然后选择Info选项卡,然后展开URL Types部分。
单击+按钮,然后为反向客户端 ID 添加 URL 方案。要找到这个值:
打开
配置文件,然后查找GoogleService-Info.plist REVERSED_CLIENT_ID
键。复制该键的值,然后将其粘贴到配置页面上的URL Schemes框中。
将其他字段留空。
单击+按钮,然后添加第二个 URL 方案。这一个与您应用程序的捆绑包 ID 相同。
例如,如果您的包 ID 是
com.example.ios
,请将该值键入URL Schemes框中。您可以在项目配置的常规选项卡中找到您的应用程序的捆绑包 ID ( Identity > Bundle Identifier )。
接收动态链接
创建并初始化应用
在检查收到的动态链接之前,您需要创建并初始化一个firebase::App
对象。
包括firebase::App
的头文件:
#include "firebase/app.h"
下一部分因平台而异:
安卓
创建firebase::App
,将 JNI 环境和对 Java Activity 的jobject
引用作为参数传递:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
iOS
创建firebase::App
:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));
实施侦听器以检查动态链接
要检查收到的动态链接,请实施并使用firebase::dynamic_links::Listener
类。
包含用于接收动态链接的头文件:
#include "firebase/dynamic_links.h"
初始化动态链接库:
::firebase::dynamic_links::Initialize(app, null);
创建一个实现firebase::dynamic_links::Listener
的对象,并使用SetListener()
将其提供给动态链接库,或将其作为第二个参数传递给Initialize 。
要接收动态链接,您的 Listener 类必须实现OnDynamicLinkReceived
虚函数。通过重写该方法,您可以收到一个深层链接(如果收到的话)。
class Listener : public firebase::dynamic_links::Listener { public: // Called on the client when a dynamic link arrives. void OnDynamicLinkReceived( const firebase::dynamic_links::DynamicLink* dynamic_link) override { printf("Received link: %s", dynamic_link->url.c_str()); } };