Car App — کار کے انفوٹینمنٹ سسٹم کے لیے ایک ایپلیکیشن ہے، جو Apple CarPlay اور Android Auto کے ساتھ مربوط ہے۔ CarPlay Apple کی ٹیکنالوجی ہے جو iPhone کے انٹرفیس کو کار کی اسکرین پر پیش کرتی ہے اور Siri، ٹچ اسکرین یا اسٹیئرنگ وہیل کے بٹنوں کے ذریعے کنٹرول ہوتی ہے۔ Android Auto Android اسمارٹ فونز کے لیے Google کی اسی طرح کی ٹیکنالوجی ہے۔ Car App کی ترقی میں iOS کے لیے Swift میں CarPlay framework اور SiriKit کے ساتھ، اور Android کے لیے Kotlin میں Car App Library، MediaBrowserService اور NavigationManager کے ساتھ ایپلیکیشن بنانا شامل ہے۔ Car App کی معاونت جدید کاروں کے لیے ایک معیار بنتی جا رہی ہے — Apple کے مطابق، امریکہ میں 98% نئی کاریں CarPlay کو سپورٹ کرتی ہیں، اور Android Auto 200 سے زیادہ ماڈلز میں دستیاب ہے۔
اہم نکات
Car App — ایک ایپلیکیشن ہے جو اسمارٹ فون پروجیکشن کے ذریعے کار کے انفوٹینمنٹ سسٹم (IVI) پر کام کرتی ہے — iOS کے لیے Apple CarPlay اور Android کے لیے Android Auto۔ Android Automotive OS (کار میں نصب OS) کے برعکس، CarPlay اور Android Auto موبائل ایپلیکیشن کی توسیعات ہیں جو فون پر چلتی ہیں اور انٹرفیس کو کار کی اسکرین پر پیش کرتی ہیں۔ Car App آپ کی موجودہ iOS/Android ایپ ہے جو CarPlay یا Android Auto پروٹوکول کو نافذ کرتی ہے۔
Car App کے اہم زمرے: نیویگیشن (Apple Maps، Google Maps، Waze، Sygic)، آڈیو (Spotify، Apple Music، YouTube Music، Audible، Castbox)، پیغام رسانی (Siri/Google Assistant کے ذریعے بلند آواز میں پڑھنا اور ڈکٹیشن)، آٹوموٹیو خصوصیات (EV چارجنگ، پارکنگ، گاڑی کی حالت)، VOIP کالز (WhatsApp، Zoom)۔ ہر زمرے کا اپنا انٹرفیس ٹیمپلیٹ ہے — ListTemplate، MapTemplate، AudioTemplate۔ نظام خود تعین کرتا ہے کہ رجسٹرڈ Intents کی بنیاد پر ایپلیکیشن کس زمرے کو سپورٹ کرتی ہے۔
Car App کی حدود: Apple اور Google حفاظت کے لیے UX کو سختی سے کنٹرول کرتے ہیں — کم سے کم عناصر، بڑے بٹن (کم از کم 48x48 pt)، کوئی ٹیکسٹ ان پٹ نہیں (صرف آواز)، ڈرائیونگ کے دوران خودکار انٹرفیس مدھم، ویڈیو ممنوع۔ دبانے پر ردعمل کا وقت 100 ms سے کم ہونا چاہیے۔ تمام ایپلیکیشنز لازمی جانچ پڑتال سے گزرتی ہیں (CarPlay کے لیے App Review، Android Auto کے لیے Google Play Console + CTS)۔
CarPlay framework (پہلے CPKit) — Swift میں CarPlay ایپلیکیشنز بنانے کے لیے Apple کا فریم ورک۔ اہم کلاس CPInterfaceController ہے، جو ٹیمپلیٹ نیویگیشن کا انتظام کرتی ہے۔ CPInterfaceController میں ٹیمپلیٹ اسٹیک ہوتا ہے: CPListTemplate (فہرستیں)، CPMapTemplate (نیویگیشن)، CPNowPlayingTemplate (آڈیو)، CPVoiceControlTemplate (آواز کنٹرول)۔ CPListTemplate میں CPListItem ہوتا ہے — آئیکن، ٹیکسٹ اور ایکشن کے ساتھ فہرست کے آئٹمز۔
CarPlay کے لیے SiriKit — کار میں ایپلیکیشن کے آواز کنٹرول کے لیے SiriKit کی توسیع۔ ایپلیکیشن Intents رجسٹر کرتی ہے (INPlayMediaIntent — پلے بیک، INStartWorkoutIntent — ورزش، INSendMessageIntent — پیغامات)۔ CarPlay منسلک ہونے پر Siri خود بخود فعال ہو جاتا ہے اور اسٹیئرنگ وہیل پر آواز کنٹرول بٹن کے ذریعے دستیاب ہوتا ہے۔ SiriKit CarPlay CarPlay Dashboard کو سپورٹ کرتا ہے — CarPlay ہوم اسکرین پر ایپلیکیشن سے معلومات (منزل، موجودہ ٹریک) ظاہر کرنے کے لیے ویجٹ۔
CarPlay کنکشن کا عمل: iPhone Lightning/USB-C کیبل یا وائرلیس (CarPlay Wireless، iOS 9 سے) کے ذریعے کار سے منسلک ہوتا ہے۔ کنکشن کے بعد، iOS خود بخود CarPlay سیشن شروع کرتا ہے اگر ایپلیکیشن CPApplicationDelegate کو نافذ کرتی ہے۔ ڈویلپر کنکشن کے لمحے کو کنٹرول نہیں کرتا — نظام سیشن شروع اور ختم ہونے پر delegate طریقوں کو کال کرتا ہے۔ CarPlay ملٹی ٹاسکنگ کو سپورٹ کرتا ہے: موسیقی پر سوئچ کرنے پر نیویگیشن بیک گراؤنڈ میں کام کرتی ہے اور آواز کی ہدایات بجتی رہتی ہیں۔
Android Car App Library — Android Auto کے ساتھ مطابقت رکھنے والی ایپلیکیشنز بنانے کے لیے Android لائبریری۔ بنیادی اجزاء: CarAppService — Android Auto کے لیے داخلے کا مقام؛ Session — سیشن لائف سائیکل مینجمنٹ؛ Screen — ایپلیکیشن کی ہر اسکرین؛ CarScreenManager — ڈسپلے مینجمنٹ۔ ایپلیکیشن میڈیا مواد کے لیے MediaBrowserService اور نیویگیشن ہدایات کے لیے NavigationManager کو سپورٹ کرتی ہے۔
MediaBrowserService — آڈیو ایپلیکیشنز کے لیے ایک اہم جزو۔ ایپلیکیشن پلے بیک کو منظم کرنے کے لیے MediaBrowserService اور MediaSession کو نافذ کرتی ہے۔ Android Auto خود بخود کنٹرولز (Play/Pause، Next، Previous) اور ٹریک کی فہرست ظاہر کرتا ہے۔ NavigationManager نیویگیشن ایپلیکیشنز کے لیے استعمال ہوتا ہے — یہ موڑ کی ہدایات، راستے کی حالت اور انتباہات پہنچاتا ہے۔ NavigationManager Android Auto اسٹیٹس بار میں نیویگیشن ہدایات ظاہر کرنے کے لیے CarNotification کو سپورٹ کرتا ہے۔
Android Auto کے تقاضے: ایپلیکیشن کے مینی فیسٹ میں category="android.intent.category.APP_AUTO" ہونا چاہیے؛ AndroidX اور کم از کم SDK 26+ کا استعمال لازمی ہے؛ ڈارک تھیم (DayNight) کی معاونت؛ ٹچ اور آواز کنٹرول کی معاونت؛ Android Auto Compatibility Test Suite (CTS) کی تعمیل۔ Google Play حفاظت اور UX کے تقاضوں کی تعمیل کے لیے ہر ایپلیکیشن کی جانچ کرتا ہے۔ تصدیق کے عمل میں 1–4 ہفتے لگتے ہیں۔
CarPlay framework استعمال کرتے ہوئے Swift میں CarPlay کے لیے نیویگیشن ایپلیکیشن کی مثال۔
import CarPlay
class CarPlaySceneDelegate: CPTemplateApplicationSceneDelegate {
func templateApplicationScene(
_ templateApplicationScene: CPTemplateApplicationScene,
didConnect interfaceController: CPInterfaceController
) {
let searchItem = CPListItem(
text: "پتہ تلاش کریں",
detailText: "منزل درج کریں"
)
searchItem.handler = { _, completion in
// تلاش کی اسکرین کھولیں
completion()
}
let favoritesItem = CPListItem(
text: "پسندیدہ",
detailText: "محفوظ کردہ پتے"
)
favoritesItem.handler = { _, completion in
showFavorites()
completion()
}
let section = CPListSection(items: [searchItem, favoritesItem])
let listTemplate = CPListTemplate(
title: "نیویگیشن",
sections: [section]
)
interfaceController.setRootTemplate(listTemplate, animated: true)
}
func showFavorites() {
// پسندیدہ پتوں کی فہرست دکھائیں
}
}
// آواز کنٹرول کے لیے SiriKit Intent
class NavigationIntentHandler: NSObject, INSearchForMessagesIntentHandling {
func handle(intent: INSearchForMessagesIntent,
completion: @escaping (INSearchForMessagesIntentResponse) -> Void) {
// Siri کے ذریعے آواز کمانڈ پروسیسنگ
let response = INSearchForMessagesIntentResponse(
code: .success, userActivity: nil
)
completion(response)
}
}
اہم نکات: CPTemplateApplicationSceneDelegate — CarPlay سیشن کے لیے داخلے کا مقام؛ CPInterfaceController ٹیمپلیٹ اسٹیک کا انتظام کرتا ہے؛ CPListTemplate اور CPListItem — بنیادی UI اجزاء؛ .handler — فہرست کے ہر آئٹم کے لیے کلک ہینڈلر۔
Car App Library کے ساتھ Kotlin میں Android Auto کے لیے نیویگیشن ایپلیکیشن کی مثال:
// CarAppService — Android Auto کے لیے داخلے کا مقام
class NavigationCarAppService : CarAppService() {
override fun createSession(): Session = NavigationSession()
}
// Session — سیشن لائف سائیکل مینجمنٹ
class NavigationSession : Session() {
override fun onCreateScreen(manager: ScreenManager): Screen {
return MainScreen(carContext)
}
}
// MainScreen — نیویگیشن کے ساتھ مرکزی اسکرین
class MainScreen(carContext: CarContext) : Screen(carContext) {
override fun onGetTemplate(): Template {
val searchAction = Action.Builder()
.setTitle("پتہ تلاش کریں")
.setOnClickListener { showSearchScreen() }
.build()
val favoritesAction = Action.Builder()
.setTitle("پسندیدہ")
.setOnClickListener { showFavorites() }
.build()
return ListTemplate.Builder()
.setTitle("نیویگیشن")
.setHeaderAction(Action.APP_ICON)
.addAction(searchAction)
.addAction(favoritesAction)
.build()
}
private fun showSearchScreen() {
screenManager.push(SearchScreen(carContext))
}
private fun showFavorites() {
screenManager.push(FavoritesScreen(carContext))
}
}
// AndroidManifest — سروس رجسٹریشن
<service
android:name=".NavigationCarAppService"
android:exported="true">
<intent-filter>
<action
android:name="androidx.car.app.action.NAVIGATION" />
</intent-filter>
<category
android:name="android.intent.category.APP_AUTO" />
</service>
اہم نکات: CarAppService — Android Auto کے لیے داخلے کا مقام؛ Session — لائف سائیکل مینجمنٹ؛ Screen — ایپلیکیشن کی ہر اسکرین، ایک Template لوٹاتی ہے؛ ListTemplate — Action کے ساتھ فہرستوں کے لیے ٹیمپلیٹ؛ category.APP_AUTO — مینی فیسٹ میں لازمی زمرہ۔
Apple CarPlay کے تقاضے: ایپلیکیشن کو CarPlay Distraction Design Guidelines کی تعمیل کرنی چاہیے — کم از کم بٹن سائز 48x48 pt، ٹیکسٹ کنٹراسٹ 4.5:1، کوئی اینیمیشن یا ویڈیو نہیں، VoiceOver معاونت۔ اشاعت — App Store Connect کے ذریعے، ایپلیکیشن معیاری Apple جانچ پڑتال سے گزرتی ہے۔ App Store Connect میں CarPlay کی معاونت بتانا اور CarPlay انٹرفیس کے اسکرین شاٹس منسلک کرنا ضروری ہے۔ CarPlay ایپلیکیشنز اشتہارات کے بغیر مفت نہیں ہو سکتیں — Apple ان ایپ خریداریوں پر 30% کمیشن (چھوٹے کاروبار کے لیے 15%) وصول کرتا ہے۔
Android Auto کے تقاضے: ایپلیکیشن کو Android Auto Design Guidelines کی تعمیل کرنی چاہیے اور Android Auto Compatibility Test Suite (CTS) پاس کرنا چاہیے۔ اشاعت — Google Play Console کے ذریعے، مطابقت رکھنے والے آلات کی فہرست میں "Android Auto" زمرہ بتانا ضروری ہے۔ Google Play جانچ کرتا ہے: ڈارک تھیم (DayNight) کی معاونت، کنکشن ختم ہونے پر درست رویہ، اسکرین گھومنے کا انتظام، Google Assistant کے ذریعے آواز کنٹرول کی معاونت۔ Android Auto ایپلیکیشنز کو اضافی کمیشن کی ضرورت نہیں — معیاری Google Play ماڈل (15-30%)۔
| پیرامیٹر | Apple CarPlay | Android Auto |
|---|---|---|
| فریم ورک | CarPlay framework (CPInterfaceController) | Car App Library (CarAppService) |
| زبان | Swift | Kotlin |
| آواز معاون | SiriKit | Google Assistant |
| انٹرفیس | CPListTemplate، CPMapTemplate | ListTemplate، MapTemplate |
| میڈیا | MPNowPlayingInfoCenter | MediaBrowserService |
| نیویگیشن | CPNavigationSession | NavigationManager |
| اشاعت | App Store Connect | Google Play Console |
| کمیشن | 15–30% | 15–30% |
| جانچ پڑتال | App Review (1–3 دن) | CTS + Google Play (1–4 ہفتے) |
وائرلیس کنکشن کی معاونت: CarPlay Wireless iOS 9 سے دستیاب ہے اور Wi-Fi + Bluetooth کی ضرورت ہے۔ Android Auto Wireless Android 11 سے دستیاب ہے۔ وائرلیس کنکشن کے لیے، کار کو متعلقہ معیار کو سپورٹ کرنا چاہیے۔ ڈویلپر کو اضافی کوڈ لکھنے کی ضرورت نہیں — OS خود بخود کنکشن سنبھالتا ہے۔
اکثر پوچھے گئے سوالات
Car App ڈرائیونگ کے دوران استعمال کے لیے بہتر بنائی گئی ہے: کم سے کم عناصر، بڑے بٹن، آواز کنٹرول، کوئی ٹیکسٹ ان پٹ نہیں۔ ایپلیکیشن کو حفاظتی تقاضوں کی تعمیل کرنی چاہیے — Apple اور Google سے Distraction Design Guidelines۔
CarPlay زمرے سپورٹ کرتا ہے: نیویگیشن (Apple Maps، Google Maps، Waze)، آڈیو (Spotify، Apple Music)، پیغام رسانی (Siri کے ذریعے پڑھنا اور ڈکٹیشن)، آٹوموٹیو خصوصیات (EV چارجنگ، پارکنگ) اور VOIP کالز۔
Android Car App Library استعمال کریں: داخلے کے مقام کے لیے CarAppService، لائف سائیکل مینجمنٹ کے لیے Session، ہر اسکرین کے لیے Screen نافذ کریں۔ ایپلیکیشن کو میڈیا کے لیے MediaBrowserService یا نیویگیشن کے لیے NavigationManager کو سپورٹ کرنا چاہیے۔
جی ہاں، دونوں پلیٹ فارمز کو جانچ پڑتال کی ضرورت ہے۔ Apple App Review کے ذریعے CarPlay ایپلیکیشنز کی جانچ کرتا ہے۔ Android Auto کو Android Auto Compatibility Test Suite (CTS) پاس کرنا اور Google Play Console میں تصدیق ضروری ہے۔
CarPlay کے لیے — Swift اور CarPlay فریم ورک (CPInterfaceController، CPTemplate، CPListItem) اور SiriKit۔ Android Auto کے لیے — Kotlin اور Car App Library اور MediaBrowserService۔
خلاصہ
ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے
IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔
مزید پڑھیں