Firebase Summit에서 발표된 모든 내용을 살펴보고 Firebase로 앱을 빠르게 개발하고 안심하고 앱을 실행하는 방법을 알아보세요. 자세히 알아보기

C++로 동적 링크 수신

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

생성 한 Firebase 동적 링크를 수신하려면 앱에 동적 링크 SDK를 포함하고 OnDynamicLinkReceived 가상 기능을 구현하는 firebase firebase::dynamic_links::Listener 객체를 생성해야 합니다.

C++ SDK는 Android와 iOS 모두에서 작동하며 각 플랫폼에 몇 가지 추가 설정이 필요합니다.

시작하기 전에

Firebase 동적 링크 를 사용하려면 먼저 다음을 수행해야 합니다.

  • C++ 프로젝트를 등록하고 Firebase를 사용하도록 구성합니다.

    C++ 프로젝트에서 이미 Firebase를 사용하고 있다면 이미 Firebase에 등록 및 구성되어 있는 것입니다.

  • Firebase C++ SDK 를 C++ 프로젝트에 추가합니다.

C++ 프로젝트에 Firebase를 추가하려면 Firebase 콘솔 과 공개 C++ 프로젝트 모두에서 작업을 수행해야 합니다(예: 콘솔에서 Firebase 구성 파일을 다운로드한 다음 C++ 프로젝트로 이동).

사용자 정의 URL 구성표 추가(iOS 전용)

Firebase Dynamic Links C++ 클라이언트 라이브러리는 iOS에서 맞춤 URL 스키마를 사용하여 링크를 처리합니다. 동적 링크 수신을 지원하려면 앱에 사용자 정의 URL 스키마를 추가해야 합니다.

  1. 프로젝트 구성을 열려면 왼쪽 트리 보기에서 프로젝트 이름을 두 번 클릭합니다.

  2. 대상 섹션에서 을 선택한 다음 정보 탭을 선택한 다음 URL 유형 섹션을 확장합니다.

  3. + 버튼을 클릭한 다음 역방향 클라이언트 ID에 대한 URL 구성표를 추가합니다. 이 값을 찾으려면:

    1. GoogleService-Info.plist 구성 파일을 연 다음 REVERSED_CLIENT_ID 키를 찾습니다.

    2. 해당 키의 값을 복사한 다음 구성 페이지의 URL Schemes 상자에 붙여넣습니다.

    3. 다른 필드는 비워 둡니다.

  4. + 버튼을 클릭한 다음 두 번째 URL 구성표를 추가합니다. 이것은 앱의 번들 ID와 동일합니다.

    예를 들어 번들 ID가 com.example.ios 인 경우 해당 값을 URL Schemes 상자에 입력합니다.

    프로젝트 구성( ID > 번들 식별자 )의 일반 탭에서 앱의 번들 ID를 찾을 수 있습니다.

동적 링크 수신

앱 생성 및 초기화

수신된 동적 링크를 확인하려면 먼저 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 에 두 번째 인수로 전달합니다.

동적 링크를 수신하려면 리스너 클래스가 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());
  }
};