Dynamic Island: یہ کیا ہے، Dynamic Island کے ساتھ تعامل

مصنف: IT Sectr اشاعت: 2026-02-28 مطالعے کا وقت: 9 منٹ

Dynamic Island iPhone 14 Pro اور تمام iPhone 15/16 کے اوپری حصے میں ایک انٹرایکٹو علاقہ ہے جو اطلاعات، پس منظر کی سرگرمیوں اور نظام کے اشاروں کو ایک متحرک زون میں یکجا کرتا ہے۔ روایتی نشان (notch) کے برعکس، Dynamic Island موجودہ سیاق و سباق کے مطابق اپنی شکل اور سائز تبدیل کرتا ہے۔ Apple (WWDC 2024) کے مطابق، صارفین Dynamic Island کے ساتھ اوسطاً دن میں 12 بار تعامل کرتے ہیں — ٹیپ، لمبا دباؤ اور ActivityKit کے ساتھ Live Activities کے ذریعے۔ iOS میں اینیمیشن کے بارے میں مزید جاننے کے لیے Corner Radius مضمون پڑھیں۔

اہم نکات

  • Dynamic Island Apple کا سافٹ ویئر-ہارڈویئر حل ہے، جو نشان (notch) کو تبدیل شکل والے انٹرایکٹو زون سے بدل دیتا ہے۔
  • Live Activities Dynamic Island پر ویجٹ ہیں، جو ActivityKit فریم ورک (iOS 16.1+) کے ذریعے کام کرتی ہیں۔
  • تین حالتیں: کمپیکٹ (آئیکن)، کم سے کم (گولی)، توسیع شدہ (مواد کے ساتھ پینل)۔
  • ActivityKit Dynamic Island اور لاک اسکرین پر Live Activities شائع کرنے کے لیے Swift فریم ورک ہے۔
  • Dynamic Island اشاروں کو سپورٹ کرتا ہے: ایپ کھولنے کے لیے ٹیپ، پینل پھیلانے کے لیے لمبا دباؤ۔

Dynamic Island کیا ہے؟

Dynamic Island Apple کے سافٹ ویئر-ہارڈویئر حل پر مبنی ایک انٹرایکٹو علاقہ ہے، جو ستمبر 2022 میں iPhone 14 Pro کے ساتھ متعارف کرایا گیا۔ طبعی طور پر، یہ گولی کی شکل کا ایک کٹ آؤٹ ہے جو OLED پکسلز سے گھرا ہوتا ہے جو متحرک طور پر رنگ اور شکل تبدیل کرتے ہیں۔ Apple کیمرہ اور Face ID کے لیے ہارڈویئر کٹ آؤٹ اور اس کے گرد سیاہ علاقوں کے سافٹ ویئر رینڈرنگ کا مجموعہ استعمال کرتا ہے، جو ایک «زندہ» جزیرے کا وہم پیدا کرتا ہے۔

Dynamic Island کا بنیادی مقصد نظام کی اطلاعات اور فعال مواد کے درمیان فرق کو ختم کرنا ہے۔ اطلاعات کو اسکرین کے بیچ میں (جیسے Android میں) یا اوپر سے بینر کے طور پر (جیسے پرانے iOS میں) ظاہر کرنے کے بجائے، Dynamic Island انہیں براہ راست ہارڈویئر زون میں ضم کرتا ہے۔ یہ توجہ ہٹانے کو کم کرتا ہے اور ایک متحد جگہ کا احساس پیدا کرتا ہے۔

Apple کے اعداد و شمار (iOS 17 اپنانے کے اعدادوشمار، 2024) کے مطابق، Dynamic Island فعال iPhones کے 38% پر دستیاب ہے۔ iPhone 15 (2023) سے شروع ہو کر، بنیادی ماڈلز سمیت لائن اپ کے تمام ماڈلز کو Dynamic Island ملا۔ iOS 18 میں، Apple نے Live Activities API کو وسعت دی، جس میں براہ راست Dynamic Island پر الٹی گنتی ٹائمر اور کھیلوں کے اسکور کے لیے سپورٹ شامل کیا گیا۔

کون سے ماڈل Dynamic Island کو سپورٹ کرتے ہیں

Dynamic Island iPhone 14 Pro، iPhone 14 Pro Max، iPhone 15، iPhone 15 Plus، iPhone 15 Pro، iPhone 15 Pro Max، iPhone 16، iPhone 16 Plus، iPhone 16 Pro، iPhone 16 Pro Max پر دستیاب ہے۔ iPad پر Dynamic Island دستیاب نہیں ہے۔ Dynamic Island کے لیے ڈویلپمنٹ کے لیے Xcode 14.1+ اور iOS 16.1+ درکار ہے۔

Dynamic Island کیسے کام کرتا ہے: تین حالتیں

Dynamic Island تین ڈسپلے حالتیں سپورٹ کرتا ہے: کمپیکٹ، کم سے کم اور توسیع شدہ۔ حالتوں کے درمیان منتقلی UIKit اینیمیشن اور Core Animation کا استعمال کرتے ہوئے متحرک ہوتی ہے۔ نظام خود سرگرمی کی ترجیح کا انتظام کرتا ہے: اگر متعدد ایپس بیک وقت مواد ظاہر کرنے کی کوشش کریں، تو iOS آخری سرگرمی کے شروع ہونے کے وقت کی بنیاد پر قطار استعمال کرتا ہے۔

حالتسائزموادمثال
کمپیکٹ49×18 ptایپ آئیکن + نظام کا آئیکنٹائمر، موسیقی، کال
کم سے کم66×18 pt تکآئیکن + مختصر متننیویگیشن ہدایات، قدم
توسیع شدہ364×160 pt تکمواد کے ساتھ مکمل ویجٹکھیل کا اسکور، ٹیکسی کی حیثیت

کمپیکٹ حالت Dynamic Island کا معیاری منظر ہے جب ایک پس منظر کا کام فعال ہوتا ہے۔ یہ بائیں طرف ایپ آئیکن اور دائیں طرف نظام کے آئیکن کے ساتھ ایک گول گولی کے طور پر ظاہر ہوتا ہے۔ ڈیفالٹ کے طور پر، تمام Live Activities کمپیکٹ حالت میں شروع ہوتی ہیں۔

کم سے کم حالت اس وقت پیدا ہوتی ہے جب دو یا زیادہ کام بیک وقت فعال ہوں۔ Dynamic Island کیمرے کے بائیں اور دائیں طرف دو علیحدہ عناصر میں «تقسیم» ہو جاتا ہے۔ کم سے کم حالت معلومات کے دو آزاد ذرائع کو ظاہر کرنے کی اجازت دیتی ہے، جیسے ٹیکسی کی آمد کا وقت اور موجودہ ٹریک۔

توسیع شدہ حالت Dynamic Island پر لمبا دباؤ ڈال کر فعال ہوتی ہے۔ اس موڈ میں، حسب ضرورت مواد (عنوانات، وضاحتیں، پیش رفت بار، بٹن) کے ساتھ ایک مکمل ویجٹ ظاہر ہوتا ہے۔ توسیع شدہ حالت اسکرولنگ اور انٹرایکٹو عناصر کو سپورٹ کرتی ہے۔

ActivityKit اور Live Activities: Swift API

ActivityKit iOS 16.1 میں متعارف کرایا گیا ایک Swift فریم ورک ہے، جو ایپس کو Dynamic Island اور لاک اسکرین پر Live Activities شائع کرنے کی اجازت دیتا ہے۔ ActivityKit ActivityView اور ActivityAttributes پر مبنی فن تعمیر استعمال کرتا ہے: پہلا مواد کی قسم کی وضاحت کرتا ہے، دوسرا قابل تبدیل ڈیٹا کی وضاحت کرتا ہے۔ فریم ورک WidgetKit کے ساتھ مل کر کام کرتا ہے، لیکن ویجٹ کے برعکس، Live Activities ایپ کھولے بغیر حقیقی وقت میں اپ ڈیٹ ہو سکتی ہیں۔

swift
import ActivityKit
import SwiftUI

// سرگرمی کی خصوصیات کی وضاحت کریں
struct DeliveryAttributes: ActivityAttributes {
    public struct ContentState: Codable, Hashable {
        var driverName: String
        var distanceToArrival: Double
        var estimatedMinutes: Int
    }
    var orderNumber: String
}

// Live Activity شروع کریں
func startDeliveryActivity() {
    let initialState = DeliveryAttributes.ContentState(
        driverName: "الیکسی",
        distanceToArrival: 3.5,
        estimatedMinutes: 12
    )
    let attributes = DeliveryAttributes(orderNumber: "ORD-2024-8912")
    let activity = try? Activity.request(
        attributes: attributes,
        contentState: initialState,
        pushType: .token
    )
}

Live Activities ActivityView کے ذریعے اپ ڈیٹ ہوتی ہیں، جو Dynamic Island کے لیے SwiftUI مواد رینڈر کرتا ہے۔ نظام خود طے کرتا ہے کہ کون سا ٹیمپلیٹ استعمال کرنا ہے (کمپیکٹ، کم سے کم یا توسیع شدہ)، Dynamic Island کے سائز اور سرگرمیوں کی تعداد پر منحصر ہے۔ مواد کو اپ ڈیٹ کرنے کے لیے، activity.update(using: contentState) کال کریں۔ ختم کرنے کے لیے — activity.end(dismissalPolicy: .immediate)۔

پش اپ ڈیٹس کے ساتھ متحرک اطلاعات

ActivityKit APNs (Apple Push Notification Service) کے ذریعے پش اپ ڈیٹس کو سپورٹ کرتا ہے۔ Live Activity شروع کرتے وقت، آپ pushToken کی درخواست کر سکتے ہیں اور ڈیوائس پر ایپ لانچ کیے بغیر سرور سے اپ ڈیٹس بھیج سکتے ہیں۔ پش اپ ڈیٹس activity.pushToken اور ریموٹ Live Activity شروع کرنے کے لیے Activity.pushToStartToken کے ذریعے کام کرتی ہیں۔

swift
// پش کے ذریعے Live Activity اپ ڈیٹ کریں
func updateActivity(activity: Activity<DeliveryAttributes>) {
    let updatedState = DeliveryAttributes.ContentState(
        driverName: "الیکسی",
        distanceToArrival: 1.2,
        estimatedMinutes: 4
    )
    let alertConfiguration = AlertConfiguration(
        title: "کوریئر قریب ہے",
        body: "الیکسی 4 منٹ میں آئے گا",
        sound: .default
    )
    await activity.update(
        using: updatedState,
        alertConfiguration: alertConfiguration
    )
}

AlertConfiguration ایک اختیاری پیرامیٹر ہے جو اہم اپ ڈیٹس (مثلاً، «کوریئر آ گیا») پر Dynamic Island کے اوپر ایک اطلاع دکھاتا ہے۔ AlertConfiguration کے بغیر، مواد خاموشی سے اپ ڈیٹ ہوتا ہے، جو پیش رفت بار اور ٹائمر کے لیے موزوں ہے۔

Dynamic Island بمقابلہ نشان (Notch): موازنہ

نشان (Notch) iPhone X–13 کا ہارڈویئر کٹ آؤٹ ہے جس میں فرنٹ کیمرہ، Face ID سینسر اور اسپیکر ہوتا ہے۔ نشان (notch) جامد ہے: اس کا سائز اور شکل تبدیل نہیں ہوتی، اور اطلاعات اس کے نیچے معیاری بینر کے طور پر ظاہر ہوتی ہیں۔ دوسری طرف، Dynamic Island کٹ آؤٹ کے ارد گرد پکسلز استعمال کرتا ہے مواد ظاہر کرنے کے لیے، ہارڈویئر عنصر کو انٹرفیس کا حصہ بناتا ہے۔

معیارDynamic Islandنشان (Notch)
تعاملٹیپ، لمبا دباؤ، سوائپ کو سپورٹ کرتا ہےانٹرایکٹو نہیں
مواد کی موافقتسیاق و سباق کے مطابق شکل بدلتا ہےجامد، مواد نشان کے نیچے
Live ActivitiesActivityKit کے ذریعے بلٹ ان سپورٹنہیں — صرف معیاری اطلاعات
ملٹی ٹاسکنگدو بیک وقت سرگرمیاں (بائیں اور دائیں)صرف ایک سرگرمی
دستیابیiOS 16.1+، iPhone 14 Pro اور نیاiOS 11+، iPhone X–13

Apple Human Interface Guidelines (2025) کے مطابق، Dynamic Island کو اشتہار یا مستحکم مواد کے مستقل ڈسپلے کے لیے استعمال نہیں کیا جانا چاہیے۔ Live Activities صرف واضح لائف سائیکل والے پس منظر کے کاموں کے لیے ہیں: ٹائمر، ڈیلیوری، کھیل، موسیقی، نیویگیشن۔ ان اصولوں کی خلاف ورزی ایپ اسٹور جائزہ میں ایپ کو مسترد کرنے کا باعث بنتی ہے۔

Dynamic Island کا لائف سائیکل اور اشارے

Dynamic Island کا ایک سخت لائف سائیکل ہے: ایک سرگرمی Activity.request() کے ذریعے درخواست سے شروع ہوتی ہے، فعال/موقوف/اپ ڈیٹ شدہ حالتوں سے گزرتی ہے اور activity.end() کال کے ساتھ ختم ہوتی ہے۔ نظام میموری کم ہونے پر سرگرمی کو زبردستی ختم کر سکتا ہے (مثلاً، کیمرہ شروع ہونے پر)۔ اس صورت میں، ایپ کو ActivityActivityState.finished کے ذریعے اطلاع ملتی ہے۔

اشارے Dynamic Island پر ActivityView کے اندر SwiftUI مواد کے ذریعے سنبھالے جاتے ہیں۔ معیاری اشارے: کمپیکٹ حالت پر ٹیپ ایپ کھولتا ہے، لمبا دباؤ توسیع شدہ حالت کھولتا ہے، نیچے سوائپ توسیع شدہ حالت بند کرتا ہے۔ کسٹم اشارے سرگرمی ویو کے اندر SwiftUI موڈیفائر (onTapGesture، onLongPressGesture) کے ذریعے شامل کیے جاتے ہیں۔

finished حالت کو سنبھالنا

جب نظام Live Activity ختم کرتا ہے (یا صارف سوائپ کرکے ہٹاتا ہے)، ایپ کو وسائل خالی کرنے کے لیے finished حالت کو سنبھالنا چاہیے۔ Activity.activityStateUpdates کو سبسکرائب کرنے اور مکمل ہونے کے بعد سرگرمی کے مقامی حوالہ جات کو ہٹانے کی سفارش کی جاتی ہے۔

swift
import ActivityKit

func observeActivityState(activity: Activity<DeliveryAttributes>) {
    Task {
        for await state in activity.activityStateUpdates {
            switch state {
            case .active:
                print("سرگرمی Dynamic Island پر فعال ہے")
            case .dismissed:
                print("سرگرمی صارف کے ذریعے چھپائی گئی")
                await activity.end(dismissalPolicy: .immediate)
            case .finished:
                print("سرگرمی نظام کے ذریعے ختم کی گئی")
                cleanupResources()
            @unknown default:
                break
            }
        }
    }
}

Apple کی سفارش (WWDC 2024، سیشن 10146): ان حالات کو ظاہر کرنے کے لیے Dynamic Island استعمال نہ کریں جن میں صارف کی توجہ کی ضرورت نہیں ہے۔ ہر Live Activity کا ایک واضح شروع اور ختم ہونے کا محرک ہونا چاہیے۔ UI کے بغیر پس منظر کی اپ ڈیٹس کے لیے، Live Activities کے بجائے Background Tasks استعمال کریں۔

اکثر پوچھے گئے سوالات

کون سے iPhone پر Dynamic Island کام کرتا ہے؟

Dynamic Island iPhone 14 Pro، 14 Pro Max اور تمام iPhone 15 اور iPhone 16 ماڈلز (بنیادی ورژن سمیت) پر دستیاب ہے۔ ڈویلپمنٹ کے لیے iOS 16.1+ اور Xcode 14.1 درکار ہے۔ پرانے ماڈلز (iPhone X–13) میں ایک جامد نشان (notch) استعمال ہوتا ہے، جو Live Activities کو سپورٹ نہیں کرتا۔

Dynamic Island عام اطلاع سے کیسے مختلف ہے؟

Dynamic Island اطلاع کو اسکرین کے ہارڈویئر زون میں ضم کرتا ہے، مواد کو ڈھانپے بغیر۔ عام اطلاع اوپر ایک بینر کے طور پر ظاہر ہوتی ہے اور چند سیکنڈ بعد غائب ہو جاتی ہے۔ Dynamic Island پر Live Activities گھنٹوں تک فعال رہ سکتی ہیں اور حقیقی وقت میں اپ ڈیٹ ہو سکتی ہیں (ڈیلیوری کی حیثیت، ٹائمر، موسیقی)۔

ایپ کھولے بغیر Dynamic Island پر مواد کیسے اپ ڈیٹ کریں؟

APNs کے ذریعے پش اپ ڈیٹس استعمال کریں۔ Live Activity شروع کرتے وقت، activity.pushToken کال کریں اور اپنے سرور کو ٹوکن بھیجیں۔ سرور نیا ContentState کے ساتھ APNs کے ذریعے اپ ڈیٹ کی درخواست بھیجتا ہے۔ متبادل کے طور پر، ایپ کے اندر سے activity.update(using:) کے ذریعے مقامی اپ ڈیٹس کریں۔

Dynamic Island پر بیک وقت دو سرگرمیاں کیسے دکھائیں؟

جب دو Live Activities فعال ہوتی ہیں، iOS خود بخود Dynamic Island کو دو حصوں میں تقسیم کرتا ہے۔ ہر سرگرمی کیمرے کے بائیں اور دائیں طرف کم سے کم حالت میں ظاہر ہوتی ہے۔ کسی ایک حصے پر لمبا دباؤ صرف اس ایپ کے لیے توسیع شدہ حالت کھولتا ہے۔

میری Live Activity Dynamic Island پر کیوں ظاہر نہیں ہوتی؟

چیک کریں: (1) ایپ کے Info.plist میں NSSupportsLiveActivities = YES ہے، (2) ActivityAttributes اور ContentState Codable اور Hashable کو لاگو کرتے ہیں، (3) iOS ورژن 16.1+ ہے، (4) ڈیوائس Dynamic Island کو سپورٹ کرتی ہے۔ سمیلیٹر کے لیے، Xcode میں iPhone 14 Pro یا نیا استعمال کریں۔

خلاصہ

  • Dynamic Island — iPhone 14 Pro+ کا انٹرایکٹو زون، جو جامد نشان (notch) کی جگہ لیتا ہے۔
  • تین حالتیں سپورٹ کرتا ہے: کمپیکٹ، کم سے کم اور توسیع شدہ، ہموار منتقلی اینیمیشن کے ساتھ۔
  • ActivityKit — Dynamic Island اور لاک اسکرین پر Live Activities شائع کرنے کے لیے Swift فریم ورک۔
  • Live Activities مقامی کالز یا APNs کے ذریعے پش اطلاعات سے اپ ڈیٹ ہوتی ہیں۔
  • اشارے: ایپ میں جانے کے لیے ٹیپ، پینل پھیلانے کے لیے لمبا دباؤ، بند کرنے کے لیے سوائپ۔
  • Dynamic Island حصوں میں تقسیم کے ساتھ دو بیک وقت سرگرمیوں تک سپورٹ کرتا ہے۔
  • Apple Live Activities کے استعمال کو صرف واضح وقت کی حدود والے پس منظر کے کاموں تک محدود کرتا ہے۔

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

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

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

مزید پڑھیں