Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@ LightmapSettings:
m_AlbedoBoost: 1
m_TemporalCoherenceThreshold: 1
m_EnvironmentLightingMode: 0
m_EnableBakedLightmaps: 0
m_EnableRealtimeLightmaps: 0
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 1
m_LightmapEditorSettings:
serializedVersion: 4
m_Resolution: 2
Expand Down
89 changes: 87 additions & 2 deletions analytics/testapp/Assets/Firebase/Sample/Analytics/UIHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ namespace Firebase.Sample.Analytics {
using Firebase.Analytics;
using Firebase.Extensions;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using UnityEngine;

Expand Down Expand Up @@ -59,6 +60,10 @@ public virtual void Update() {
void InitializeFirebase() {
DebugLog("Enabling data collection.");
FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
DebugLog("Initiate on-device conversion measurement.");
FirebaseAnalytics.InitiateOnDeviceConversionMeasurementWithEmailAddress("test@testemail.com");
DebugLog("Initiate on-device conversion measurement (phone number).");
FirebaseAnalytics.InitiateOnDeviceConversionMeasurementWithPhoneNumber("+15551234567");

DebugLog("Set user properties.");
// Set the user's sign up method.
Expand Down Expand Up @@ -99,7 +104,7 @@ public void AnalyticsScore() {
public void AnalyticsGroupJoin() {
// Log an event with a string parameter.
DebugLog("Logging a group join event.");
FirebaseAnalytics.LogEvent(FirebaseAnalytics.EventJoinGroup, FirebaseAnalytics.ParameterGroupId,
FirebaseAnalytics.LogEvent(FirebaseAnalytics.EventJoinGroup, FirebaseAnalytics.ParameterGroupID,
"spoon_welders");
}

Expand All @@ -113,19 +118,57 @@ public void AnalyticsLevelUp() {
new Parameter("hit_accuracy", 3.14f));
}

public void AnalyticsViewCart() {
// Log an event that includes a parameter with a list
DebugLog("Logging a view cart event.");
FirebaseAnalytics.LogEvent(
FirebaseAnalytics.EventViewCart,
new Parameter(FirebaseAnalytics.ParameterCurrency, "USD"),
new Parameter(FirebaseAnalytics.ParameterValue, 30.03),
new Parameter(FirebaseAnalytics.ParameterItems, new [] {
new Dictionary<string, object> {
{ FirebaseAnalytics.ParameterItemID, "SKU_12345" },
{ FirebaseAnalytics.ParameterItemName, "Horse Armor DLC" },
},
new Dictionary<string, object> {
{ FirebaseAnalytics.ParameterItemID, "SKU_67890" },
{ FirebaseAnalytics.ParameterItemName, "Gold Horse Armor DLC" },
}
})
);
}

// Reset analytics data for this app instance.
public void ResetAnalyticsData() {
DebugLog("Reset analytics data.");
FirebaseAnalytics.ResetAnalyticsData();
}

public void AnalyticsSetConsent() {
FirebaseAnalytics.SetConsent(new Dictionary<ConsentType, ConsentStatus>()
{
{ ConsentType.AnalyticsStorage, ConsentStatus.Denied },
{ ConsentType.AdStorage, ConsentStatus.Denied },
{ ConsentType.AdUserData, ConsentStatus.Denied },
{ ConsentType.AdPersonalization, ConsentStatus.Denied }
});
FirebaseAnalytics.SetConsent(new Dictionary<ConsentType, ConsentStatus>());
FirebaseAnalytics.SetConsent(new Dictionary<ConsentType, ConsentStatus>()
{
{ ConsentType.AnalyticsStorage, ConsentStatus.Granted },
{ ConsentType.AdStorage, ConsentStatus.Granted },
{ ConsentType.AdUserData, ConsentStatus.Granted },
{ ConsentType.AdPersonalization, ConsentStatus.Granted }
});
}

// Get the current app instance ID.
public Task<string> DisplayAnalyticsInstanceId() {
return FirebaseAnalytics.GetAnalyticsInstanceIdAsync().ContinueWithOnMainThread(task => {
if (task.IsCanceled) {
DebugLog("App instance ID fetch was canceled.");
} else if (task.IsFaulted) {
DebugLog(String.Format("Encounted an error fetching app instance ID {0}",
DebugLog(String.Format("Encountered an error fetching app instance ID {0}",
task.Exception.ToString()));
} else if (task.IsCompleted) {
DebugLog(String.Format("App instance ID: {0}", task.Result));
Expand All @@ -134,6 +177,36 @@ public Task<string> DisplayAnalyticsInstanceId() {
}).Unwrap();
}

// Get the current app session ID
public Task<long> DisplaySessionId() {
return FirebaseAnalytics.GetSessionIdAsync().ContinueWithOnMainThread(task => {
if (task.IsCanceled) {
DebugLog("Session ID fetch was canceled.");
} else if (task.IsFaulted) {
DebugLog(String.Format("Encountered an error fetching session ID {0}",
task.Exception.ToString()));
} else if (task.IsCompleted) {
DebugLog(String.Format("Session ID: {0}", task.Result));
}
return task;
}).Unwrap();
}

// Log a dummy Apple transaction
public Task DisplayLogAppleTransaction() {
return FirebaseAnalytics.LogAppleTransactionAsync("dummy_transaction_id").ContinueWithOnMainThread(task => {
if (task.IsCanceled) {
DebugLog("LogAppleTransaction was canceled.");
} else if (task.IsFaulted) {
DebugLog(String.Format("Encountered an error logging Apple transaction: {0}",
task.Exception.ToString()));
} else if (task.IsCompleted) {
DebugLog("LogAppleTransaction completed successfully.");
}
return task;
}).Unwrap();
}

// Output text to the debug log text field, as well as the console.
public void DebugLog(string s) {
print(s);
Expand Down Expand Up @@ -184,12 +257,24 @@ void GUIDisplayControls() {
if (GUILayout.Button("Log Level Up")) {
AnalyticsLevelUp();
}
if (GUILayout.Button("Log View Cart")) {
AnalyticsViewCart();
}
if (GUILayout.Button("Reset Analytics Data")) {
ResetAnalyticsData();
}
if (GUILayout.Button("Show Analytics Instance ID")) {
DisplayAnalyticsInstanceId();
}
if (GUILayout.Button("Show Session ID")) {
DisplaySessionId();
}
if (GUILayout.Button("Test SetConsent")) {
AnalyticsSetConsent();
}
if (GUILayout.Button("Test LogAppleTransaction")) {
DisplayLogAppleTransaction();
}
GUILayout.EndVertical();
GUILayout.EndScrollView();
}
Expand Down
38 changes: 38 additions & 0 deletions analytics/testapp/ProjectSettings/PackageManagerSettings.asset
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &1
MonoBehaviour:
m_ObjectHideFlags: 61
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 13964, guid: 0000000000000000e000000000000000, type: 0}
m_Name:
m_EditorClassIdentifier:
m_ScopedRegistriesSettingsExpanded: 1
oneTimeWarningShown: 0
m_Registries:
- m_Id: main
m_Name:
m_Url: https://packages.unity.com
m_Scopes: []
m_IsDefault: 1
m_UserSelectedRegistryName:
m_UserAddingNewScopedRegistry: 0
m_RegistryInfoDraft:
m_ErrorMessage:
m_Original:
m_Id:
m_Name:
m_Url:
m_Scopes: []
m_IsDefault: 0
m_Modified: 0
m_Name:
m_Url:
m_Scopes:
-
m_SelectedScopeIndex: 0
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1045 &1
EditorBuildSettings:
--- !u!1386491679 &1
PresetManager:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Scenes: []
m_DefaultPresets: {}
Loading