برچسب گذاری سمت سرور برای برنامه های تلفن همراه

شما می‌توانید برنامه‌های تلفن همراه خود را با استفاده از Google Analytics for Firebase SDK پیکربندی کنید تا با برچسب‌گذاری سمت سرور در Google Tag Manager کار کنند.

برچسب‌گذاری سمت سرور به شما امکان می‌دهد داده‌های خود را قبل از ارسال به محصولات مقصد مانند گوگل آنالیتیکس، مرحله‌بندی، ویرایش و تقویت کنید. درباره برچسب‌گذاری سمت سرور بیشتر بدانید.

برای تنظیم برچسب‌گذاری سمت سرور برای برنامه‌های تلفن همراه:

  1. برنامه خود را برای برچسب‌گذاری سمت سرور آماده کنید
  2. پیکربندی کانتینر سرور برای پشتیبانی از ترافیک موبایل
  3. تگ‌گذاری سمت سرور را در ویژگی GA4 خود فعال کنید

پیش‌نیازها

مرحله ۱: برنامه خود را برای برچسب‌گذاری سمت سرور آماده کنید

آی‌او‌اس

  1. ویژگی آپلود برچسب‌گذاری سمت سرور را فعال کنید و طرح URL سفارشی را برای حالت اشکال‌زدایی برچسب‌گذاری سمت سرور در فایل Info.plist تنظیم کنید. BUNDLE_ID را در زیر با شناسه بسته برنامه جایگزین کنید.

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    ...
            <key>CFBundleURLTypes</key>
            <array>
                    <dict>
                            <key>CFBundleTypeRole</key>
                            <string>None</string>
                            <key>CFBundleURLName</key>
                            <string>BUNDLE_ID</string>
                            <key>CFBundleURLSchemes</key>
                            <array>
                                    <string>tagmanager.sgtm.c.BUNDLE_ID</string>
                            </array>
                    </dict>
            </array>
            <key>GOOGLE_ANALYTICS_SGTM_UPLOAD_ENABLED</key>
            <true/>
    </dict>
    </plist>
    
  2. برای فعال کردن حالت اشکال‌زدایی یا پیش‌نمایش، در یک متد چرخه عمر، یک فراخوانی به Analytics.handleOpen(_:) اضافه کنید تا URL راه‌اندازی را ارسال کند.

    سویفت‌یو‌آی

    @main
    struct MyApplication: App {
      var body: some Scene {
        WindowGroup {
          ContentView()
            .onOpenURL { url in
              Analytics.handleOpen(url)
            }
        }
      }
    }
    

    صحنه رابط کاربری

    class SceneDelegate: UIResponder, UIWindowSceneDelegate {
    func scene(_ scene: UIScene, willConnectTo session: UISceneSession,
            options connectionOptions: UIScene.ConnectionOptions) {
    ...
        if let urlContext = connectionOptions.urlContexts.first {
            let url = urlContext.url
            Analytics.handleOpen(url)
        }
      }
    }
    

    برای برنامه‌هایی که از SwiftUI یا UIScene استفاده نمی‌کنند، هیچ اقدامی لازم نیست. SDK آدرس راه‌اندازی (launch URL) را از ApplicationDidFinishLaunchingNotification دریافت می‌کند.

اندروید

  1. آخرین نسخه Google Analytics for Firebase SDK را نصب کنید.
  2. با اضافه کردن موارد زیر به فایل AndroidManifest.xml برنامه، sGTM را فعال کنید.

    <!-- Preview Activity to enable preview mode –->
      <activity
          android:name="com.google.firebase.analytics.GoogleAnalyticsServerPreviewActivity"
          android:exported="true"
          android:noHistory="true" >
        <intent-filter>
          <action android:name="android.intent.action.VIEW" />
          <category android:name="android.intent.category.DEFAULT" />
          <category android:name="android.intent.category.BROWSABLE" />
          <data android:scheme="tagmanager.sgtm.c.<APP_PACKAGE_ID>" />
        </intent-filter>
      </activity>
    
    <!-- Meta-data that enables uploads to sGTM –->
      <meta-data android:name="google_analytics_sgtm_upload_enabled" android:value="true" />
    

مرحله ۲: پیکربندی کانتینر سرور برای پشتیبانی از ترافیک موبایل

بخش زیر فرض می‌کند که شما یک پیاده‌سازی برچسب‌گذاری سمت سرور دارید و با مفاهیم آن آشنا هستید. اگر در برچسب‌گذاری سمت سرور تازه‌کار هستید، می‌توانید دوره اصول برچسب‌گذاری سمت سرور را بگذرانید.

کلاینت گوگل آنالیتیکس: GA4 (اپلیکیشن) را راه‌اندازی کنید

کلاینت نوعی منبع Tag Manager است که انواع خاصی از درخواست‌های ورودی را رهگیری می‌کند و رویدادهایی را ایجاد می‌کند که می‌توانند به مقصدی مانند Google Analytics 4 منتقل شوند. در این حالت، درخواست HTTP یک رویداد Google Analytics 4 است، بنابراین باید کلاینت داخلی Google Analytics: GA4 (App) را پیکربندی کنید. شما فقط به یک کلاینت GA4 برای هر منبع داده مانند GA SDK و وب‌سایت نیاز دارید. درباره نحوه کار کلاینت‌ها بیشتر بدانید.

  1. در کانتینر سرور خود، به بخش کلاینت‌ها (Clients) بروید و روی «جدید» (New) کلیک کنید.
  2. روی پیکربندی کلاینت کلیک کنید، سپس Google Analytics: GA4 (App) را انتخاب کنید.

    تصویری که گزینه کلاینت گوگل آنالیتیکس: GA4 (اپ) را در تگ منیجر نشان می‌دهد

  3. یک نام برای کلاینت خود وارد کنید و روی ذخیره کلیک کنید.

پیکربندی گوگل آنالیتیکس: تگ GA4

برای ارسال داده‌ها به گوگل آنالیتیکس، باید یک تگ Google Analytics: GA4 در کانتینر سرور ایجاد کنید. کلاینت درخواست HTTP ورودی را به یک شیء داده رویداد تجزیه می‌کند. این تگ، این شیء داده رویداد را دریافت می‌کند، آن را به فرمت صحیح نگاشت می‌کند و سپس آن را به گوگل آنالیتیکس ۴ ارسال می‌کند.

  1. در کانتینر سرور خود، به بخش برچسب‌ها (Tags) بروید و روی «جدید» (New) کلیک کنید.
  2. روی پیکربندی برچسب کلیک کنید، سپس Google Analytics: GA4 را انتخاب کنید.

    تصویری که تنظیمات تگ گوگل آنالیتیکس: GA4 را در تگ منیجر نشان می‌دهد.

به طور پیش‌فرض، این تگ تمام فیلدها و پارامترهای مربوطه را از شیء داده رویداد ایجاد شده توسط کلاینت به ارث می‌برد:

  • اگر درخواست ورودی Google Analytics 4 از طریق کلاینت Google Analytics: GA4 (App) عبور کند، تگ، شناسه برنامه و پارامترهای رویداد را به ارث می‌برد.
  • اگر درخواست‌های ورودی Google Analytics 4 از طریق کلاینت Google Analytics: GA4 (Web) عبور کنند، تگ، شناسه اندازه‌گیری و پارامترهای رویداد را به ارث می‌برد.

تنظیم محرک‌ها برای ترافیک موبایل

سپس باید مشخص کنید که چه زمانی تگ GA4 باید فعال شود. کلاینت Google Analytics: GA4 (App) درخواست ورودی را به یک شیء داده رویداد تجزیه می‌کند و تگ مقادیر آن را به ارث می‌برد. بنابراین، معمولاً می‌خواهید هر زمان که کلاینت GA4 درخواست را دریافت کرد، تگ فعال شود.

برای تنظیم محرک‌ها:

  1. در تنظیمات برچسب، روی فعال‌سازی کلیک کنید.
  2. برای ایجاد یک تریگر جدید، روی آیکون + در گوشه بالا سمت راست کلیک کنید.
  3. برای انتخاب نوع تریگر ، روی Trigger Configuration کلیک کنید.
  4. از لیست، گزینه‌ی «سفارشی» یا «رویداد سفارشی» را انتخاب کنید.

    • نوع تریگر سفارشی ، به طور پیش‌فرض، زمانی که هر رویدادی توسط یک کلاینت سمت سرور ایجاد می‌شود، تگ را فعال می‌کند.
    • نوع تریگر رویداد سفارشی می‌تواند برای فعال کردن تگ روی یک نام رویداد خاص یا رویدادی که با یک الگوی عبارت منظم مطابقت دارد، استفاده شود.
  5. برای فعال کردن لیست شرایط فعال‌سازی این تریگر، مانند فعال شدن فقط روی داده‌های رویدادهای موبایل یا وب، گزینه‌ی «برخی رویدادها» را انتخاب کنید.

    1. خواهید دید که نام رویداد از پیش انتخاب شده است. روی آن انتخابگر کلیک کنید و از لیست، گزینه‌ی «انتخاب متغیر داخلی» را انتخاب کنید.
    2. برای بازگرداندن خودکار نام کلاینتی که رویداد را ایجاد کرده است، گزینه Client Name را انتخاب کنید.
    3. از نام کلاینتی که قبلاً پیکربندی کرده‌اید برای تنظیم شرط مربوطه استفاده کنید. تریگر شما باید به شکل زیر باشد:

      تصویری که صفحه پیکربندی تریگر را پس از ایجاد تریگر در تگ منیجر نشان می‌دهد

  6. تریگر را ذخیره کنید و یک نام توصیفی وارد کنید. برای مثال، می‌توانید از «همه رویدادهای برنامه GA4» استفاده کنید.

  7. اکنون باید به تنظیمات برچسب با تریگر جدید برگردید. برچسب را ذخیره کنید و یک نام توصیفی، مثلاً "GA4" وارد کنید. برچسب شما باید به این شکل باشد:

    تصویری که تگ GA4 را پس از تنظیم یک تریگر نشان می‌دهد

پیش‌نمایش کانتینر شما

شما می‌توانید قبل از انتشار تغییرات، از گوگل تگ منیجر برای پیش‌نمایش و اشکال‌زدایی کانتینر سرور خود استفاده کنید. توجه داشته باشید که پیش‌نمایش تا زمانی که برچسب‌گذاری سمت سرور را در ویژگی GA4 خود فعال نکرده باشید، کار نخواهد کرد.

برای اینکه درخواست‌های برنامه شما پیکربندی پیش‌نمایش را فعال کنند، باید:

  1. در حالی که در کانتینر سرور گوگل تگ منیجر خود هستید، پیش‌نمایش را انتخاب کنید.
  2. روی نماد «اقدامات بیشتر » ⋮ در بالا سمت راست کلیک کنید و «ارسال درخواست از یک برنامه» را انتخاب کنید.
  3. شناسه برنامه خود را وارد کنید و روی ایجاد کد QR کلیک کنید.

    تصویری که هنگام کلیک روی «ایجاد کد QR» یک کد QR را نشان می‌دهد

  4. کد QR را با برنامه دوربین تلفن خود اسکن کنید. طبق معمول برای ایجاد رویدادهای پیش‌نمایش، با برنامه خود تعامل داشته باشید.

  5. برای بستن کادر محاوره‌ای، روی تأیید کلیک کنید.

کانتینر خود را منتشر کنید

پس از تأیید تغییرات، کانتینر را منتشر کنید تا این تغییرات برای همه ترافیک اعمال شود. درباره انتشار، نسخه‌ها و تأییدیه‌ها بیشتر بدانید.

مرحله ۳: تگ‌گذاری سمت سرور را در ویژگی GA4 خود فعال کنید

  1. در بخش تنظیمات گوگل آنالیتیکس ۴ خود، به بخش مدیریت (Admin) بروید.
  2. جریان‌های داده باز.
  3. پیکربندی جریان برنامه خود را از برگه iOS یا Android انتخاب کنید.

    تصویری که صفحه جریان‌های داده را در GA4 نشان می‌دهد

  4. روی پیکربندی تنظیمات SDK و سپس پیکربندی مدیریت برچسب سمت سرور کلیک کنید.

    تصویری که گزینه پیکربندی تگ منیجر سمت سرور را در GA4 نشان می‌دهد

  5. برای فعال کردن SDK جهت ارسال داده‌های اندازه‌گیری به URL کانتینر سرور:

    1. گزینه ارسال داده به کانتینر مدیریت برچسب سمت سرور را فعال یا غیرفعال کنید.
    2. آدرس URL کانتینر سرور را کپی کنید. می‌توانید این آدرس را در گوگل تگ منیجر خود با رفتن به مسیر Admin > Container Settings > Server container URLs پیدا کنید.
    3. درصد ترافیکی را که می‌خواهید به کانتینر سرور هدایت کنید، انتخاب کنید. می‌توانید گزینه‌ای زیر ۱۰۰٪ را انتخاب کنید تا قبل از استفاده از برچسب‌گذاری سمت سرور برای تمام ترافیک، تنظیمات و پیکربندی سرور خود را تأیید کنید.

    تصویری که صفحه پیکربندی GA4 را نشان می‌دهد

  6. روی ذخیره کلیک کنید. SDK آدرس اینترنتی (URL) به‌روزرسانی‌شده‌ی کانتینر سرور را بازیابی کرده و داده‌های اندازه‌گیری را به آن هدایت می‌کند.

محدودیت‌های شناخته‌شده

  • برای برنامه‌های اندروید:

    • خریدهای درون‌برنامه‌ای که به‌طور خودکار وارد سیستم می‌شوند، به ادغام با بخش مدیریت گوگل پلی متکی هستند و به کانتینر سرور ارسال نمی‌شوند.
    • رویداد app_remove در اندروید گزارش نخواهد شد.
  • اتصال جریان‌های داده برنامه شما در گوگل آنالیتیکس به حساب گوگل ادز شما همچنان برای اطمینان از وارد شدن داده‌ها و تبدیل‌های SDK شما به گوگل ادز ضروری است. برچسب‌گذاری سمت سرور هیچ ادغام ذاتی بین SDK و گوگل ادز شما ارائه نمی‌دهد.

رابط برنامه‌نویسی کاربردی (API)

شما می‌توانید از API مربوط به Tag Manager REST برای دسترسی به داده‌های پیکربندی Tag Manager استفاده کنید. برای اطلاعات بیشتر در مورد API: