GVKun编程网logo

Google Analytics(分析)Android SDK 4 newTracker未定义(android_sdk_root未定义)

15

对于想了解GoogleAnalytics(分析)AndroidSDK4newTracker未定义的读者,本文将是一篇不可错过的文章,我们将详细介绍android_sdk_root未定义,并且为您提供关

对于想了解Google Analytics(分析)Android SDK 4 newTracker未定义的读者,本文将是一篇不可错过的文章,我们将详细介绍android_sdk_root未定义,并且为您提供关于Android google analytics集成错误、Android Google Analytics页面统计的开发经验、android – google analytics easytracker导致java连接异常、android – Google Analytics SDK v4跟踪广告系列通过电子邮件发送无数据的有价值信息。

本文目录一览:

Google Analytics(分析)Android SDK 4 newTracker未定义(android_sdk_root未定义)

Google Analytics(分析)Android SDK 4 newTracker未定义(android_sdk_root未定义)

我一直在浏览Google Analytics(分析)网站上的文档和资源,以使用Android SDK 4来实现它.我经历了多个堆栈溢出问题,但其他问题似乎还有其他问题.我已按照以下步骤进行初始化:初始化跟踪器;创建一个类,该类将应用程序扩展为设置跟踪器以及我的电子商务和全局跟踪器.

在我的应用程序类上,所有内容均从示例开始进行,但是“ newTracker”方法未定义.我的图书馆中有libGoogleAnalyticsServices.jar,下面是我的课程.谢谢您看我,我很困惑.

import java.util.HashMap;
import com.google.analytics.tracking.android.GoogleAnalytics;
import com.google.analytics.tracking.android.Tracker;

import android.app.Application;

public class GlobalState extends Application {
    private static final String PROPERTY_ID = "myNumber";
    private Tracker tracker;
    HashMap<TrackerName, Tracker> mTrackers = new HashMap<TrackerName, Tracker>();

    public enum TrackerName {
        APP_TRACKER,
        GLOBAL_TRACKER,
        E_COMMERCE_TRACKER,
    }


    synchronized Tracker getTracker(TrackerName trackerId) {

        if (!mTrackers.containsKey(trackerId)) {

            GoogleAnalytics analytics = GoogleAnalytics.getInstance(this);
            Tracker t = (trackerId == TrackerName.APP_TRACKER) ? analytics.newTracker(PROPERTY_ID)
                    : (trackerId == TrackerName.GLOBAL_TRACKER) ? analytics.newTracker(R.xml.global_tracker)
                    : analytics.newTracker(R.xml.ecommerce_tracker);
            mTrackers.put(trackerId, t);
        }
        return mTrackers.get(trackerId);
    }

}

解决方法:

我刚遇到这个问题,

尝试从项目中删除libGoogleAnalyticsServices.jar.我相信这是将Google Analytics(分析)添加到您的应用程序的旧方法.

接下来按照http://developer.android.com/google/play-services/setup.html的说明进行操作

简而言之,Google Analytics(分析)现已包含在Google Play服务库项目中.

要总结链接中的说明,请导入位于
    < android-sdk> / extras / google / google_play_services / libproject / google-play-services_lib /

在您的应用程序中将Google Play服务纳入图书馆项目

加:
    <元数据android:name =“ com.google.android.gms.version”
        android:value =“ @ integer / google_play_services_version” />
作为清单中应用程序声明的子项.

Android google analytics集成错误

Android google analytics集成错误

当我试图在我的活动中获取跟踪器时,它显示错误 – 这个方法在谷歌分析v4中取消定义“getactivity()”

// Get tracker.
    Tracker t = ((AnalyticsSampleApp) getActivity().getApplication())
            .getTracker(TrackerName.APP_TRACKER);

解决方法:

如果您还没有这样做,请为您的应用创建一个MyApplication扩展应用程序类,并确保将其添加到您的清单中,如下所示(这里重要的属性是android:name,我删除了其他xml属性明晰).

<application
    android:name="mypackagename.MyApplication"
    ... >

然后,在MyApplication类中,根据Google Analytics v4文档https://developers.google.com/analytics/devguides/collection/android/v4/#tracking-methods创建方法getTracker

然后,使用

Tracker t = ((MyApplication) getApplication())
        .getTracker(TrackerName.APP_TRACKER);

Android Google Analytics页面统计的开发经验

Android Google Analytics页面统计的开发经验

GA集成步骤:

1.jar包准备:只需要一个jar包 google-play-sevices.jar,确认一下jar包里面有 com.google.android.gms.analytics这个目录,里面比较核心的3个类是GoogleAnalytics和Tracker还有HitBuilders,一般确认有这三个类的话jar包就应该没问题。

2.在Androidmanifest文件里面确认有以下权限

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

3.在app的入口处增加获取Tracker实例的代码:

Tracker () {
    (== ) {
        GoogleAnalytics analytics = GoogleAnalytics.()= analytics.newTracker().enableExceptionReporting().enableAutoActivityTracking()}
    }

这个方法写在Appcation的子类中,一般一个project只有一个这个类,你应该能轻松找到。

分析一下这几行代码,mTracker是一个全局变量,这个方法是线程同步的,PRODUCT_ID是你在GA上申请的trackerId,

mTracker.enableAutoActivityTracking(false);

这行代码是用来追踪你的Activity的,如果设为true的话,你在进所有带有send代码的Activity时都会向GA服务器发送完整类名作为ScreenName,我这里设为false,因为我后面自定义了屏幕名称。

4.在需要追踪的Activity和onClick方法中获取tracker对象,调用setScreenName方法设置页面名称,然后调用send方法发送。

mTracker = AiHomeApplication.getInstance().getDefaultTr
acker();
mTracker.setScreenName(s);
mTracker.send(new HitBuilders.ScreenViewBuilder().build());

暂时就写这么多了,GA集成总体来说很简单。

android – google analytics easytracker导致java连接异常

android – google analytics easytracker导致java连接异常

我开始使用Google Analytics(分析)平台.
到目前为止,我可以从我的模拟器连接到G.A服务器并上传信息.
问题是,当我从三星galaxy S测试时,应用程序无法与G.A服务器进行通信.

我得到下一个错误:

12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577): Problem with socket or streams.
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577): java.net.ConnectException: www.google-analytics.com/127.0.0.1:80 - Connection refused
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577):    at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:207)
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577):    at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:437)
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577):    at java.net.socket.connect(Socket.java:1002)
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577):    at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:119)
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577):    at com.google.android.apps.analytics.PipelinedRequester.maybeOpenConnection(UnkNown Source)
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577):    at com.google.android.apps.analytics.PipelinedRequester.addRequest(UnkNown Source)
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577):    at com.google.android.apps.analytics.Networkdispatcher$dispatcherThread$AsyncdispatchTask.dispatchSomePendingHits(UnkNown Source)
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577):    at com.google.android.apps.analytics.Networkdispatcher$dispatcherThread$AsyncdispatchTask.run(UnkNown Source)
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577):    at android.os.Handler.handleCallback(Handler.java:587)
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577):    at android.os.Handler.dispatchMessage(Handler.java:92)
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577):    at android.os.Looper.loop(Looper.java:130)
12-17 17:43:21.924: W/GoogleAnalyticsTracker(20577):    at android.os.HandlerThread.run(HandlerThread.java:60)

我认为我的设备有问题 – 可以安装防火墙,无论出现什么问题 – 我该如何绕过它?

解决方法

我认为您使用自定义ROM或rooted ROM与修改的主机阻止(重定向到本地主机)所有请求分析工具和横幅系统.

相关信息

> http://pocketnow.com/tweaks-hacks/how-to-surf-faster-on-your-android-using-the-hosts-table
> http://forum.xda-developers.com/showthread.php?t=664532
> http://afreemobile.blogspot.com/2011/09/easy-way-to-block-ads-on-android.html

等等

android – Google Analytics SDK v4跟踪广告系列通过电子邮件发送无数据

android – Google Analytics SDK v4跟踪广告系列通过电子邮件发送无数据

我正在尝试使用 Android SDK v4跟踪广告系列(例如通过电子邮件发送),但它无法正常工作,因为我们无法在Google Analytics帐户中看到任何数据.

我们正在尝试使用以下代码将数据发送到Google Analytics:

我们要跟踪的网址:

URL SCHEME : scheme://www.example.com/commandes?utm_source=Mail_Invitation_Vente_ET&utm_medium=email&utm_term=ALL&utm_content=ALL&utm_campaign=TEST_CAMPAIGN
OR
URLs WEB:
http://www.example.com/commandes?utm_source=Mail_Invitation_Vente_ET&utm_medium=email&utm_term=ALL&utm_content=ALL&utm_campaign=TEST_CAMPAIGN

http://examplepetstore.com/index.html?utm_source=email&utm_medium=email_marketing&utm_campaign=summer&utm_content=email_variation_1 
(the documentation : https://developers.google.com/analytics/devguides/collection/android/v4/campaigns)

跟踪代码:

Tracker tracker = GoogleAnalytics.getInstance(this).newTracker("UA-XXXXX");
tracker.enableExceptionReporting(true);
tracker.enableAdvertisingIdCollection(true);
tracker.enableAutoActivityTracking(true);
tracker.setScreenName("SCREEN/ android");
tracker.send(new HitBuilders.Screenviewbuilder().setCampaignParamsFromUrl(URL_TO_TRACK).build());
GoogleAnalytics.getInstance(context).dispatchLocalHits();

我们也试过这个:

HashMap<String,String> campaignMap = new HashMap<>(3);
campaignMap.put("utm_source",SOURCE_TO_TRACK);
campaignMap.put("utm_medium",MEDIUM_TO_TRACK);
campaignMap.put("utm_campaign",CAMPAIGN_TO_TRACK);
tracker.send(new HitBuilders.Screenviewbuilder().setAll(campaignMap).build());

我们希望通过URL SCHEME(协议或HTTP URL)跟踪特定链接的点击.

你能告诉我们我的代码是否有问题吗?

SDK版本:play-services:7.5.0
我使用的是Google Analytics v4.

解决方法

按照以下方式 – 在您需要定义的启动画面活动或MainActivity中

public static GoogleAnalytics analytics;

public static Tracker tracker;
protected void onCreate(Bundle savedInstanceState) {

        analytics = GoogleAnalytics.getInstance(this);
        analytics.setLocaldispatchPeriod(1800);
        tracker = analytics.newTracker("UA-XXXXX-0");
        tracker.enableExceptionReporting(true);
        tracker.enableExceptionReporting(true);
        tracker.enableAutoActivityTracking(true);
String campaignData = "http://examplepetstore.com/index.html?utm_source=email&utm_medium=email_marketing&utm_campaign=summer&utm_content=email_variation_1 ";

        tracker.setReferrer(campaignData);

        tracker.send(new HitBuilders.Screenviewbuilder()
                .setCampaignParamsFromUrl(campaignData)
                .build());



}

AndroidMainfest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.xxxxxxx"
    android:versionCode="11"
    android:versionName="1.0" >

    <uses-sdk
        android:maxsdkVersion="23"
        android:minSdkVersion="14" />

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

 <application
 <receiver
            android:name="com.google.android.gms.analytics.AnalyticsReceiver"
            android:enabled="true">
            <intent-filter>
                <action android:name="com.google.android.gms.analytics.ANALYTICS_disPATCH" />
            </intent-filter>
        </receiver>

        <service
            android:name="com.google.android.gms.analytics.AnalyticsService"
            android:enabled="true"
            android:exported="false" />

        <!--
            Optionally,register CampaignTrackingReceiver and CampaignTrackingService to enable
            installation campaign reporting
            android:permission="android.permission.INSTALL_PACKAGES"
       -->

        <service android:name="com.google.android.gms.analytics.CampaignTrackingService" />
        <receiver android:name="com.google.android.gms.analytics.CampaignTrackingReceiver"
            android:exported="true"
            android:permission="android.permission.INSTALL_PACKAGES">

            <intent-filter>
                <action android:name="com.android.vending.INSTALL_REFERRER" />
            </intent-filter>
        </receiver>

    </application>

</manifest>

应用程序级build.gradel

apply plugin: ''android''
apply plugin: ''com.google.gms.google-services''



dependencies {
    compile filetree(dir: ''libs'',include: ''*.jar'')
    compile project('':Volley'')
    compile project('':Volley'')

    compile ''com.google.android.gms:play-services-analytics:8.3.0''
    //apply plugin: ''com.google.gms.google-services''
    compile ''com.android.support:multidex:1.0.0''

}

android {

    //compileSdkVersion 20
    //buildToolsversion "20.0.0"

    compileSdkVersion 23
    buildToolsversion "23.0.0"
    useLibrary ''org.apache.http.legacy''

    configurations {
        all*.exclude group: ''com.android.support'',module: ''support-v4''
    }

    defaultConfig {
        applicationId "com.xxxxxxx"
        multiDexEnabled true
        minSdkVersion 14
        targetSdkVersion 23
        versionCode 11
        versionName "1.0"
    }

    sourceSets {
        main {
            manifest.srcFile ''AndroidManifest.xml''
            java.srcDirs = [''src'']
            resources.srcDirs = [''src'']
            aidl.srcDirs = [''src'']
            renderscript.srcDirs = [''src'']
            res.srcDirs = [''res'']
            assets.srcDirs = [''assets'']
        }

        // Move the tests to tests/java,tests/res,etc...
        instrumentTest.setRoot(''tests'')

        // Move the build types to build-types/<type>
        // For instance,build-types/debug/java,build-types/debug/AndroidManifest.xml,...
        // This moves them out of them default location under src/<type>/... which would
        // conflict with src/ being used by the main source set.
        // Adding new build types or product flavors should be accompanied
        // by a similar customization.
        debug.setRoot(''build-types/debug'')
        release.setRoot(''build-types/release'')
    }
}

项目级build.gradel

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        //mavenCentral()
        jcenter()
    }
    dependencies {
        classpath ''com.android.tools.build:gradle:1.3.0''
        classpath ''com.google.gms:google-services:1.5.0-beta2''

    }

    allprojects {
        repositories {
            jcenter()
        }
    }
}

今天关于Google Analytics(分析)Android SDK 4 newTracker未定义android_sdk_root未定义的分享就到这里,希望大家有所收获,若想了解更多关于Android google analytics集成错误、Android Google Analytics页面统计的开发经验、android – google analytics easytracker导致java连接异常、android – Google Analytics SDK v4跟踪广告系列通过电子邮件发送无数据等相关知识,可以在本站进行查询。

本文标签: