في الفترة الأخيرة، أطلق Firebase ميزة جديدة تحت اسم Phone Number Verification (PNV) لنظام Android، وهي تعد بثورة في طريقة التحقق من أرقام الهواتف — بدلاً من إرسال رمز SMS ويدخله المستخدم يدوياً، تتحقق الميزة من الرقم مباشرةً عبر شركة الاتصالات في ثانية أو ثلاث، بنقرة واحدة فقط.

الفكرة رائعة على الورق. لكن ما الواقع؟

---

ما هي Firebase PNV؟

هي خدمة تتيح للتطبيقات على Android التحقق من رقم هاتف المستخدم عن طريق التواصل المباشر مع شركة الاتصالات، دون الحاجة لرسائل SMS أو إدخال أي رمز. النتيجة: تجربة مستخدم أسرع وأكثر أماناً، وتقليل لحالات الاحتيال المرتبطة بـ OTP.

---

ما اكتشفه المطورون على أرض الواقع

شارك أحد المطورين في مجتمع Firebase تجربته مع هذه الميزة، وخرج بنتائج مثيرة للتأمل:

1. الوصول ليس متاحاً للجميع

الميزة حالياً في مرحلة Private Preview، أي أنك تحتاج لملء استمارة طلب انضمام وانتظار الموافقة. حتى لو أضفت الـ dependency في مشروعك:

    implementation("com.google.firebase:firebase-pnv:16.0.0-beta01")

لن يُكمل المشروع البناء. ليس خطأً في الكود — ببساطة لم تُمنح صلاحية الوصول بعد.

2. تتطلب خطة Blaze المدفوعة

لا يمكنك حتى التجربة دون الترقية إلى خطة Blaze (الدفع حسب الاستخدام). الجانب الإيجابي أن Firebase أعلنت عدم الفوترة خلال فترة المعاينة — لكن هذا مؤقت.

3. غموض في نموذج التسعير

نشأ جدل بين المطور وفريق Firebase حول متى تبدأ الفوترة بالضبط:

- الوثائق الرسمية تقول: "الفوترة تحدث عند إعادة الرقم لتطبيقك"

- دعم Firebase قال للمطور: "الفوترة فقط بعد التحقق الكامل"

- مدير المنتج في Firebase أوضح لاحقاً: الفوترة تحدث عند جلب الرقم، لأن Firebase تدفع لشركة الاتصالات في تلك اللحظة

تناقض واضح بين الوثائق والدعم والفريق نفسه — وهذا مقلق.

4. تغطية الناقلين شبه معدومة

تدعم الخدمة حالياً عدداً محدوداً جداً من شركات الاتصالات في مناطق معينة. علّق أحد المطورين بصراحة:

    "هذه الميزة غير قابلة للتطبيق على 99% من المستخدمين في الوقت الحالي"

رد مدير المنتج بأن التوسع في الناقلين قيد العمل، وأن الأولوية للدول الأعلى تأثيراً من ناحية الاحتيال.

5. تعارض في الـ Dependencies

المشكلة التقنية الأكبر: مكتبة PNV تُجبرك على استخدام إصدار محدد من:

    com.google.android.gms:play-services-auth

وهذا يمنعك من استخدام الـ API القديم الذي يتمتع بتغطية أوسع لأجهزة مختلفة. بمعنى آخر: تكسب ميزة التحقق عبر الناقل، وتخسر قدرتك على كشف الأرقام على كثير من الأجهزة.

---

ما هو مستقبل هذه الميزة؟

أوضح مدير المنتج في Firebase أن الخطوة القادمة هي إتاحة استخدام الخدمة بدون SDK عبر Android Credential Manager مباشرة، مما سيزيل مشكلة تعارض الـ dependencies.

Firebase PNV ميزة تستحق المتابعة — لكنها ليست جاهزة للبناء عليها الآن. إذا كنت تبحث عن حل موثوق للتحقق من أرقام الهواتف اليوم، فابقَ مع Firebase Auth التقليدي أو SMS OTP حتى تنضج هذه الميزة.

---

المصدر:

- نقاش في مجتمع Firebase على Reddit: https://www.reddit.com/r/Firebase/comments/1q1s93z/has_anyone_tried_firebase_phone_number/

- توثيق Firebase PNV الرسمي: https://firebase.google.com/docs/phone-number-verification/android/get-started