Fastlane — یہ کیا ہے، اوزار اور موبائل ایپ بلڈ کی خودکاری

مصنف: IT Sectr اشاعت: 2026-04-14 مطالعے کا وقت: 10 منٹ

Fastlane ایک آپن سورس ٹول ہے جو iOS اور Android ایپلیکیشنز کی بلڈ، ٹیسٹنگ اور اشاعہ کو خودکار کرتا ہے۔ دستخط، بلڈ اور اسٹور میں اپ لوڈ کے لیے درجنوں کمانڈز کو دستی طور پر چلانے کے بجائے، ڈیولپر پورے عمل کو Fastfile میں تیار کرتا ہے اور اسے ایک ہی کمانڈ سے چلاتا ہے۔ Fastlane Docs, 2025 کے مطابق، یہ ٹول دنیا بھر میں 1.5 ملین سے زائد مناصبوں میں استعمال ہوتا ہے۔ Fastlane App Store Connect، Google Play Console اور کوڈ دستخط کے نظاموں کے ساتھ کام کرنے کے لیے یوٹیلٹیز کو اکٹھا کرتا ہے۔

اہم نکات

  • Fastlane — iOS اور Android بلڈ اور تقسیم کے لیے آپن سورس خودکار کا اوزار
  • Actions — App Store، Google Play، دستخط اور ٹیسٹ کے لیے مضموعی کمانڈز
  • Lanes — Fastfile میں خودکار کے مناظر جو actions کی ترتیب کو اکٹھا کرتے ہیں
  • Match — iOS کے لیے سرٹفکیٹس اور پروویشننگ پروفائلز کا نظام انتظام
  • اوزار — scan (ٹیسٹ)، gym (بلڈ)، deliver (اپ لوڈ)، snapshot (اسکرین شاٹس)

Fastlane کیا ہے اور یہ موبائل بلڈز کو کیسے خودکار کرتا ہے

Fastlane ایک موبائل بلڈ خودکاری کا اوزار ہے، جو Ruby میں لکھا گیا ہے اور MIT لائسنس کے تحت تقسیم کیا گیا ہے۔ یہ موبائل ڈیولپر کے روٹین کاموں کو خودکار کرتا ہے: ایپ کی بلڈ، ٹیسٹ چلانا، اسکرین شاٹس بنانا، کوڈ پر دستخط کرنا اور بائنریز کو App Store یا Google Play میں اپ لوڈ کرنا۔ 15–20 دستی کمانڈز کے بجائے، ڈیولپر منظر کے نام سے ایک ہی fastlane کمانڈ چلاتا ہے۔

Fastlane Xcode یوٹیلٹیز (xcodebuild، xcrun) اور Android SDK (gradlew، apksigner، bundletool) کے اوپر ایک لیپر کے طور پر کام کرتا ہے، دونوں پلیٹ فارمز کے لیے ایک مشترک انٹر فیس فراہم کرتا ہے۔ یہ ان ٹیموں کے لیے خاص طور پر قابل قدر ہے جو ایک ہی ایپ کے iOS اور Android ورشنز کو برقرار رکھتے ہیں — ایک جیسی Fastfileز پرامیٹرز میں حد ادنیں فرقوں کے ساتھ دونوں پلیٹ فارمز کے لیے بلڈز کو تیار کر سکتی ہیں۔

GitHub کے مطابق، Fastlane کے 39,000 سے زائد سٹارز ہیں اور یہ موبائل ڈیولپمنٹ میں خودکاری کا معیار ہے۔ یہ ٹول کمیونیٹی اور Google کے ذریعہ برقرار ہے — Fastlane Firebase میں Android ایپلیکیشنز کو Google Play Console پر تقسیم کرنے کے لیے تجویز کردہ طریقے کے طور پر ضم کیا گیا ہے۔

Fastlane کا آریٹیکچر: Actions، Lanes اور اوزار

Fastlane کا آریٹیکچر تین سطحوں پر مبنی ہے: actions (بنیادی کمانڈز)، lanes (مناظر) اور اوزار (مختص یوٹیلٹیز)۔ Actions Fastlane کے انفرادی فنکشنز ہیں، ہر ایک ایک مختص عمل کرتا ہے: اسکرین شاٹ بنانا، IPA بنانا، TestFlight میں اپ لوڈ کرنا۔ Lanes Fastfile میں تیار کردہ ایک ترتیبی منظر میں کئی actions کو اکٹھا کرتے ہیں۔

Fastlane Actions

Actions Fastlane کے بلڈنگ بلاکس ہیں۔ ہر action پیرامیٹرز لیتا ہے اور ایک ہی کام کرتا ہے۔ مثال کے طور پر، gym action iOS ایپ بناتا ہے، scan ٹیسٹ چلاتا ہے، pilot بلڈ کو TestFlight میں اپ لوڈ کرتا ہے۔ Fastlane میں 200 سے زائد مضموعی actions ہیں، ہر ایک کی دستاویز fastlane action [نام] کمانڈ کے ذریعہ دستیاب ہے۔

اگر مضموعی actions کافی نہیں ہیں تو ڈیولپر Ruby میں custom action بنا سکتا ہے اور اسے Fastfile میں منسلک کر سکتا ہے۔ کسٹم actions کو Fastlane پلاگنز کے ذریعہ تقسیم کیا جاتا ہے، جو Rubygems پر شائع کیے جاتے ہیں اور پروجیکٹ کے روٹ میں FastfilePlugin فائل کے ذریعہ انسٹال کیے جاتے ہیں۔

Lanes اور ان کی ترکیب

Lane ایک نامزد خودکار کا منظر ہے جو کئی actions کو ایک منطقی ترتیب میں اکٹھا کرتا ہے۔ Lane دیگر لینز (private lanes) کو بلا سکتی ہے، پیرامیٹرز منتقل کر سکتی ہے اور غلطیوں کو ہینڈل کر سکتی ہے۔ یہ مناظر کا درجہ بندی تشکیل دےنے کی اجازت دیتا ہے: بنیادی بلڈ لین، تعینات لین، مکمل CI/CD سائکل لین۔

Fastlane کے اہم اوزار: scan، gym، match، deliver

Fastlane میں مختص اوزاروں کا ایک سیٹ شامل ہے، ہر ایک موبائل خودکاری کے ایک مختص کام کو حل کرتا ہے۔ اوزار lanes کے اندر actions کے طور پر یا سیدھے کمانڈ لائن سے چلائے جاتے ہیں۔ iOS اور Android کے لیے بنیادی CI/CD ضروریات کو پورا کرنے والے چار اہم اوزاروں کا جائزہ لیتے ہیں۔

اوزارمقصدکمانڈ
scaniOS سمیولیٹر پر Unit اور UI ٹیسٹ چلاناfastlane scan
gymiOS کے لیے IPA یا APP فائل بناناfastlane gym
matchGit کے ذریعہ سرٹفکیٹس اور پروویشننگ پروفائلز کی مطابقتfastlane match
deliverApp Store Connect میں بائنری اور میٹا ڈیٹا اپ لوڈ کرناfastlane deliver
snapshotمختلف آلات پر خودکار اسکرین شاٹس بناناfastlane snapshot

Scan Xcode ٹیسٹ کو چلانا آسان بناتا ہے، مناسب سمیولیٹر کو خودکار انتخاب کرتا ہے اور ریپورٹ کو فارمیٹ کرتا ہے۔ Gym ایپ کو بہترین کمپائل فلیگز کے ساتھ بناتا ہے اور مختلف بلڈ قسموں (development، adhoc، appstore) کے لیے exportOptions.plist کو سپورٹ کرتا ہے۔ Deliver صرف بائنری ہی نہیں بلکہ اسکرین شاٹس، تفصیل، ورشنز اور قیمتیں ایک ہی میٹا ڈیٹا فائل کے ذریعہ اپ لوڈ کرنے کی اجازت دیتا ہے۔

Match اوزار خاص توجہ کا مستحق ہے — یہ ٹیم میں iOS سرٹفکیٹس کے ذخیرہ اور مطابقت کے مسئلے کو حل کرتا ہے۔ Match سرٹفکیٹس اور پروویشننگ پروفائلز کو ایک Git ریپوزیٹری میں خفیہ کرکے ذخیرہ کرتا ہے، اور ڈیولپرز fastlane match چلانے پر خودکار انہیں حاصل کرتے ہیں۔ یہ ہر ورک اسٹیشن کی دستی ترتیب کو ختم کرتا ہے۔

Snapshot: اسکرین شاٹس بنانا

Snapshot مختلف آلات اور زبانوں میں موبائل ایپ کے اسکرین شاٹس خودکار طور پر بنانے کا اوزار ہے۔ Snapshot iOS سمیولیٹرز پر UI ٹیسٹ چلاتا ہے اور ٹیسٹ کے ہر مرحلے پر اسکرین کیپچر کرتا ہے۔ نتائج fastlane/screenshots ڈائریکٹری میں محفوظ کیے جاتے ہیں اور deliver کے ذریعہ App Store Connect پر اپ لوڈ کیے جا سکتے ہیں۔

Android کے لیے screengrab Android ایمیولیٹرز پر ایسا ہی کام کرتا ہے۔ دونوں اوزار مقامی کرنے کو سپورٹ کرتے ہیں — ہر زبان کے لیے اسکرین شاٹس بنائے جاتے ہیں، جو کئی زبانوں کے ایپ اسٹورز میں اشاعہ کے لیے مواد کی تیاری کو آسان بناتا ہے۔

iOS ایپلیکیشنز کے لیے Fastlane کی ترتیب

iOS مناصبوں کے لیے Fastlane کو Gemfile (fastlane gem کی انسٹالیشن) اور fastlane ڈائریکٹری میں Fastfile کے ذریعہ ترتیب دیا جاتا ہے۔ ابتدائی ترتیب fastlane init کمانڈ سے کی جاتی ہے، جو بنیادی ڈائریکٹری کا چار چوب بناتا ہے، App Store Connect کے ڈیٹا کی درخواست کرتا ہے اور اہم laneز کے ساتھ Fastfile کا سانچہ تیار کرتا ہے۔

iOS کے لیے اهم کمانڈ fastlane match ہے، جو سرٹفکیٹس اور پروویشننگ پروفائلز حاصل کرنے کے لیے پہلے چلایا جانا چاہیے۔ کامیاب دستخط کے بعد، Fastlane ایپ بنا سکتا ہے (gym)، ٹیسٹ چلا سکتا ہے (scan) اور بائنری اپ لوڈ کر سکتا ہے (pilot یا deliver)۔

ruby
# iOS ایپ کے لیے Fastfile
default_platform(:ios)

lane :build do
  cocoapods
  scan(scheme: 'App', devices: ['iPhone 15'])
  gym(scheme: 'App', export_method: 'app-store')
end

lane :deploy do
  match(type: 'appstore')
  build
  pilot(skip_waiting_for_build_processing: true)
  slack(message: 'نئی ورشن TestFlight میں اپ لوڈ کی گئی')
end

TestFlight کے ساتھ کام کرنے کے لیے pilot action استعمال کریں — یہ IPA اپ لوڈ کرتا ہے اور ٹیسٹرز کا انتظام کرتا ہے۔ Fastlane upload_to_testflight (pilot کا مترادف) کو سپورٹ کرتا ہے اور Apple کے بلڈ پر کارروائی کا انتظار خودکار طور پر کرتا ہے، جو 5 سے 30 منٹ تک ہو سکتا ہے۔

Android ایپلیکیشنز کے لیے Fastlane کی ترتیب

Android مناصبوں کے لیے Fastlane ایسے ہی ترتیب دیا جاتا ہے، لیکن Xcode کے اوزاروں کے بجائے Gradle اور Android SDK استعمال کیے جاتے ہیں۔ Android کے لیے Fastlane APK اور AAB بلڈ، apksigner یا jarsigner کے ذریعہ دستخط، آلاتی ٹیسٹ چلانا اور Supply action کے ذریعہ Google Play Console میں اپ لوڈ کرنے کو سپورٹ کرتا ہے۔

اهم فرق یہ ہے کہ Android بلڈ کو match کے ذریعہ سرٹفکیٹ انتظام کی ضرورت نہیں ہے (Android دستخط الگ سے Keystore کے ذریعہ منتظم کیا جاتا ہے)۔ Android کے لیے Fastlane کسی بھی Gradle کام کو چلانے کے لیے gradle action اور Google Play کے ساتھ کام کرنے کے لیے supply action استعمال کرتا ہے۔

ruby
# Android ایپ کے لیے Fastfile
default_platform(:android)

lane :build do
  gradle(task: 'clean assembleRelease')
  gradle(task: 'testReleaseUnitTest')
end

lane :deploy do
  build
  supply(
    track: 'internal',
    aab: 'app/build/outputs/bundle/release/app-release.aab'
  )
end

Google Play Console کے ساتھ کام کرنے کے لیے Google Play API تک رسائی کے ساتھ ایک Google Cloud سروس اکاؤنٹ درکار ہے۔ Fastlane سروس اکاؤنٹ کی JSON کنجی کو SUPPLY_JSON_KEY ماحولی متغیر یا supply action میں json_key پیرامیٹر کے ذریعہ قبول کرتا ہے۔ اشاعہ ٹریک internal، alpha، beta یا production ہو سکتا ہے۔

Fastlane کا CI/CD سیسٹمز کے ساتھ انضمام

Fastlane کسی بھی CI/CD سیسٹم کے ساتھ ضم ہو سکتا ہے جو Ruby اسکرپٹس چلا سکتا ہے: Jenkins، Travis CI، GitHub Actions، GitLab CI، Bitrise اور CircleCI۔ انضمام خود میں fastlane gem کو انسٹال کرنا اور pipeline کے script مرحلے میں fastlane [lane_name] کمانڈ چلانا شامل ہے۔

CI/CD کے لیے حساس ڈیٹا کو محفوظ کرنے کے لیے ماحولی متغیرات کی ترتیب اهم ہے: MATCH_PASSWORD (سرٹفکیٹ خفیہ کا پاسورڈ)، FASTLANE_USER (Apple ID)، FASTLANE_PASSWORD (Apple ID کا پاسورڈ)۔ Travis CI میں متغیرات travis encrypt کے ذریعہ خفیہ کیے جاتے ہیں؛ GitHub Actions میں ریپوزیٹری Secrets کے ذریعہ۔

تجویز کردہ طریقہ سرٹفکیٹ ریپوزیٹری میں حادثہ طور پر تبدیلیوں کو روکنے کے لیے CI/CD میں fastlane match کو readonly فلیگ کے ساتھ استعمال کرنا ہے۔ Android کے لیے Base64 میں اینکوڈ کردہ اور ماحولی متغیر میں محفوظ Keystore استعمال کریں، جو before_install مرحلے میں ڈیکوڈ کرکے ایک عارضی فائل میں محفوظ کیا جاتا ہے۔

Fastlane Match: سرٹفکیٹس اور پروفائلز کا انتظام

Fastlane Match iOS سرٹفکیٹس اور پروویشننگ پروفائلز کے انتظام کو خودکار کرنے کا ایک اوزار ہے، جو ٹیموں کے لیے Fastlane کی سب سے قابل قدر خصوصیات میں سے ایک ہے۔ Match ایک خفیہ Git ریپوزیٹری بناتا ہے (یا موجودہ استعمال کرتا ہے) جہاں سب سرٹفکیٹس اور پروفائلز محفوظ کیے جاتے ہیں، اور ڈیولپرز اور CI/CD سرورز کے درمیان مطابقت کی جاتی ہے۔

Match پانچ قسم کے پروفائلز کو سپورٹ کرتا ہے: development، adhoc، appstore، enterprise اور developer_id۔ ہر قسم ریپوزیٹری کے اندر ایک علاحدہ ڈائریکٹری میں محفوظ کیا جاتا ہے۔ fastlane match development کمانڈ ڈیولپمنٹ سرٹفکیٹس کو مقامی مشین پر انسٹال کرتا ہے، جبکہ fastlane match appstore CI بلڈز کے لیے App Store پروفائلز انسٹال کرتا ہے۔

ruby
# Fastfile میں Match کا استعمال
lane :setup_signing do
  match(
    type: 'appstore',
    readonly: true,
    git_branch: 'main'
  )
end

lane :update_profiles do
  match(
    type: 'development',
    force: true,
    app_identifier: ['com.example.app', 'com.example.app.watchkitapp']
  )
end

Match کی حفاظت Git میں کمیٹ کرنے سے پہلے سب فائلوں کو خفیہ کرنے سے یقینی کی جاتی ہے۔ خفیہ کا پاسورڈ MATCH_PASSWORD ماحولی متغیر کے ذریعہ مقرر کیا جاتا ہے اور ٹیم کے تمام ارکان کے لیے ایک جیسا ہونا چاہیے۔ Match خفیہ کرنے کے لیے OpenSSL استعمال کرتا ہے اور پاسورڈ کو ریپوزیٹری میں صریح متن کے طور پر محفوظ نہیں کرتا۔

اکثر پوچے جانے والے سوالات

موبائل ڈیولپمنٹ میں Fastlane کیا ہے?

Fastlane iOS اور Android ایپلیکیشنز کے لیے ایک آپن سورس خودکار کا اوزار ہے۔ یہ ایک واحد ترتیبی فائل Fastfile اور مضموعی اوزاروں کے ایک سیٹ کے ذریعہ بلڈ، ٹیسٹ، کوڈ دستخط اور App Store اور Google Play پر تقسیم کو خودکار کرتا ہے۔

Fastlane میں کون سے اوزار شامل ہیں?

اہم Fastlane اوزار: scan (ٹیسٹ)، gym (iOS بلڈ)، match (سرٹفکیٹس)، deliver (App Store)، pilot (TestFlight)، snapshot (اسکرین شاٹس)، supply (Google Play) اور frameit (اسکرین شاٹس کے فریم)۔ ہر اوزار lane کے اندر action کے طور پر یا کمانڈ لائن سے دستیاب ہے۔

iOS ایپ کے لیے Fastlane کیسے ترتیب دی جائے?

gem fastlane انسٹال کریں، پروجیکٹ کے روٹ میں fastlane init چلائیں۔ بلڈ (gym) اور ٹیسٹ (scan) کے لیے laneز کے ساتھ Fastfile ترتیب دیں۔ Git ریپوزیٹری کے ذریعہ سرٹفکیٹ انتظام کے لیے Match ترتیب دیں۔ App Store Connect پر اپ لوڈ کے لیے pilot یا deliver کے ساتھ deploy lane شامل کریں۔

Android ایپ کے لیے Fastlane کیسے ترتیب دی جائے?

پیکیج نام کی وضاحت کے ساتھ fastlane init چلائیں۔ Gradle کاموں (assembleRelease، testReleaseUnitTest) کو چلانے کے لیے gradle action استعمال کریں۔ ماحولی متغیرات کے ذریعہ Keystore ترتیب دیں۔ AAB یا APK کو Google Play Console پر مطلوبہ ٹریک پر اپ لوڈ کرنے کے لیے supply action استعمال کریں۔

Fastlane کو CI/CD سیسٹمز کے ساتھ کیسے ضم کیا جائے?

CI/CD سرور پر gem fastlane انسٹال کریں اور pipeline کے script مرحلے میں fastlane [lane_name] کمانڈ شامل کریں۔ FASTLANE_USER، FASTLANE_PASSWORD اور MATCH_PASSWORD کو CI/CD رازوں میں ترتیب دیں۔ سرٹفکیٹس میں حادثہ طور پر تبدیلیوں سے بچنے کے لیے CI میں match readonly استعمال کریں۔

خلاصہ

  • Fastlane — iOS اور Android کی حمایت کے ساتھ موبائل بلڈ خودکاری کا آپن سورس اوزار
  • Actions — بلڈ، ٹیسٹ، دستخط اور تقسیم کے لیے بنیادی کمانڈز (200 سے زائد مضموعی)
  • Lanes — Fastfile میں مناظر جو کئی actions کو ایک ترتیبی CI/CD عمل میں اکٹھا کرتے ہیں
  • Match — خفیہ Git ریپوزیٹری کے ذریعہ iOS سرٹفکیٹ انتظام کا نظام
  • iOS: scan ٹیسٹ، gym بلڈ، pilot TestFlight
  • Android: gradle بلڈ، supply Google Play
  • Fastlane Jenkins، Travis CI، GitHub Actions اور دیگر CI/CD پلیٹ فارمز کے ساتھ ضم ہوتا ہے

ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے

IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔

پروجیکٹ پر بحث کریں

مزید پڑھیں