تتيح لك ميزة "تتبُّع الشبكة" إمكانية الاطّلاع على أنشطة الشبكة المرتبطة بحزمة تطوير البرامج (SDK) لإعلانات Google على الأجهزة الجوّالة. يمكن أن يكون ذلك مفيدًا في تصحيح أخطاء تنفيذ "إعلانات Google على الأجهزة الجوّالة".
من الأسباب الرئيسية لاستخدام ميزة "تتبُّع الشبكة" بدلاً من أدوات مثل Charles
Proxy هو أنّها متوافقة مع جميع إصدارات Android والأجهزة التي تعمل بإصدار متوافق من "خدمات Google Play". لا ينطبق ذلك على أدوات الخادم الوكيل بسبب التغييرات التي تم إجراؤها على الشهادات الموثوقة والشهادات المعتمدة منذ الإصدار Android 7.0.
يوضّح هذا الدليل كيفية تفعيل تتبُّع الشبكة لأغراض تصحيح الأخطاء.
تمكين التتبع
لتفعيل تتبُّع الشبكة، عليك تفعيل خيارات المطوّرين على جهازك.
بعد ذلك، شغِّل تطبيق إعدادات Google واختَر خيار الإعلانات:
حدِّد الخيار تفعيل ميزة تسجيل معلومات تصحيح أخطاء الإعلانات لعرض مربّع الحوار التالي:
انقر على حسنًا، وسيظهر لك معرّف إعلاني ينتهي بـ 10ca1ad1abe1:
يمكنك الآن الاطّلاع على جميع النتائج من تسجيل الشبكة في logcat. لفلترة ناتج الإعلانات على مستوى المعلومات فقط إلى كل من الشاشة والملف، أصدِر الأمر التالي:
adblogcat'*:S'Ads:IAds-cont:I|teelogs.txt
الناتج
يتم استخدام سجلّات وحدة التحكّم العادية المناسبة للنظام الأساسي لعرض سجلّات الشبكة.
تبدأ رسائل سجلّ وحدة التحكّم دائمًا بالسلسلة GMA Debug BEGIN أو GMA Debug CONTENT أو GMA Debug FINISH، لذا يمكنك البحث عن هذه السلاسل أو فلترتها. بالنسبة إلى كل سجلّ شبكة، تكون رسالة السجلّ الأولى هي GMA Debug BEGIN، ورسالة السجلّ الأخيرة هي GMA Debug FINISH، ويبدأ محتوى سجلّ الشبكة بـ GMA Debug CONTENT. إذا كان المحتوى طويلاً جدًا ولا يمكن عرضه في سطر واحد، يتم تقسيمه على عدة أسطر، ويبدأ كل سطر بالرمز GMA Debug CONTENT.
تاريخ التعديل الأخير: 2025-09-05 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-09-05 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eNetwork tracing provides insights into network activities related to the Google Mobile Ads SDK, aiding in debugging your implementation.\u003c/p\u003e\n"],["\u003cp\u003eIt's compatible with all Android versions and devices running supported Google Play services, unlike some proxy tools.\u003c/p\u003e\n"],["\u003cp\u003eEnable tracing through the Google Settings app after activating developer options on your device.\u003c/p\u003e\n"],["\u003cp\u003eNetwork logs, identifiable by strings like "GMA Debug BEGIN," are viewable in logcat and can be filtered for analysis.\u003c/p\u003e\n"],["\u003cp\u003eThe logs provide detailed information on network requests, responses, and response bodies in JSON format for comprehensive debugging.\u003c/p\u003e\n"]]],[],null,["Select platform: [Android](/ad-manager/mobile-ads-sdk/android/network-tracing \"View this page for the Android platform docs.\") [iOS](/ad-manager/mobile-ads-sdk/ios/network-tracing \"View this page for the iOS platform docs.\")\n\n\u003cbr /\u003e\n\nNetwork tracing lets you see network activities relating to the Google Mobile\nAds SDK. This can be useful in debugging your Google Mobile Ads implementation.\n\nA key reason to use network tracing instead of tools such as [Charles\nProxy](//www.charlesproxy.com) is that it works with **all** versions of\nAndroid and devices running a supported version of Google play services. This\nisn't the case with proxying tools due to changes in\n[trusted CAs and certificates in place since Android 7.0](//developer.android.com/about/versions/nougat/android-7.0#default_trusted_ca).\n\nThis guide explains how to enable network tracing for debugging purposes.\n\nEnable tracing\n\nTo enable network tracing, [enable developer\noptions](//developer.android.com/studio/debug/dev-options) for your device.\nThen, launch the **Google Settings** app and select the **Ads** option:\n\nAssuming you have developer options enabled and the feature is available, your\nscreen would then look like this:\n\nSelect the **Enable debug logging for ads** option to bring up following dialog:\n\nTap **OK** and you're then presented with an advertising identifier that ends\nwith `10ca1ad1abe1`:\n\nYou are now able to see all the output from the network logging in logcat. To\nfilter only Information-level Ads output to both the screen and a file, issue\nthe following command: \n\n adb logcat '*:S' Ads:I Ads-cont:I | tee logs.txt\n\nOutput\n\nStandard platform-appropriate console logs are used to output the network logs.\n\nConsole log messages always begin with the string `GMA Debug BEGIN`,\n`GMA Debug CONTENT`, or `GMA Debug FINISH`, so you can search or filter on these\nstrings. For each network log, the first log message is `GMA Debug BEGIN`,\nthe last log message is `GMA Debug FINISH`, and the network log content begins\nwith `GMA Debug CONTENT`. If content is too long to fit on a line, it is split\namong multiple lines, each line beginning with `GMA Debug CONTENT`.\n\nConsole output example \n\n I/Ads ( 4660): GMA Debug BEGIN\n I/Ads ( 4660): GMA Debug CONTENT {\"timestamp\":1510679993741,...}\n I/Ads ( 4660): GMA Debug FINISH\n\nJSON output example\n\nHere are some samples of JSON output from logcat:\n\nonNetworkRequest \n\n {\n \"timestamp\": 1510679994904,\n \"event\": \"onNetworkRequest\",\n \"components\": [\n \"ad_request_cf5ab185-3c3f-4f01-9f56-33da2ae110f2\",\n \"network_request_6553bc32-1d44-4f18-9dd0-5c183abbeb90\"\n ],\n \"params\": {\n \"firstline\": {\n \"uri\": \"http://googleads.g.doubleclick.net/pagead/ads?carrier=....\",\n \"verb\": \"GET\"\n },\n \"headers\": [\n {\n \"name\": \"User-Agent\",\n \"value\": \"Mozilla/5.0 (Linux; Android 5.0.2;...\"\n }\n ]\n }\n }\n\nonNetworkResponse \n\n {\n \"timestamp\": 1510679995295,\n \"event\": \"onNetworkResponse\",\n \"components\": [\n \"ad_request_cf5ab185-3c3f-4f01-9f56-33da2ae110f2\",\n \"network_request_6553bc32-1d44-4f18-9dd0-5c183abbeb90\"\n ],\n \"params\": {\n \"firstline\": {\n \"code\": 200\n },\n \"headers\": [\n {\n \"name\": null,\n \"value\": \"HTTP/1.1 200 OK\"\n },\n {\n \"name\": \"X-Google-DOS-Service-Trace\",\n \"value\": \"main:pagead\"\n },\n {\n \"name\": \"Content-Type\",\n \"value\": \"text/html; charset=UTF-8\"\n },\n ...\n ]\n }\n }\n\nonNetworkResponseBody \n\n {\n \"timestamp\": 1510679995375,\n \"event\": \"onNetworkResponseBody\",\n \"components\": [\n \"ad_request_cf5ab185-3c3f-4f01-9f56-33da2ae110f2\",\n \"network_request_6553bc32-1d44-4f18-9dd0-5c183abbeb90\"\n ],\n \"params\": {\n \"bodydigest\": \"B2520049D02F3C70A12AD1BC0D1B58A4\",\n \"bodylength\": 122395\n }\n }"]]