2013-01-07 12 views
5

私は前に慌てて実装しました。それは正常に動作していた。今日、sdkの新しいバージョンでは、flurryはlogcatにログを記録しません。枝打ちはアンドロイドに何も記録しません。

私のコード

Flurry.java活動における

public class Flurry { 

private static final String API_KEY = "xxxxxxxxxxxxxxxxxxxxxx"; 
private static Context mContext; 

public static void init(Context c) { 
    mContext = c; 
} 

public static Context getContext() { 
    return mContext; 
} 

public static void onStartSession() { 
    if (mContext != null) { 
     Debug.e("", "startng flurry session..."); 

     FlurryAgent.setUserId(Utils.getUserId(mContext)); 
     FlurryAgent.setVersionName(Utils.getAppVersion(mContext)); 
     FlurryAgent.setLogEnabled(true); 
     FlurryAgent.setLogEvents(true); 
     FlurryAgent.onStartSession(mContext, API_KEY); 
     // FlurryAgent.initializeAds(mContext); 
    } else { 
     Debug.e("", "mContext is null"); 
    } 
} 

public static void onEndSession() { 
    if (mContext != null) { 
     Debug.e("", "ending flurry session..."); 
     FlurryAgent.onEndSession(mContext); 
    } 
} 
} 

のmanifest.xmlで
public class MainActivity extends TabActivity implements OnTabChangeListener { 
/** Called when the activity is first created. */ 

TabHost tabHost; 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    setContentView(R.layout.main); 
    Flurry.init(this); 
    Flurry.onStartSession();   

    setTabs(); 

} 

@Override 
protected void onDestroy() { 
    Flurry.onEndSession(); 
    super.onDestroy(); 
} 
} 

<uses-permission android:name="android.permission.INTERNET" /> 

それは私がこのようにログを示して前に私は実装しかし、今日、私は別のアプリでplementing、私は慌しいのログを取得していない...何が問題になることができますか?

4359   FlurryAgent D Initializing Flurry session 
4359   FlurryAgent D New session 
4359   TitleActivity V ::onResume:: 
4359    Settings W Setting android_id has moved from android.provider.Settings.System to android.provider.Settings.Secure, returning read-only value. 
4359   FlurryAgent I loading persistent data: /data/data/com.xxxxxx/files/.flurryagent.-6ee7b2a3 
    4359   FlurryAgent D Loading API key: ****************xxxx 
4359   FlurryAgent D Loading session reports 
4359   FlurryAgent D Persistent file loaded 
4359   FlurryAgent D generating report 
4359   FlurryAgent D Sending report to: http://data.flurry.com/aap.do 
4359   FlurryAgent D Report successful 
4359   FlurryAgent D Processing report response 
4359   FlurryAgent D Done sending initial agent report 
+0

慌ててイベントやセッションを取得しませんでした。 –

答えて

6

Flurry Analytics SDK v3.1.0(Flurryから今週作成され、ダウンロードされた)を使用すると、ログメッセージが表示されます。ここ

@Override 
protected void onStart() { 
    super.onStart(); 
    FlurryAgent.onStartSession(this, FLURRY_API_KEY); 
    FlurryAgent.setLogEnabled(true); 
    FlurryAgent.setLogEvents(true); 
    FlurryAgent.setLogLevel(Log.VERBOSE); 

} 

@Override 
protected void onStop() { 
    super.onStop(); 
    FlurryAgent.onEndSession(this); 
} 

そして、私はトリックは、以下のあなたがいない呼び出すと思い証拠

01-10 11:35:23.310: I/FlurryAgent(3915): loading persistent data: /data/data/com.ader/files/.flurryagent.624f614c 
01-10 11:35:23.310: D/FlurryAgent(3915): Loading API key: ****************RY7Z 
01-10 11:35:23.320: D/FlurryAgent(3915): Loading phoneId: AND2001447e7dcd4d3b 
01-10 11:35:23.320: D/FlurryAgent(3915): Loading session reports 
01-10 11:35:23.320: D/FlurryAgent(3915): Session report added: 1 
01-10 11:35:23.320: D/FlurryAgent(3915): Session report added: 2 
01-10 11:35:23.320: D/FlurryAgent(3915): Persistent file loaded 
01-10 11:35:23.560: D/FlurryAgent(3915): generating report 
01-10 11:35:23.570: D/FlurryAgent(3915): Sending report to: http://data.flurry.com/aap.do 
01-10 11:35:29.610: D/FlurryAgent(3915): Report successful 
01-10 11:35:29.610: D/FlurryAgent(3915): Done sending initial agent report 

さ:

ここでAndroidのログにメッセージを書き込むための突風を設定し、関連するコードです持っている:

FlurryAgent.setLogLevel(Log.VERBOSE); 
+0

あなたの答えをありがとう。翌日にイベントが慌ててログに記録されていて、まだlogcatにログインしていません。 –

+0

setLogLevel(Log.VERBOSE)の呼び出しを追加しましたか?また、ビルドとデプロイメントプロセスでgremlinsが隠れているかどうかを確認するために、再インストールする前にクリーンなビルドとアンインストールを実行してください。 – JulianHarty

+0

問題のあるアプリを実行したときに生成されたログを投稿することもできます。これは、少なくとも「startng flurry session ...」を含むべきです。したがって、onStartSession()の呼び出しが発生します。 Flurryのバージョンを確認することができますか? – JulianHarty

0

これが私の作品:

@Override 
protected void onStart() { 
    super.onStart(); 
    FlurryAgent.setLogEnabled(true); 
    FlurryAgent.setLogLevel(Log.VERBOSE); 
    FlurryAgent.onStartSession(this, "XXXXXXXXXXXXXXX"); 
    //System.out.println("Started Flurry"); 
} 

@Override 
protected void onStop() { 
    super.onStop();  
    FlurryAgent.onEndSession(this); 
    //System.out.println("Stopped Flurry"); 
} 
+1

Activityで 'FlurryAgent'を直接使用すると動作します。私は別のFlurry utilクラスを作っていましたが、これは動作しませんでした。なぜなら私は 'init'メソッドを通して文脈を与えていたと思うので、なぜFlurryは' context'に問題があるのか​​分かりません。すべての開発者は 'context'の苦情を受けています。 –

0

最近私のような同じ問題を抱える人のために。

FlurryAgent.setLogEnabled(true); 
FlurryAgent.setLogEvents(true); 
FlurryAgent.setLogLevel(Log.VERBOSE); 
// must be last one 
FlurryAgent.init(context, "some key"); 

私はアプリケーションを拡張するクラスでFlurryを初期化していました。 initコールを最後にすることが重要でした。

そこにある3つの方法のために、ページの下部に、hereを述べている:

...これは初期化する前に呼び出されなければなりません。

関連する問題