アプリに分析機能を追加したかったので、Flurryでアカウントを作成し、SDKをプロジェクトに追加しました。次に、いくつかのイベント、通常のイベント、時限イベントをログに記録しました。
ここまでは何も特別なことはありません:)しかし、2日が経過しても、これらのイベントはFlurryのダッシュボードに表示されません。セッション数を確認できるので、アプリが実際に何かを送信していると思います。しかし、イベントはありません。
何か案が?私はコードに関して特別なことは何もしませんでした、私は自分のIDで登録します(これは前に言ったとおり正しい)
[FlurryAnalytics startSession:flurryKey];
を使用してログに記録されたイベント:
[FlurryAnalytics logEvent:@"MyEvent"];
Flurry Eventsと言うとき、あなたはFlurryAnalyticsを参照していると思います。
オプション1:
keyと、latestFlury SDKが統合されているかどうかをクロスチェックしてくださいiOSのバージョン。
オプション2:
FlurryAnalytics.h
およびlibFlurryAnalytics.a
を正しく参照しているかどうかを確認してください
また、Target SettingsのlibFlurryAnalytics.a
にLink Binaries to Libraries
を追加したかどうかを確認します
オプション3:
ログイン認証情報を使用してWebサイトにログインし、さらに数時間待ちます。
さらに、私が知る限り、それはリアルタイムサービスではありません。ログに記録された結果を表示するには、およそ6-8時間かかります。
それ以外の場合は、Flyurry Analyticsの担当者に連絡する必要があります。これは、実際には単純なAPIであり、開発者が引き起こした可能性のある問題の多くはあり得ないためです。
これがお役に立てば幸いです。
設定に加えて、Flurryがイベントをログに記録する方法を理解することが重要です。コメントのおかげで、私はいくつかのテストをデバッグモードで実行しました。あなたはそれをオンにします:
[Flurry setDebugLogEnabled:YES];
アプリを起動すると、ユーザーIDといくつかのpageViewロギングが設定されます。ログの出力は次のとおりです。
2013-05-27 12:19:00.636 MyApp[8492:907] Flurry: Starting session on Agent Version [115]
2013-05-27 12:19:00.659 MyApp[8492:907] Flurry: setUserID[<cut>]
2013-05-27 12:19:00.684 MyApp[8492:120b] FlurrySession: Add session with startTime[2013-05-27 15:46:22 +0000] to saved sessions
2013-05-27 12:19:00.704 MyApp[8492:120b] FlurrySession: Add crashed former session
2013-05-27 12:19:00.713 MyApp[8492:120b] FlurrySession: Event logging enabled[1]
2013-05-27 12:19:00.714 MyApp[8492:120b] FlurrySession: Session reports on close enabled[1]
2013-05-27 12:19:00.715 MyApp[8492:120b] FlurrySession: Session reports on pause enabled[0]
2013-05-27 12:19:00.716 MyApp[8492:120b] FlurrySession: Crash reporting enabled[0]
2013-05-27 12:19:00.717 MyApp[8492:120b] FlurrySession: set pushToken [(null)], _pushToken = [(null)]
2013-05-27 12:19:00.719 MyApp[8492:907] FlurryPageViewDelegate: delegate[(null)] created
2013-05-27 12:19:00.720 MyApp[8492:907] FlurryPageViewDelegate: delegate[(null)] created
2013-05-27 12:19:00.736 MyApp[8492:120b] FlurrySession: Initialized session from scratch with startTime[2013-05-27 16:19:00 +0000]
2013-05-27 12:19:00.737 MyApp[8492:120b] FlurrySession: Created active session with API[<cut>]
2013-05-27 12:19:00.738 MyApp[8492:120b] FlurrySession: Session reports on close enabled[1]
2013-05-27 12:19:00.739 MyApp[8492:120b] FlurrySession: Session reports on pause enabled[1]
2013-05-27 12:19:00.740 MyApp[8492:120b] FlurrySession: Event logging enabled[1]
2013-05-27 12:19:00.741 MyApp[8492:120b] FlurrySession: Crash reporting enabled[0]
2013-05-27 12:19:00.742 MyApp[8492:120b] FlurrySession: Sending sessions to server, include current NO
2013-05-27 12:19:00.763 MyApp[8492:120b] FlurrySession: Initial timestamp[2013-02-20 00:46:06 +0000] from saved source
2013-05-27 12:19:00.780 MyApp[8492:907] FlurryPageViewDelegate: delegate[(null)] created
2013-05-27 12:19:01.192 MyApp[8492:120b] Flurry: start background task
2013-05-27 12:19:01.202 MyApp[8492:120b] FlurrySession: Scheduled send 1 session(s).
2013-05-27 12:19:01.215 MyApp[8492:120b] FlurrySession: Set userID[<cut>]
2013-05-27 12:19:01.217 MyApp[8492:120b] FlurrySession: dealloc session
2013-05-27 12:19:04.857 MyApp[8492:907] FlurrySession: networkStatusChanged to reachable
2013-05-27 12:19:05.616 MyApp[8492:907] Flurry: HTTP connection delegate received response[<NSHTTPURLResponse: 0x1c5a1310>]
2013-05-27 12:19:05.624 MyApp[8492:7f03] FlurrySession: async http response code: 200, id [D1038462-66E2-48AE-8304-83A24B0E26EB]
2013-05-27 12:19:05.634 MyApp[8492:7f03] Flurry: stop background task
Flurryは初期セッション設定を自動的に送信したため、分析ページにセッションが表示されます(上記のセクション、非同期http応答コード:200は成功です)。 Add crashed以前のセッションが表示されていることに気づくでしょう。これは、XCodeで[停止]をクリックしてアプリを強制終了したためです。これにより、Flurryはイベントをログに記録できませんでした!ログに記録されたイベントが表示されますが、送信セッションはスケジュールされていません。
2013-05-27 12:19:41.184 MyApp[8492:aa07] FlurrySession: Recording event eventName[Doc Save] with parameters[{myparams = "xyz";
}] complete
Flurryが実際にログに記録されたイベントを送信するようにするには、まずデバイスの[ホーム]ボタンをクリックする必要があります。 [ホーム]をクリックすると、これがログに表示されます。
2013-05-27 12:21:15.884 MyApp[8492:a30f] FlurrySession: Pause session with pauseTime[2013-05-27 16:21:15 +0000]
2013-05-27 12:21:15.885 MyApp[8492:a30f] FlurrySession: Finish session with endTime[2013-05-27 16:21:15 +0000]
2013-05-27 12:21:15.887 MyApp[8492:a30f] FlurrySession: ending all unterminated timed events with _endTime[2013-05-27 16:21:15 +0000]...
2013-05-27 12:21:15.890 MyApp[8492:a30f] FlurrySession: ...finished ending un-ended timed events.
2013-05-27 12:21:15.891 MyApp[8492:a30f] FlurrySession: Sending sessions to server, include current YES
2013-05-27 12:21:15.900 MyApp[8492:a30f] FlurrySession: Initial timestamp[2013-02-20 00:46:06 +0000] from saved source
2013-05-27 12:21:15.914 MyApp[8492:a30f] Flurry: start background task
2013-05-27 12:21:15.919 MyApp[8492:a30f] FlurrySession: Scheduled send 1 session(s).
2013-05-27 12:21:16.729 MyApp[8492:907] Flurry: HTTP connection delegate received response[<NSHTTPURLResponse: 0x1c5ac0b0>]
2013-05-27 12:21:17.090 MyApp[8492:9c0b] FlurrySession: async http response code: 200, id [BB7CE5C1-D9C4-412F-9A41-6A838174B8FC]
2013-05-27 12:21:17.293 MyApp[8492:9c0b] Flurry: stop background task
次に、XCodeのStopでアプリを終了できます
BackgroundModesのいずれかを使用している場合は、設定する必要があります。
[Flurry setBackgroundSessionEnabled:NO];
説明と説明:
私は同じ問題を抱えており、[email protected]
:
Flurry管理者が削除を取り消さない限り、削除されたイベントは基本的にブラックリストに登録され、再び追跡されることはありません。
削除された55のイベントが表示されることを期待していますか?はいの場合、それらは削除されているため、再度追跡されることはありません。
したがって、私は dev.flurry.com の管理セクションからアプリを削除し、同じ名前で新しいアプリを作成しましたが、新しいAPI_KEY
。その後、私の55のイベントすべてがFlurry Analyticsのモニターに正しく、すべてのパラメーターとともに表示されました。
新しいFlurryイベントの一部がログに記録されない理由の1つは、(個別の)Flurryイベントの最大許容数の制限である可能性があります。 この答え で説明されているように、制限は300のカスタムイベントです。この制限に達した場合、新しいイベントはFlurryシステムによって単に無視され、残念ながら、この問題はXcodeログに表示されません。
それが問題の根本的な原因である場合、いくつかの提案を次に示します。