android - urls - No se encontraron datos de campaña. Usando Google Analytics v4
utm source utm medium (2)
vale, esto funciona bien. Estaba buscando en la descripción general de aplicaciones en Google Analytics. Los informes no se generan allí en tiempo real. Hay una pestaña específica para informes en tiempo real en Google Analytics. Aquí es donde tenemos que ver.
Recibo este error "I / GAV4 (7915): hilo [GAThread, 5, principal]: no se encontraron datos de campaña". Alguien tiene idea de lo que estoy mal?
- Estoy usando Android API nivel 20
- Google Analytics v4
- Dispositivo Android 4.2.2
- Constantes.TRACKER_MainActivity = "MainActivity"
Nota: he enmascarado algunos elementos a continuación en el código.
aquí está mi código ... manifiesto
<application
android:name="com.xxx.yyy.utility.Trackers"
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<meta-data
android:name="com.google.android.gms.analytics.globalConfigResource"
android:resource="@xml/global_tracker" />
<activity
android:name="com.xxx.yyy.MainActivity"
android:label="@string/app_name"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
rastreador init
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools"
tools:ignore="TypographyDashes">
<integer name="ga_sessionTimeout">300</integer>
<!-- Enable automatic Activity measurement -->
<bool name="ga_autoActivityTracking">true</bool>
<!-- The screen names that will appear in reports -->
<screenName name="com.xxx.yyy.MainActivity">MainActivity</screenName>
<!-- The following value should be replaced with correct property id. -->
<string name="ga_trackingId">UA-YYYYYYY-X</string>
</resources>
Código en la actividad: onCreate // Administración de rastreadores para la aplicación
t = ((Trackers) getApplication()).getTracker(Trackers.TrackerName.GLOBAL_TRACKER);
onResume // Envío de currículums a análisis
t.setScreenName(Constants.TRACKER_MainActivity);
t.send(new HitBuilders.AppViewBuilder().build());
Clase de aplicación de rastreador
public class Trackers extends Application
{
public enum TrackerName
{
APP_TRACKER, // Tracker used only in this
// app.
GLOBAL_TRACKER, // Tracker used by all the
// apps from a company.
// eg: roll-up tracking.
ECOMMERCE_TRACKER, // Tracker used by all
// ecommerce
// transactions from a
// company.
}
HashMap<TrackerName, Tracker> mTrackers = new HashMap<TrackerName, Tracker>();
public synchronized Tracker getTracker(TrackerName trackerId)
{
if (!mTrackers.containsKey(trackerId))
{
GoogleAnalytics analytics = GoogleAnalytics.getInstance(this);
if( trackerId == TrackerName.GLOBAL_TRACKER )
{
mTrackers.put(trackerId, analytics.newTracker(R.xml.global_tracker));
}
}
return mTrackers.get(trackerId);
}
}
Para esto, haga CustomReceiver y, desde allí, envíe la intención a google CampaignTrackingReceiver en GoogleAnalyticsv4.
Con esto obtendrás CampaignFound en los registros
public class CustomCampaignTrackingReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
new CampaignTrackingReceiver().onReceive(context, intent);
}
}