اہم نکات
Firebase ایک Backend-as-a-Service (BaaS) پلیٹ فارم ہے جو ایپلیکیشن ڈیولپمنٹ کے لیے تیار ٹولز فراہم کرتا ہے۔ Firebase ڈیولپرز کو شروع سے سرور انفراسٹرکچر بنانے کی ضرورت سے آزاد کرتا ہے — تجزیہ، ڈیٹا بیس، تصدیق، پش نوٹیفیکیشن اور بہت کچھ SDK کے ذریعے فوری طور پر دستیاب ہے۔
Google نے 2014 میں Firebase کو 100 ملین ڈالر میں خریدا اور اسے Google Cloud Platform کے ساتھ ضم کیا۔ Firebase 20 سے زیادہ مصنوعات پیش کرتا ہے جنہیں پروجیکٹ کی ضروریات کے مطابق ملایا جا سکتا ہے۔ زیادہ تر خدمات کی فراخدلانہ مفت حد (Spark Plan) ہے، اور ترقی کے لیے ادائیگی کے مطابق منصوبہ (Blaze Plan) دستیاب ہے۔
Firebase کا انضمام Firebase Console میں پروجیکٹ بنا کر اور کنفیگریشن فائل (iOS کے لیے GoogleService-Info.plist، Android کے لیے google-services.json) شامل کرکے شروع ہوتا ہے۔ Firebase iOS، Android، Flutter، React Native، Unity اور ویب ایپلیکیشنز کو سپورٹ کرتا ہے، جو اسے کسی بھی پلیٹ فارم کے لیے ایک عالمی حل بناتا ہے۔
Firebase Analytics ایک مفت تجزیہ ٹول ہے جو صارف کے رویے کے بارے میں ڈیٹا اکٹھا کرتا ہے۔ Firebase Analytics پورے پلیٹ فارم کا کور ہے — تجزیہ ڈیٹا کو دیگر تمام Firebase خدمات ہدف بنانے اور ذاتی بنانے کے لیے استعمال کرتی ہیں۔
Firebase Crashlytics ایپ کریش کو ٹریک کرنے کا سب سے مقبول ٹول ہے۔ Crashlytics ہر بار ایپ کریش ہونے پر خود بخود stack traces، لاگز اور ڈیوائس ڈیٹا اکٹھا کرتا ہے۔ رپورٹس کو خرابی کی قسم کے مطابق گروپ کیا جاتا ہے، جس سے سب سے اہم مسائل کی فوری شناخت ممکن ہوتی ہے۔
Crashlytics کسٹم لاگز، کیز اور غیر مہلک استثناء کو سپورٹ کرتا ہے۔ غیر مہلک استثناء ایپ کو کریش کیے بغیر ہینڈل شدہ خرابیوں کو ٹریک کرنے کی اجازت دیتے ہیں — مثال کے طور پر، ناکام API درخواست یا کاروباری منطق میں استثناء۔
Firebase Performance ایپ کی کارکردگی کی نگرانی کا ٹول ہے۔ Performance آغاز کے وقت، نیٹ ورک لیٹنسی، اسکرین رینڈرنگ اور HTTP درخواستوں کو ٹریک کرتا ہے۔ یہ ان رکاوٹوں کی نشاندہی کرتا ہے جو ایپ کو سست کرتی ہیں اور صارف کے تجربے کو خراب کرتی ہیں۔
Firebase Analytics کو Crashlytics کے ساتھ ضم کرنے سے نہ صرف یہ دیکھنے کی منفرد صلاحیت ملتی ہے کہ کیا کریش ہوا، بلکہ یہ بھی کہ کریش سے پہلے صارف نے کیا اقدامات کیے۔ IT Sectr پروڈکشن میں تیز رفتار بگ کی تشخیص کے لیے اس امتزاج کا استعمال کرتا ہے — پتہ لگانے سے لے کر درست کرنے تک کا وقت 3–4 گنا کم ہو جاتا ہے۔
Firebase دو NoSQL ڈیٹا بیس اور فائلوں کے لیے کلاؤڈ اسٹوریج فراہم کرتا ہے۔ Firestore اور Realtime Database کے درمیان انتخاب استعمال کے معاملے پر منحصر ہے — دونوں ڈیٹا بیس ریئل ٹائم میں ڈیٹا سنکرونائز کرتے ہیں لیکن ان کے فن تعمیر مختلف ہیں۔
| خصوصیت | Cloud Firestore | Realtime Database |
|---|---|---|
| ڈیٹا ماڈل | مجموعے اور دستاویزات (JSON آبجیکٹ) | ایک بڑا JSON درخت |
| استفسارات | مشترکہ، اشاریہ جات، ترتیب، فلٹرنگ | سادہ، ایک نوڈ سے ترتیب |
| توسیع | خودکار، کثیر علاقائی | ایک علاقہ، بینڈوڈتھ کی حدود |
| قیمت | پڑھنے/لکھنے/حذف کرنے کا حجم | ٹریفک اور اسٹوریج کا حجم |
| آف لائن موڈ | معاون (ڈسک کیش) | معاون (میموری کیش) |
| بہترین استعمال | چیٹ، سوشل نیٹ ورک، پیچیدہ استفسارات | چیٹ، گیمز، سادہ سنکرونائزیشن |
Cloud Storage فائلوں (تصاویر، ویڈیو، آڈیو) کے لیے اسٹوریج ہے۔ Firebase Storage خود بخود پیٹا بائٹس تک پھیل جاتا ہے اور کنکشن میں رکاوٹ کی صورت میں دوبارہ شروع کرنے کی صلاحیت کے ساتھ قابل اعتماد اپ لوڈ فراہم کرتا ہے۔ یہ محفوظ رسائی کے لیے Firebase Auth کے ساتھ ضم ہوتا ہے۔
لچکدار استفسارات اور توسیع پذیری کی وجہ سے نئے پروجیکٹس کے لیے Firestore کی سفارش کی جاتی ہے۔ Realtime Database تھوڑے ڈیٹا والی سادہ چیٹ اور گیمز کے لیے ایک اچھا انتخاب ہے۔ IT Sectr عام طور پر Firestore کو بنیادی ڈیٹا بیس کے طور پر اور Realtime Database کو صرف ریئل ٹائم تعاون کے لیے استعمال کرتا ہے۔
Firebase Authentication صارف کی تصدیق کے لیے ایک تیار حل ہے۔ Firebase Auth ای میل/پاس ورڈ، Google، Apple، Facebook، Twitter، GitHub، فون تصدیق اور گمنام لاگ ان کو سپورٹ کرتا ہے۔ تصدیق کا پورا عمل SDK کے ذریعے کلائنٹ سائیڈ پر لاگو کیا جاتا ہے۔
Google Sign-In سب سے مشہور تصدیق فراہم کرنے والوں میں سے ایک ہے۔ Google Sign-In کا انضمام Firebase Console کے ذریعے 15–30 منٹ میں ہوتا ہے اور اس کے لیے بیک اینڈ ڈیولپمنٹ کی ضرورت نہیں ہوتی۔ صارف اپنے Google اکاؤنٹ کا استعمال کرتے ہوئے ایک کلک میں لاگ ان ہوتے ہیں۔
Firebase Auth Admin SDK کے ذریعے بیک اینڈ فنکشنز بھی فراہم کرتا ہے۔ آپ سرور پر صارف بنا سکتے ہیں، پروفائل اپ ڈیٹ کر سکتے ہیں، سیشنز کا نظم کر سکتے ہیں اور ID ٹوکن کی تصدیق کر سکتے ہیں۔ Cloud Functions کے ساتھ انضمام حسب ضرورت تصدیقی منظرنامے بنانے کی اجازت دیتا ہے۔
Security Rules — ڈیٹا بیس اور اسٹوریج کے لیے Firebase کا سیکیورٹی میکانزم۔ رسائی کے قواعد اعلانیہ طور پر بیان کیے جاتے ہیں اور ہر درخواست پر چیک کیے جاتے ہیں۔ مثال کے طور پر: صرف اس صورت میں دستاویز پڑھنے کی اجازت دیں جب userId موجودہ تصدیق شدہ صارف کے برابر ہو۔
Firestore کے لیے ایک سادہ Security Rule کی مثال:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /users/{userId} {
allow read, write: if request.auth.uid == userId;
}
match /posts/{postId} {
allow read: if true;
allow write: if request.auth.uid == resource.data.authorId;
}
}
}
Firebase Cloud Messaging (FCM) پش نوٹیفیکیشن بھیجنے کی خدمت ہے۔ FCM روزانہ 500 بلین پیغامات تک پروسیس کرتا ہے اور iOS، Android اور Web کو سپورٹ کرتا ہے۔ پیغامات کو notification messages (خودکار ڈسپلے) اور data messages (ایپ میں پروسیسنگ) میں تقسیم کیا جاتا ہے۔
Firebase Remote Config آپ کو نیا ورژن شائع کیے بغیر ایپ کے رویے کو تبدیل کرنے کی اجازت دیتا ہے۔ Remote Config A/B ٹیسٹنگ، فیچرز کو آن/آف کرنے، انٹرفیس کو ذاتی بنانے اور متحرک پیرامیٹر تبدیلیوں (مثلاً، اشتہار کی فریکوئنسی، paywall متن) کے لیے استعمال ہوتا ہے۔
Firebase A/B Testing تجربات کرنے کا ایک ٹول ہے۔ مختلف پیرامیٹرز کے ساتھ ایپ کے دو ورژن بنائیں اور میٹرکس پر اثر کی پیمائش کریں (تبدیلی، برقراری، آمدنی)۔ ٹیسٹ خود بخود شماریاتی اہمیت کا حساب لگاتے ہیں اور فاتح کا تعین کرتے ہیں۔
Firebase Dynamic Links سمارٹ لنکس ہیں جو صارف کو ایپ میں صحیح جگہ پر لے جاتے ہیں۔ Dynamic Links اس وقت بھی کام کرتے ہیں جب ایپ انسٹال نہ ہو — اس صورت میں وہ اسٹور پیج پر جاتے ہیں اور انسٹالیشن کے بعد سیاق و سباق بحال کرکے ہدف اسکرین پر ری ڈائریکٹ کرتے ہیں۔
IT Sectr استقبالیہ اسکرین سے لے کر ادائیگی کے بہاؤ تک تمام اہم منظرناموں کو بہتر بنانے کے لیے Remote Config + A/B Testing کا امتزاج استعمال کرتا ہے۔ Remote Config پیرامیٹرز کو Firebase Console کے ذریعے ریئل ٹائم میں تبدیل کیا جا سکتا ہے — یہ روایتی ریلیز سائیکل میں دستیاب نہ ہونے والی لچک فراہم کرتا ہے۔
Firebase Test Lab خودکار ایپ ٹیسٹنگ کے لیے کلاؤڈ حل ہے۔ Test Lab آپ کے ٹیسٹ حقیقی Google آلات پر چلاتا ہے مختلف کنفیگریشنز (مختلف OS ورژن، اسکرین ریزولوشنز، زبانیں) میں۔ Espresso (Android)، XCUITest (iOS) اور Robo ٹیسٹ کو سپورٹ کرتا ہے۔
Firebase App Distribution ایپ کے بیٹا ورژن تقسیم کرنے کا پلیٹ فارم ہے۔ App Distribution Android کے لیے TestFlight کی جگہ لیتا ہے اور iOS کے لیے اسے مکمل کرتا ہے۔ آپ APK/AAB اپ لوڈ کر سکتے ہیں اور Crashlytics انضمام کے ذریعے ٹیسٹرز سے رائے حاصل کر سکتے ہیں۔
Test Lab اور App Distribution کا امتزاج ترقی کے تمام مراحل میں معیار کو یقینی بناتا ہے: حقیقی آلات پر خودکار ٹیسٹ سے لے کر حقیقی صارفین کے ساتھ بیٹا ٹیسٹنگ تک۔ CI/CD (GitHub Actions، Bitrise) کے ساتھ انضمام عمل کو مکمل طور پر خودکار بناتا ہے۔
| خدمت | مقصد | مفت حد | iOS | Android | Web |
|---|---|---|---|---|---|
| Analytics | صارف کے واقعات اکٹھا کرنا اور تجزیہ | لا محدود | + | + | + |
| Crashlytics | کریش رپورٹنگ | لا محدود | + | + | - |
| Firestore | NoSQL ڈیٹا بیس | 1 GB اسٹوریج | + | + | + |
| Realtime DB | ریئل ٹائم ڈیٹا بیس | 1 GB اسٹوریج | + | + | + |
| Auth | صارف کی تصدیق | لا محدود | + | + | + |
| Cloud Messaging | پش نوٹیفیکیشن | لا محدود | + | + | + |
| Remote Config | پیرامیٹر کا انتظام | لا محدود | + | + | + |
| Performance | کارکردگی کی نگرانی | لا محدود | + | + | + |
| Test Lab | کلاؤڈ ٹیسٹنگ | 10 ٹیسٹ/دن | + | + | - |
| App Distribution | بیٹا ورژن کی تقسیم | لا محدود | + | + | - |
| Cloud Functions | مانگ پر سرور کوڈ | 2 ملین کالز/مہینہ | + | + | + |
اکثر پوچھے گئے سوالات
Firebase کا فراخدلانہ حدود کے ساتھ مفت Spark Plan ہے — تجزیہ، کریش رپورٹنگ اور تصدیق مفت اور لا محدود ہے۔ Blaze Plan (ادائیگی کے مطابق) کی ضرورت حدود سے تجاوز کرنے پر ہوتی ہے — مثال کے طور پر، Firestore میں 1 GB سے زیادہ یا 2 ملین سے زیادہ Cloud Functions کالز۔ زیادہ تر اسٹارٹ اپ پہلے 1–2 سالوں میں مفت حدود سے تجاوز نہیں کرتے۔
زیادہ تر نئے پروجیکٹس کے لیے، Firestore تجویز کیا جاتا ہے۔ Firestore بہتر توسیع پذیری، زیادہ بھرپور استفسارات اور کثیر علاقائی نقل فراہم کرتا ہے۔ Realtime Database صرف سادہ ریئل ٹائم منظرناموں (تھوڑے ڈیٹا والی چیٹ، ریئل ٹائم گیمز) کے لیے منتخب کیا جانا چاہیے۔
جی ہاں، Firebase کھلے پروٹوکول استعمال کرتا ہے اور ڈیٹا برآمد کیا جا سکتا ہے۔ Firestore کا BigQuery اور Google Cloud Storage میں منظم برآمد ہے۔ پاس ورڈ ہیش برآمد کرکے تصدیق منتقل کی جا سکتی ہے۔ Cloud Functions کو کسی بھی بیک اینڈ فریم ورک پر آسانی سے دوبارہ لکھا جا سکتا ہے۔
Firebase کثیر سطحی تحفظ استعمال کرتا ہے: نقل و حمل کی سطح (TLS) اور اسٹوریج کی سطح (AES-256) پر خفیہ کاری۔ Security Rules اعلانیہ رسائی کنٹرول فراہم کرتی ہیں۔ Firebase SOC 1/2/3، ISO 27001 اور GDPR معیارات کی بھی تعمیل کرتا ہے۔
Google خدمات کے بلاک ہونے کی وجہ سے Firebase چین میں محدود طور پر کام کرتا ہے۔ چینی مارکیٹ کے لیے، مقامی متبادل استعمال کرنا ضروری ہے — مثال کے طور پر، FCM کے بجائے Alibaba Cloud Push، یا Firebase کے بجائے LeanCloud۔ Firebase Analytics اور Crashlytics بھی VPN کے بغیر دستیاب نہیں ہوں گے۔
خلاصہ
ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے
IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔