2 Commits ef08222c73 ... 747a170138

Autor SHA1 Mensaje Fecha
  zhejiushizhuce 747a170138 追加解析 hace 1 año
  PPPPPPP 4214184377 修正firebase hace 1 año
Se han modificado 3 ficheros con 25 adiciones y 10 borrados
  1. 10 0
      src/Global.js
  2. 2 4
      src/tracking/FirebaseAnalytics.js
  3. 13 6
      src/tracking/TrackAll.js

+ 10 - 0
src/Global.js

@@ -182,6 +182,16 @@ global.checkUrlvars=()=>{
             localStorageSet("urlvars",urlvars);
         }
     }
+    else
+    {
+        let json=getUrlParamsAsJsonManual();
+        if (json!=null){
+            let orijson=JSON.parse(urlvars);
+            orijson=Object.assign({},orijson,json);
+            urlvars=JSON.stringify(orijson);
+            localStorageSet("urlvars",urlvars);
+        }
+    }
     return urlvars;
 }
 global.getUrlvars=()=>{

+ 2 - 4
src/tracking/FirebaseAnalytics.js

@@ -15,7 +15,7 @@ class FirebaseAnalytics {
         this.firebaseAppId = firebaseAppId;
         this.clientId = clientId;
         // 构造上报的 URL,参考 Measurement Protocol 规范
-        this.endpoint = `https://www.google-analytics.com/mp/collect?measurement_id=${this.measurementId}&api_secret=${this.apiSecret}`;
+        this.endpoint = `https://www.google-analytics.com/mp/collect?firebase_app_id=${this.firebaseAppId}&api_secret=${this.apiSecret}`;
     }
 
     /**
@@ -28,8 +28,6 @@ class FirebaseAnalytics {
         // 构造 Measurement Protocol 所要求的 payload
         const payload = {
             app_instance_id: this.clientId,
-            // 可选:将 firebaseAppId 传递给后端(注意:文档中可能以 app_instance_id 标识)
-            firebase_app_id: this.firebaseAppId,
             events: [
                 {
                     name: eventName,
@@ -60,7 +58,7 @@ class FirebaseAnalytics {
 // Initialize Firebase Analytics
 const initializeFirebaseAnalytics = (measurementId, apiSecret, firebaseAppId='',clientId='') => {
     if (!firebaseAnalyticsInstance) {
-        firebaseAnalyticsInstance = new FirebaseAnalytics(measurementId, apiSecret, firebaseAppId,clientId);
+        firebaseAnalyticsInstance = new FirebaseAnalytics({measurementId, apiSecret, firebaseAppId,clientId});
         console.log('Firebase Analytics initialized');
     } else {
         console.warn('Firebase Analytics is already initialized');

+ 13 - 6
src/tracking/TrackAll.js

@@ -2,7 +2,8 @@ import { fb_trackEvent, fb_trackPageView, fb_setPixelID } from "./FacebookPixel"
 import { gg_setTagID, gtrack } from "./GoogleAnalytics";
 import { kwai_setPixelID, kwai_trackEvent } from "./KwaiPixel";
 import { loadInfoNew } from "./ApkPromote";
-import { initializeFirebaseAnalytics, fa_trackEvent } from "./FirebaseAnalytics"; // Import Firebase functions
+import { initializeFirebaseAnalytics, fa_trackEvent } from "./FirebaseAnalytics";
+import {localStorageGet, localStorageSet} from "@utils/helpers"; // Import Firebase functions
 
 export const initTrackAll = (pf_type, pf_id, ex_id) => {
     if (pf_type === "fb") {
@@ -20,12 +21,18 @@ export const initTrackAll = (pf_type, pf_id, ex_id) => {
         // Initialize Firebase Analytics
         let vars=global.getUrlvars()
         if(typeof vars=="string")vars=JSON.parse(vars)
-        if(!!vars.measurement_id) {
-            const measurementId = vars.measurement_id; // Assuming pf_id is measurementId
+
+        if(!vars.firebase_app_id) {
+            vars=JSON.parse(localStorageGet("myfire", ""));
+        }
+
+        if(!!vars.firebase_app_id) {
+            localStorageSet("myfire",JSON.stringify(vars))
+            // const measurementId = vars.measurement_id||""; // Assuming pf_id is measurementId
             const apiSecret = vars.api_secret; // Assuming ex_id is apiSecret
             const firebaseAppId = vars.firebase_app_id; // Replace with your Firebase App ID
             const clientId = vars.app_instance_id; // Replace with your Firebase App ID
-            initializeFirebaseAnalytics(measurementId, apiSecret, firebaseAppId, clientId);
+            initializeFirebaseAnalytics("", apiSecret, firebaseAppId, clientId);
         }
     }
 
@@ -147,10 +154,10 @@ export const trackEvent = (eventName, params) => {
             if (data.first) {
                 if (!!data.isd0) {
                     fa_trackEvent('first_purchase_today', addParams);
+                    // fa_trackEvent('first_purchase', addParams);
                 }
-                kwai_trackEvent('first_purchase', addParams);
             } else if (!data.isd0) {
-                kwai_trackEvent("purchase_again", addParams);
+                fa_trackEvent("purchase_again", addParams);
             }
             fa_trackEvent('purchase',addParams );
         } else if (eventName === "CompleteRegistration") {