Analytics'i Android Uygulamanıza Ekleme

Bu kılavuzda, adlandırılmış ekranlardaki kullanıcı etkinliğini ölçmek için Analytics'i Android uygulamanıza nasıl ekleyeceğiniz gösterilmektedir. Henüz uygulamanız yoksa ve Analytics'in nasıl çalıştığını görmek istiyorsanız örnek uygulamamıza göz atın.

Zorunlu: Şu tarayıcıların son sürümleri:

Projenizi oluşturun

Projenizin AndroidManifest.xml dosyasını, INTERNET ve ACCESS_NETWORK_STATE izinlerini içerecek şekilde güncelleyin:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.example.analytics">

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

  <application android:name="AnalyticsApplication">
    ...
  </application>
</manifest>

Proje düzeyindeki build.gradle bağımlılığınıza aşağıdaki bağımlılığı ekleyin:

dependencies {
  // ...
  classpath 'com.google.gms:google-services:3.0.0'
}

Google Play Hizmetleri'nde aşağıdaki bağımlılığı app/build.gradle için ekleyin:

dependencies {
  // ...
  compile 'com.google.android.gms:play-services-analytics:10.2.4'
}

global_tracker.xml dosyası oluşturun

app/src/res/xml/global_tracker.xml dosyasını aşağıdaki içerikle oluşturun:

<?xml version="1.0" encoding="utf-8"?>
<resources>
  <string name="ga_trackingId" translatable="false">${YOUR_TRACKING_ID}</string>
</resources>

${YOUR_TRACKING_ID} yerine izleme kimliğinizi yazın.

Ekran izleme özelliği ekleyin

Kullanıcı, uygulamanızda ekranları her açtığında veya değiştirdiğinde Analytics'e adlandırılmış bir ekran görünümü gönderirsiniz. Kodunuz şunları yapmalıdır:

  • Paylaşılan izleyiciyi bir Uygulama alt sınıfı aracılığıyla sağlayın.
  • Ön plan etkinliği için geri çağırma yöntemini geçersiz kılın.
  • Ekran için bir ad girin ve izlemeyi yürütün.

Başvuru

Application alt sınıfını belirtmeniz ve uygulamanızın izleyicisini döndüren bir yardımcı yöntem sağlamanız gerekir.</>

/*
 * Copyright Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.google.samples.quickstart.analytics;

import android.app.Application;

import com.google.android.gms.analytics.GoogleAnalytics;
import com.google.android.gms.analytics.Tracker;

/**
 * This is a subclass of {@link Application} used to provide shared objects for this app, such as
 * the {@link Tracker}.
 */
public class AnalyticsApplication extends Application {

  private static GoogleAnalytics sAnalytics;
  private static Tracker sTracker;

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

    sAnalytics = GoogleAnalytics.getInstance(this);
  }

  /**
   * Gets the default {@link Tracker} for this {@link Application}.
   * @return tracker
   */
  synchronized public Tracker getDefaultTracker() {
    // To enable debug logging use: adb shell setprop log.tag.GAv4 DEBUG
    if (sTracker == null) {
      sTracker = sAnalytics.newTracker(R.xml.global_tracker);
    }

    return sTracker;
  }
}

Etkinlik veya parça

İzlemek istediğiniz Etkinliği açın. Ayrıca Fragment değerini de izleyebilirsiniz, ancak bunun bir ekran görüntülenmeyi doğru şekilde temsil ettiğinden emin olun.

Paylaşılan Tracker örneğini edinmek amacıyla izlemek istediğiniz Activity veya Fragment için onCreate yöntemini geçersiz kılın:

// Obtain the shared Tracker instance.
AnalyticsApplication application = (AnalyticsApplication) getApplication();
mTracker = application.getDefaultTracker();

Uygun yöntemi geçersiz kılın. Örneğin, Activity için onResume veya ekran değiştiğinde günlük kaydı oluşturmak üzere ViewPager için onPageSelected.

Log.i(TAG, "Setting screen name: " + name);
mTracker.setScreenName("Image~" + name);
mTracker.send(new HitBuilders.ScreenViewBuilder().build());

Bir ekranı temsil eden her Activity veya Fragment öğesine izleme kodu ekleyin. Analytics'te uygulamanızın ekran görüntülemeleri arasında ayrım yapmak istiyorsanız her Activity veya Fragment öğesinin içine bir ad ayarladığınızdan emin olun. Paylaşılan izleyiciye kaydedilen tüm etkinlikler, değiştirilene veya temizlenene (null olarak ayarlandı) kadar en son ekran adını gönderir.

Etkinlik gönderme

Bir etkinlik göndermek için izleyicide ekran alanı değerlerini ayarlayıp isabeti gönderin. Aşağıdaki örnekte Event göndermek için HitBuilders.EventBuilder kullanılmıştır:

mTracker.send(new HitBuilders.EventBuilder()
    .setCategory("Action")
    .setAction("Share")
    .build());

Sonraki adımlar