Adobe Analytics

Adobe AEP SDKをTypeScriptで開発したReactNativeアプリに実装する

こんにちは、エクスチュアの権泳東(權泳東/コン・ヨンドン)です。

以前の記事で、AdobeのAEP SDKをReactNativeアプリに実装する方法について説明しました。

Adobe AEP SDKでReactNativeアプリを計測する (Android編)
Adobe AEP SDKでReactNativeアプリを計測する (iOS編)

上記の記事ではいずれもJavaScriptを使っているのですが、今回はTypeScriptで開発されたReactNativeアプリでAdobe AEP SDKを使う方法について説明します。

 

1. tsconfig.jsonを編集

アプリプロジェクトのtsconfig.jsonを開いて、allowJsオプションをtrueにします。

"allowJs": true,

allowJsをtrueにする

 

2. アプリのネイティブコードにコードを実装

Adobe AEP SDK for ReactNativeはネイティブ部分への実装も必要です。
そこはJavascript/TypeScript関係なく必要なので、そこは上記の記事を参考にして実装して下さい。

 

3. 型定義ファイルが見つからない?

2020年8月7日現在、AEP SDKをTypeScriptで記述されたApp.tsxにimportすると、以下のようなエラーメッセージが出ます。

型定義ファイルが見つからない

Could not find a declaration file for module '@adobe/react-native-acpcore'. 'node_modules/@adobe/react-native-acpcore/js/index.js' implicitly has an 'any' type.
Try `npm install @types/adobe__react-native-acpcore` if it exists or add a new declaration (.d.ts) file containing `declare module '@adobe/react-native-acpcore';`ts(7016)

型定義ファイルが見つからないというエラーです。
対策として、型定義ファイルを作ってあげればエラーを回避出来ます。

下記のコマンドで型定義ファイルを生成します。

$ echo "declare module '@adobe/react-native-acpcore'" > node_modules/@adobe/react-native-acpcore/js/index.d.ts
$ echo "declare module '@adobe/react-native-acpanalytics'" > node_modules/@adobe/react-native-acpanalytics/js/index.d.ts

これでエラーは解消されました。

 

4. カスタム変数もTypeScriptで実装

各画面でのtrackState/trackActionも通常通り実装します。
ただし、コンテキストデータはTypeScriptの構文に従って、「連想配列型」を使います。

//trackStateの例
const cd: {[key: string]: string;} = {
    '&&c1':'hoge',
    '&&v1':'D=c1'
};
ACPCore.trackState('main_page', cd);

コンテキストデータ cd に対して {[key: string]: string;} という型を定義してます。

 

TL;DR

Adobe AEP SDK for ReactNativeをTypeScriptで開発したReactNativeアプリに実装する方法について説明しました。
本日現在、ちょっと手を加える必要がありますが、最近増えてきたTypeScriptアプリもAdobeAnalyticsで計測出来ます。

 
弊社ではモバイルアプリへの AdobeAnalytics / GoogleAnalytics (Firebase) の実装支援を行っております。
お問い合わせはこちらからどうぞ

 

DTMからAdobe Launchへの移行:4段階のアプローチ前のページ

【図解】Tableau Desktop 2020.3で「計算式」「予測機能」など大幅アプデ!次のページ

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. Adobe Analytics

    Report&Analytics グラフについて

    こんにちは!インターン生の藤本です。私は、最近ACEの試験(Repo…

  2. Databricks

    Databricksを始める前に覚えておきたいScalaプログラミングの基本

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

  3. Adobe Analytics

    AA(Adobe Analytics)を導入しよう!

    はじめにこんにちは!インターンの與那覇(ヨナハ)です今回はAA(A…

  4. Adobe Analytics

    はじめてのAdobe Analytics実装

    前回までの3回のブログで、イメージリクエストやアクセス情報の取得の原理…

  5. Databricks

    Databricks: Spark DataFrameでユーザー定義関数を使う

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

  6. Adobe Analytics

    Adobe Analytics: レガシーs_code.jsのリミッターを解除してeVar76以上を…

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

カテゴリ
最近の記事
  1. Adobe Target Recommendations:g…
  2. Conversational Analytics APIでお…
  3. Looker Studioで日付フィルターの開始日・終了日の…
  4. Streamlitでdbt-elementary風ダッシュボ…
  5. Adobe WebSDK FPIDでECIDの復元を検証
  1. Data Clean Room

    Snowflake の新しいData Clean Roomの見どころを解説
  2. Adobe Analytics

    Adobe Analyticsと「どこどこJP」のAPIを連携する
  3. Adobe Analytics

    Adobe Analytics: ランドスケイプの「企業ログ解析データベースAP…
  4. Python

    Streamlit in Snowflakeによるダッシュボード作成
  5. Snowflake

    [Snowflake Summit 2025] Snowflake Postgr…
PAGE TOP