حل مشكلة Advertising ID في Android apps

x32x01
  • بواسطة x32x01 ||
وأنا برفع تحديث جديد لتطبيق على متجر Google Play، حصل موقف غريب شوية خلاني أراجع حساباتي 😅
فجأة اتسألت في Play Console سؤال مباشر:
هل تطبيقك بيستخدم Advertising ID؟
الإجابة كانت واضحة بالنسبة لي: لا
لأني ببساطة ما ضفتش أي SDK خاص بالإعلانات!
لكن اللي حصل بعد كده كان مفاجأة فعلًا…



ازاي ظهر Advertising ID Permission وأنا مش مستخدمه؟ 🤔​

وأنا براجع إعدادات التطبيق، اكتشفت إن فيه Permission موجود فعلًا:
com.google.android.gms.permission.AD_ID

ساعتها وقفت لحظة وقلت:
إزاي ده موجود وأنا ما استخدمتش أي إعلانات؟!

بدأت أراجع آخر التعديلات اللي عملتها، وكانت عبارة عن:
  • تحسينات على UI
  • إضافة Firebase Analytics
وهنا جت اللحظة المهمة…



هل Firebase Analytics هو السبب؟ 🤖​

الإجابة: أيوه
لما ضفت Firebase Analytics، وهو بالفعل SDK، حصلت حاجة مش واضحة لكثير من المطورين:
بعض الـ Libraries بتضيف Permissions تلقائيًا أثناء عملية الـ Build بدون ما تكون مكتوبة عندك بشكل مباشر!

الصدمة الحقيقية: Merged Manifest 😳​

عشان أتأكد، عملت مراجعة لملف: Merged Manifest
وهنا اكتشفت إن:
  • الـ SDK فعلًا بيضيف Advertising ID Permission
  • الإذن بيتضاف بشكل تلقائي أثناء الـ Build
وده معناه إن:
مش كل حاجة بتكتبها في الكود هي اللي بتحدد النتيجة النهائية!



الحل: إزالة Advertising ID Permission نهائيًا ✅​

بعد بحث شوية، لقيت حل فعال جدًا، وبيتم في خطوتين:

1. حذف الـ Permission يدويًا من Manifest​

XML:
<uses-permission
    android:name="com.google.android.gms.permission.AD_ID"
    tools:node="remove"/>
<meta-data
    android:name="google_analytics_adid_collection_enabled"
    android:value="false" />
الكود ده بيعمل حاجتين:
  • يمنع إضافة الـ Permission
  • يقفل استخدام Advertising ID داخل Firebase

2. مراجعة Merged Manifest بعد التعديل​

بعد كده لازم تعمل:
  • Rebuild للمشروع
  • تراجع ملف Merged Manifest
ولو عملت كل حاجة صح، هتلاقي إن:
الإذن اختفى تمامًا من الـ APK 🎉



ليه الموضوع ده مهم جدًا؟ 🔥​

الإجابة ببساطة:

1. التوافق مع سياسات Google Play​

لو جاوبت غلط على سؤال زي Advertising ID، ممكن:
  • التطبيق يترفض ❌
  • أو يتعرض لمشاكل قانونية

2. حماية خصوصية المستخدم​

وجود Permission زي ده ممكن:
  • يسبب قلق للمستخدمين
  • أو يخالف سياسات الخصوصية

3. تجنب مشاكل غير متوقعة​

أي Permission زيادة = خطر محتمل ⚠️



أهم نصيحة لأي Android Developer 💡​

خلي بالك دايمًا من النقطة دي:
مش كل Permission في التطبيق بيكون بإيدك… بعضهم بيجي من Libraries
عشان كده:
  • راجع دايمًا Merged Manifest
  • افحص الـ APK النهائي قبل الرفع
  • ما تعتمدش بس على الكود اللي كتبته



روابط مهمة 🔗​

لو حابب تشوف الكود أو تساهم، أي Feedback أو Contribution مرحب بيه جدًا 🙏



الخلاصة​

اللي حصل ده درس مهم جدًا في عالم Android Development:
  • الـ SDKs ممكن تضيف Permissions بدون علمك
  • لازم تراجع ناتج الـ Build بنفسك
  • قراراتك في Play Console لازم تكون مبنية على التطبيق النهائي مش الكود بس
خد الموضوع بجد، لأن تفاصيل صغيرة زي دي ممكن تأثر على قبول تطبيقك أو حتى نجاحه 🚀
منقول عن المطور / السيد مجدى
 

المواضيع ذات الصلة

x32x01
الردود
0
المشاهدات
969
x32x01
x32x01
x32x01
الردود
0
المشاهدات
1K
x32x01
x32x01
x32x01
الردود
0
المشاهدات
835
x32x01
x32x01
x32x01
الردود
0
المشاهدات
928
x32x01
x32x01
x32x01
الردود
0
المشاهدات
848
x32x01
x32x01
الدخول أو التسجيل السريع
نسيت كلمة مرورك؟

آخر المشاركات

إحصائيات المنتدى
المواضيع
2,443
المشاركات
2,655
أعضاء أكتب كود
576
أخر عضو
ahmed0sama_
عودة
أعلى