Google Analytics / измерение кампании - PullRequest
0 голосов
/ 09 октября 2018

Я не могу понять одну вещь в Google Analytics .Мне нужна функциональность в моем приложении, например, если пользователь A отсылает мое приложение к пользователю B , тогда он получает вознаграждение, но я хочу отслеживать A идентификатор пользователя по ссылкекогда B пользователь нажимает на эту ссылку, тогда я могу получить A идентификатор пользователя в B пользовательском приложении при первой операции.

Я создал эту ссылкуНапример: https://play.google.com/store/apps/details?id=com.example.app&referrer=utm_source%3Dgoogle%26utm_medium%3Demail%26utm_term%3Dtesting%26utm_content%3Dcontent%26utm_campaign%3Dglobus

файл Gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "com.example.app"
        minSdkVersion 18
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.google.android.gms:play-services-analytics:10.2.4'
    implementation 'com.android.support:support-v4:28.0.0'
    implementation 'com.android.support:appcompat-v7:28.0.0'
}

Класс аналитики:

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;
    }
}

верхнийвсе классы и код, указанные по этой ссылке: https://developers.google.com/analytics/devguides/collection/android/v4/

Теперь я хочу отслеживать идентификатор пользователя.Как я могу это сделать

Ответы [ 2 ]

0 голосов
/ 09 октября 2018

Создайте широковещательный приемник со следующим кодом:

public class CampaignBroadCastReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
       String referrer= intent.getExtras().getString("referrer", ""); //your referrer
       new com.google.android.gms.analytics.CampaignTrackingReceiver().onReceive(context, intent); //update the same to Google Analytics  
    }
}

В вашем манифесте:

     <service android:name="com.google.analytics.tracking.android.CampaignTrackingService" />
     <receiver android:name="yourpackage.CampaignBroadCastReceiver">
                <intent-filter>
                    <action android:name="com.android.vending.INSTALL_REFERRER" />
                </intent-filter>
     </receiver>
0 голосов
/ 09 октября 2018

Я еще не пробовал это.Но согласно документации, доступной в Google Analytics, отслеживание кампании.Следующий код должен работать в вашей основной деятельности onCreate или onStart

// Get the intent that started this Activity.
Intent intent = this.getIntent();
Uri uri = intent.getData();
String campaign = uri.getQueryParameter("utm_source");

и добавить получателя в файл манифеста, чтобы получать широковещательные сообщения INSTALL_REFERRER из магазина воспроизведения

<receiver android:name="com.google.android.gms.analytics.CampaignTrackingReceiver"
    android:enabled="true"
    android:exported="true">
    <intent-filter>
        <action android:name="com.android.vending.INSTALL_REFERRER" />
    </intent-filter>
</receiver>

https://developers.google.com/analytics/devguides/collection/android/v3/campaigns

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...