11

ここにある Android 用の新しい Google アナリティクス V2 SDK のチュートリアルに従いました。

https://developers.google.com/analytics/devguides/collection/android/v2/

残念ながら、アプリケーションを実行するたびにレポートが機能せず、logcat から次のようなメッセージが表示されます。

07-09 09:13:16.978: W/Ads(13933): No Google Analytics: Library Incompatible.
07-09 09:13:16.994: I/Ads(13933): To get test ads on this device, call adRequest.addTestDevice("2BB916E1BD6BE6407582A429D763EC71");
07-09 09:13:17.018: I/Ads(13933): adRequestUrlHtml: <html><head><script src="http://media.admob.com/sdk-core-v40.js"></script><script>AFMA_getSdkConstants();AFMA_buildAdURL({"kw":[],"preqs":0,"session_id":"7925570029955749351","u_sd":2,"seq_num":"1","slotname":"a14fd91432961bd","u_w":360,"msid":"com.mysampleapp.sampleapp","js":"afma-sdk-a-v6.0.1","mv":"8013013.com.android.vending","isu":"2BB916E1BD6BE6407582A429D763EC71","cipa":1,"format":"320x50_mb","net":"wi","app_name":"1.android.com.mysampleapp.sampleapp","hl":"en","u_h":592,"carrier":"311480","ptime":0,"u_audio":3});</script></head><body></body></html>
07-09 09:13:17.041: W/ActivityManager(220): Unable to start service Intent { act=com.google.android.gms.analytics.service.START (has extras) }: not found
07-09 09:13:17.049: W/GAV2(13933): Thread[main,5,main]: Connection to service failed 1
07-09 09:13:17.057: W/GAV2(13933): Thread[main,5,main]: Need to call initializea() and be in fallback mode to start dispatch.
07-09 09:13:17.088: D/libEGL(13933): loaded /system/lib/egl/libGLES_android.so
07-09 09:13:17.096: D/libEGL(13933): loaded /vendor/lib/egl/libEGL_POWERVR_SGX540_120.so
07-09 09:13:17.096: D/libEGL(13933): loaded /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so
07-09 09:13:17.096: D/libEGL(13933): loaded /vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so

これが私のコードです(httppostなどに関係するコードの一部を編集しました):

    package com.mysampleapp.sampleapp;

    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.util.ArrayList;
    import java.util.List;

    import org.apache.http.HttpEntity;
    import org.apache.http.HttpResponse;
    import org.apache.http.NameValuePair;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.entity.UrlEncodedFormEntity;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.message.BasicNameValuePair;
    import org.json.JSONArray;
    import org.json.JSONObject;

    import com.google.analytics.tracking.android.EasyTracker;

    import android.app.Activity;
    import android.app.ProgressDialog;
    import android.content.DialogInterface;
    import android.content.DialogInterface.OnCancelListener;
    import android.content.Intent;
    import android.content.SharedPreferences;
    import android.os.AsyncTask;
    import android.os.Bundle;
    import android.preference.PreferenceManager;
    import android.util.Log;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.ImageView;
    import android.widget.TextView;


    public class viewRandom extends Activity {

        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);

            setContentView(R.layout.viewrandom);



            uservote.setVisibility(View.GONE);
            new randomViewClass().execute();

        }

        public void onStart() {
            super.onStart();
            EasyTracker.getInstance().activityStart(this);
        }

        public void onStop() {
            super.onStop();
            EasyTracker.getInstance().activityStop(this);
        }
}
4

3 に答える 3

9

これは古い投稿であることは承知していますが、今日受け取ったのとまったく同じエラーであるという意味で、もう少し情報を提供したかったのです。

プリンスは正確に正しいです、それはダッシュからです。ほとんどの場合、ダッシュを削除して入力すると、再び機能します。しかし、プロジェクトを再度クリーンアップすると、mysho の問題である可能性がある en_dash に戻ります。

Android Lint により、これは自動的に行われます。ただし、無効にすることはできます。

設定に移動します(私はMacを使用しているため、Eclipse->設定です)

Android に移動 Lint エラー チェックに移動

Lint チェッカーを完全に無効にするか、私がしたことを実行して、en_dash だけを無効にすることができます

Usability:Typography の下にある "TypographyDashes" と呼ばれるものを検索するか、検索ボックス内で "dash" を検索してください。いずれにせよ、TypographyDashes が表示されるはずです。

それを強調表示し、重大度の下で「無視」にします

そこから[適用]をクリックして、再リントを許可します

私が助けてくれることを願っています

于 2012-11-11T01:40:17.943 に答える
4

OK、これで何が問題なのかがわかりました。それは私のanalytics.xmlファイル内にありました:

<?xml version="1.0" encoding="utf-8" ?>
<resources>
    <string name="ga_trackingId">UA-0000000-00</string>
    <bool name="ga_autoActivityTracking">true</bool>
    <bool name="ga_reportUncaughtExceptions">true</bool>
    <string name="ga_sampleFrequency">20</string>
</resources>

何が起こったのかというと、trackingId をファイルに貼り付けたときに、Eclipse がそれを自動的に「en ダッシュ」に変換し、Google が私の trackingId を正しく読み取ることができませんでした。en ダッシュを通常のダッシュに変更すると正常に機能し、すべてが機能するようになりました。

于 2012-07-10T15:12:39.627 に答える