トラブルシューティング¶
SDK 初期化異常チェック¶
Logcat でログの Level が Error、Tag が [FT-SDK] プレフィックスであるか確認します。
Debug 環境では、Guance SDK を設定し、アプリケーションを初めて実行した後、Xcode のデバッガコンソールを確認してください。SDK はアサーションを使用して複数の設定の正しさをチェックし、設定に誤りがある場合はクラッシュし、関連する警告を出力します。
例:SDK を設定する際に datakit metrics の書き込みアドレスが設定されていない場合、プログラムはクラッシュし、コンソールに警告⚠️が出力されます。
Debug デバッグを有効にする¶
以下の設定で SDK の debug 機能を有効にできます。
let config: FTMobileConfig = {
serverUrl: Config.SERVER_URL,
debug: true
};
FTMobileReactNative.sdkConfig(config);
Release 版をリリースする際は、この設定を無効にすることを推奨します
Logcat の Tag が [FT-SDK] プレフィックスであるログを確認します。
SDK のデバッグログは、プレフィックスとして [FTLog] が付与されます。
-
xcode を使用して実行する場合、xcode のデバッグコンソールで SDK のデバッグログを直接確認できます。
-
ターミナルコマンド
yarn iosまたはyarn react-native run-iosを実行して実行する場合、mac の「コンソール」アプリで SDK のデバッグログを確認できます。
「コンソール」の使用方法:
操作 を選択し、説明情報を含める、デバッグ情報を含める にチェックを入れます。
デバッグ対象のデバイスを選択し、開始 ボタンをクリックします。右側の検索条件欄に検索条件 [FTLog] を入力します。これで SDK のデバッグログを確認できます。
Android Logcat および iOS Xcode Console のログサンプル
SDK は正常に動作しているがデータがない¶
-
Datakit のトラブルシューティング を参照し、Datakit が正常に動作しているか確認します。
-
SDK のアップロード先
datakitUrlまたはdatawayUrlが 正しく設定 され、正しく初期化されていることを確認します。debug モード で、Android Logcat または iOS Xcode Console の同期ログを確認します。 -
datakit が対応するワークスペースにデータをアップロードしているか、オフライン状態になっていないかを確認します。これは Guance にログインし、「インフラストラクチャー」を確認することで確認できます。
データロスト¶
一部のデータがロスト¶
-
RUM の特定の Session データや、Log、Trace の数件のデータが欠落している場合、まず FTRUMConfig、FTLoggerConfig、FTTraceConfig で
sampleRate < 1が設定されていないか確認してください。 -
RUM データが不完全で、Resource や Action データがない?
Resource と Action データは View にバインドされています。
FTReactNativeRUM.startView操作が行われていることを確認してください。View イベントの収集方法については、RUM View のドキュメントを参照してください。 -
データをアップロードするデバイスのネットワーク、および Datakit をインストールしたデバイスのネットワークと負荷の問題を確認します。
互換性の問題¶
react-native-navigation の実行互換性の問題¶
ReactTextShadowNode.UNSET が見つからない¶
これは react-native-navigation のバージョン互換性の問題によるものです。関連する Issue はこちらを参照してください。ReactTypefaceUtils.java を変更するか、ダウンロードして置き換えることで修正できます。
モジュール react/jsx-runtime が見つからない¶
影響範囲:SDK バージョン 0.3.0 && React バージョン < 16.14.0
原因:SDK 内部で使用している react/jsx-runtime は React >= 16.14.0 でのみサポートされています。
修正提案:
- SDK バージョンを >= 0.3.1 にアップグレードします。
注意:ローカルパスで @cloudcare/react-native-mobile 依存ライブラリを追加することは推奨しません。エラーが修正できない可能性があります。
ネイティブと React Native のハイブリッド開発¶
エラー:Cannot read properties of undefined (reading 'addError')¶
原因:RN SDK と Native SDK のバージョンが互換性がない、またはインストールが不完全であることが原因です。
問題の確認方法:
Android プロジェクトのルートディレクトリで、ターミナルで ./gradlew app:dependencies を実行し、出力結果に cloudcare_react-native-mobile が含まれているか確認します。
cloudcare_react-native-mobile は、RN プロジェクトに Guance RN SDK の依存関係を追加した後に、Android 側にインストールされる依存ライブラリです。
Podfile.lock ファイルを確認し、FTMobileReactNativeSDK 依存関係が存在するか確認します。
FTMobileReactNativeSDK は、RN プロジェクトに Guance RN SDK を統合した後に、iOS 側にインストールされる依存ライブラリです。
修正提案:
-
バージョン互換性の確認
- RN SDK と Native SDK のバージョンが一致していることを確認します。
- RN SDK に対応する Native SDK のバージョン情報は以下のパスで確認できます:
node_modules/@cloudcare/react-native-mobile/android/build.gradlenode_modules/@cloudcare/react-native-mobile/FTMobileReactNativeSDK.podspec -
依存関係の再インストール
- プロジェクトキャッシュのクリア:
- 依存関係の再インストール:
上記の手順により、バージョンの非互換性やインストールの不完全さに起因するこのエラーを効果的に解決できます。

