https://github.com/unity-package/app-tracking-unity
Tracking for game unity
https://github.com/unity-package/app-tracking-unity
adjust analytics appsflyer firebaseanalytics tracking unity unity-package unity-packages unity3d
Last synced: 8 months ago
JSON representation
Tracking for game unity
- Host: GitHub
- URL: https://github.com/unity-package/app-tracking-unity
- Owner: unity-package
- License: mit
- Created: 2024-06-27T15:32:22.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-11-28T09:47:24.000Z (about 1 year ago)
- Last Synced: 2025-02-14T17:54:41.942Z (10 months ago)
- Topics: adjust, analytics, appsflyer, firebaseanalytics, tracking, unity, unity-package, unity-packages, unity3d
- Language: C#
- Homepage:
- Size: 24.4 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## What
- Support tracking for game unity (Firebase Analytic, Adjust and AppsFlyer)
## How To Install
### Add the line below to `Packages/manifest.json`
for version `1.0.3`
```csharp
"com.wolf-org.tracking":"https://github.com/unity-package/app-tracking-unity.git#1.0.3",
```
## Use
#### Firebase Tracking
- Add define symbols `VIRTUESKY_FIREBASE_ANALYTIC` to use ([Get Firebase Analytic Sdk](https://github.com/firebase-unity/firebase-analytics))
- Tracking event
```csharp
static void TrackEvent(string eventName)
static void TrackEvent(string eventName, string parameterName, string parameterValue)
static void TrackEvent(string eventName, Dictionary dictParameters)
static void TrackEvent(string eventName, Parameter[] parameters)
```
Example
```csharp
void TrackNoParam()
{
FirebaseTracking.TrackEvent("WinGame");
}
///
/// parameter_name: level
/// parameter_value: level_1
///
void TrackOneParam()
{
FirebaseTracking.TrackEvent("WinGame", "level", "level_1");
}
void TrackHasPramDict()
{
Dictionary dict = new Dictionary();
dict.Add("level", "level_1");
dict.Add("level", "level_2");
dict.Add("level", "level_3");
FirebaseTracking.TrackEvent("WinGame", dict);
}
void TrackHasPram()
{
Parameter[] parameters = new[]
{
new Parameter("level", "level_1"),
new Parameter("level", "level_2"),
new Parameter("level", "level_3")
};
FirebaseTracking.TrackEvent("WinGame", parameters);
}
```
- Tracking ads revenue
```csharp
static void FirebaseAnalyticTrackRevenue(double value, string network, string unitId, string format, string adNetwork)
```
Example
```csharp
void TrackingRevenue()
{
FirebaseAnalyticTrackingRevenue.FirebaseAnalyticTrackRevenue(...);
}
```
#### Adjust Tracking
- Add define symbol `VIRTUESKY_ADJUST` to use ([Get Adjust Sdk](https://github.com/pancake-llc/adjust))
- Tracking event
```csharp
static void TrackEvent(string eventToken)
```
Example
```csharp
void TrackingEventAdjust()
{
AdjustTracking.TrackEvent("asdwdsfwa");
}
```
- Tracking ads revenue
```csharp
static void AdjustTrackRevenue(double value, string network, string unitId, string placement, string adNetwork)
```
Example
```csharp
void TrackingRevenue()
{
AdjustTrackingRevenue.AdjustTrackRevenue(...);
}
```
#### AppsFlyer Tracking
- Add define symbol `VIRTUESKY_APPSFLYER` to use ([Get Appsflyer Sdk](https://github.com/AppsFlyerSDK/appsflyer-unity-plugin) , [Get AppsFlyer AdRevenue](https://github.com/AppsFlyerSDK/appsflyer-unity-adrevenue-generic-connector))
- Tracking event
```csharp
static void TrackEvent(string eventName)
static void TrackEvent(string eventName, string parameterName, string parameterValue)
static void TrackEvent(string eventName, Dictionary eventValues)
```
Example
```csharp
void TrackNoParam()
{
AppsFlyerTracking.TrackEvent("WinGame");
}
///
/// parameter_name: level
/// parameter_value: level_1
///
void TrackOneParam()
{
AppsFlyerTracking.TrackEvent("WinGame", "level", "level_1");
}
void TrackHasPramDict()
{
Dictionary dict = new Dictionary();
dict.Add("level", "level_1");
dict.Add("level", "level_2");
dict.Add("level", "level_3");
AppsFlyerTracking.TrackEvent("WinGame", dict);
}
```
- Tracking ads revenue
```csharp
static void AppsFlyerTrackRevenueAd(double value, string network, string unitId, string format, string adNetwork)
```
Example
```csharp
void TrackingRevenue()
{
AppsFlyerTrackingRevenue.AppsFlyerTrackRevenueAd(...);
}
```
- Tracking iap revenue
Add define symbol `VIRTUESKY_IAP` to use
```csharp
static void AppFlyerTrackingRevenueInAppPurchase(Product product)
```
Example
```csharp
void TrackingRevenue(Product productIAP)
{
AppsFlyerTrackingRevenue.AppFlyerTrackingRevenueInAppPurchase(productIAP);
}
```
#### App Tracking
- Tracking ad revenue (If calling `Track Revenue` through `App Tracking`, revenue will be tracked in all of Firebase Analytics, Adjust, and AppsFlyer)
```csharp
static void TrackRevenue(double value, string network, string unitId, string format, string adNetwork)
```
Example
```csharp
void TrackingRevenue()
{
AppTracking.TrackRevenue(...);
}
```
- Firebase tracking ATT Results IOS (App Tracking Transparency)
- Require: `"com.unity.ads.ios-support": "1.2.0"`
```csharp
static void FirebaseAnalyticTrackATTResult(int status)
```
Example
```csharp
void AppTrackingTransparency()
{
if (ATTrackingStatusBinding.GetAuthorizationTrackingStatus() ==
ATTrackingStatusBinding.AuthorizationTrackingStatus.NOT_DETERMINED)
{
ATTrackingStatusBinding.RequestAuthorizationTracking(AppTracking.FirebaseAnalyticTrackATTResult);
}
}
```