مقالات اپلیکیشن

شرح مقالات اپلیکیشن

مقالات اپلیکیشن

شرح مقالات اپلیکیشن

مشکل استفاده از جاوا چیست؟

شما احتمالا یک سری سال از جاوا استعمال کرده‌اید (شاید ده سال‌ها)،  طراحی اپلیکیشن در مشهد براین اساس با آن بسیار آشنا می باشید. شما کناره کناره گویش را می شناسید، و همینطور موردها مستند نشده‌ای وجود داراست که تنها جاواکاران کهن با سال‌ها تجارب با آنها مواجه گردیده‌اند.
بدین ترتیب زمانی لهجه جدیدی می آید و دیگر افراد به شما می گویند رایاپارس  که به آن سوئیچ فرمائید، احتمالا شک وتردید خواهید داشت. اکثر عموم این‌سیرتکامل می‌باشند، به ویژه افرادی که سال‌های متعددی با جاوا عمل کرده و ارتباط صمیمانه‌ای با آن داشته‌اند.
شاید در بالا عشق‌ای به سوئیچ کردن از جاوا به گویش دیگری را نداشته باشید، application  ولی زمانی شغل با کاتلین را آغاز فرمایید متوجه تصویر بلندمرتبه‌‌تری خواهید شد، و نگرش و ذهن‌تان در ارتباط با آن تغییر‌و تحول خواهد کرد. در اینجا یکسری برهان را برای شما می آورم:
جاوا دیرین میباشد... خیلی کهن
جاوا یکی‌از گویش‌های قابل به کار گیری میباشد که به زمانه‌های خیلی پیشین بازمی‌شود. ولی امروزه زمانی از جاوا در اندروید به کارگیری میکنیم، حتی از مواقعی مثل لامبداها و استریم‌ها حفاظت نمی‌نماید.
بعضا طرق فرد ثالث برای حل برخی از این خصوصیت‌ها با به کارگیری از ابزارهایی مثل RetroLambda، Streams backport و ThreeTenABP وجود دارااست، البته به کارگیری از آن ها عذاب‌آور میباشد.
Android Nougat مبادرت جدیی را برای حمایت از برخی خصوصیت‌های جاوا8 با استعمال از کامپایلر Jack ساخته میباشد، البته بخش اعظمی از آن ها تنها در حالتی‌که قابل استعمال می‌باشند که شما minSdkVersion 24 را غرض قرار دهید؛ کاری که شما نباید ایفا دهید.
غلط‌ها در جاوا
یکی‌از گران قدر‌ترین معایب جاوا روش رئیس \"null\" میباشد که باعث به NulPointerException (NPE) میشود، که تحت عنوان نادرست میلیارد دلاری شناخته گردیده است.
امروزه NPE یکی رایج‌ترین دلایل سقوط (Crash) نرم‌افزار‌های اندروید میباشد. درحقیقت غیر ممکن میباشد نرم افزار‌ای سوای یک NullPointerException ساخت خواهد شد (در‌حالتی که شما این شغل را اجرا داده‌اید به ما بگویید، ما خیلی مشتاق‌ هستیم بدانیم چطور از آن اجتناب کرده‌اید).
و \"nullability\" (امکان خالی بودن) یک ایراد والا دیگر برای اندروید میباشد. Null یک طرز بسیار کارآمد و معمولی برای آرم دادن نبود مقدار میباشد و اندروید از آن در کادر‌ورک‌ها و APIهای خویش به کارگیری می‌نماید. بهتر وجود ندارد که جاوا آن را برای بسط‌دهندگان جهت مدیر آن بسیار مشقت بار می‌سازد.

اختلال سوم مرتبط با این حقیقت میباشد که اپ‌نویسان اکثر وقت ها طرز پیاده‌سازی کلاس‌های داخلی غیراستاتیک و کلاس‌های داخلی anonymous، که مدام یک مرجع ضمنی را برای کلاس‌های فرنگی نگه می‌دارا‌هستند را نادیده میگیرند. با اعمال این عمل، پیشرفت‌دهندگان اپلیکیشن‌های خویش را در معرض نشت خاطر قرار میدهند.

وقت گیر‌نویسی و تشریفات

مساله دیگری که وجود داراست این میباشد که گسترش‌دهندگان کد منزه و مختصر را دوست دارا هستند. کد کوتاه فرصت کمتر برای تایپ کردن و فرصت کمتر برای تلاوت را صرف می‌نماید و کمتر در معرض اشتباه میباشد. ولی با جاوا شما بایستی کد متعددی بنویسید تا حتی معمولی‌ترین امور را ایفا دهید. در صورتی‌که گسترش‌دهنده اندروید باشید، احتمالا آن را تجارب کرده‌اید.

تشریفات قابل توجهی در APIهای جاوا وجود دارااست، و اندروید حتی این مورد ها را با بدون چاره کردن بسط‌دهندگان برای طی کردن پروسه زیاد، با ترتیبی خاص برای ایفا شغل های گوناگون مثل دسترسی به مقر داده حاد‌خیس می‌سازد.

در حالتی که بتوانید بخش اعظمی از این فرآیندها را بی آلایش فرمائید، تجربیات و سود‌وری خویش را تحت عنوان توسعه و گسترش‌دهنده اندروید به صورت قابل توجهی بهبود بخشیده‌اید.

کاتلین برای رهایی از این ایرادات:

جاوا صرفا زبانی وجود ندارد که برای تشکیل داد نرم افزار‌های اندروید می توانید از آن استعمال نمایید. به غیر از جاوا کاتلین یک لهجه open-source و statically-typed میباشد که بوسیله JetBrains پیشرفته میباشد.

JetBrains یک کدام از دوستداشتنی‌ترین IDEها، IntelliJ IDEA و همچینین Android Studio را تولید نموده است که گوگل آن را تحت عنوان IDE استاندارد برای پیشرفت اندروید معرفی نموده است. JetBrains از کاتلین برای ساخت تولید ها خویش به کارگیری می‌نماید، بدین ترتیب بعید میباشد که‌این لهجه را ناگهان رها نماید.

کاتلین 100% با جاوا سازگار میباشد

این او‌لین چیزی بود که اینجانب درباره‌ی کاتلین دوست داشتم. شما میتوانید کد جاوا را از کاتلین و برعکس به طور یک پارچه فراخوانی فرمایید. هم کاتلین و هم جاوا bytecode مشابهی را ایجاد می‌نمایند، بدین ترتیب هیچ نگرانی نیست که شما چیزی را که به طور کامل با کاتلین گوناگون میباشد را جابه‌جا نمایید.

این بدان معناست که شما میتوانید از کاتلین در پروژه‌های مو جود خویش، در کنار به عبارتی جاوا سابق، به طور به طور همزمان استعمال نمائید. به عبارتی‌طور که استارت به شناخت با ساختار و سینتکس کاتلین میکنید، آغاز به تایپ کردن قسمت‌های خرد و معمولی اپ خویش نمائید (که به هر اکنون فوق‌العاده بی آلایش میباشد).

این مخلوط کد جاوا و کاتلین در پروژه‌ها به نیکی عمل می‌نماید. امکان همیاری آن ها حقیقتا یک نعمت میباشد.

NullPointerExceptions کمتر

مجال سرمایه‌گذاری زیاد برای NPEها، جهت حفظ از کد با رسیدگی خالی نبودن در هر جایی، فعالیت مجال‌گیر و خسته‌کننده‌ای میباشد.

با کاتلین دیگر ما یحتاج وجود ندارد نگران NPEها باشید، چون امنیت null در سیستم کاتلین در لحاظ گرفته گردیده است. کاتلین NPEها را در طول کامپایل می گیرد به مکان آنکه آن ها را در حین انجام crash نماید.

چه‌گونه این فعالیت در فعالیت ایفا میشود؟  به صورت پیش‌فرض، تک تک متغیرها non-null می باشند. در شرایطی‌که شما یک متغیر \" nullable\" را میخواهید، برای آن یک \"؟\" بگذارید.

IDE بهتر و جانبداری ابزار

شما خیلی نادر نگران امان مداوم می باشید، چون یک کمپانی خیلی دارای اعتبار پشت آن قراردارد. JetBrains کارشناس در تولید بعضی از IDEهای گزینه به کار گیری در عالم میباشد.

پروسه دیتا بایندینگ را از کجا شروع کنیم؟

در صدر ما بایستی به پروژه خویش اذن دهیم که دیتا بایندینگ را فعال نماید.طراحی اپلیکیشن در مشهد  برای اعمال این عمل ما نیاز رایاپارس داریم که عنصر دیتا بایندینگ را به پوشه build.gradle در پروژه خویش اضافه کنیم:

android {

compileSdkVersion 29

buildToolsVersion \"29.0.2\"

defaultConfig {

applicationId \"com.tomerpacific.example\"

minSdkVersion 15

targetSdkVersion 29

versionCode 1

versionName \"1.0\"

testInstrumentationRunner \"androidx.test.runner.AndroidJUnitRunner\"

dataBinding { //<-------

enabled = true

}

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile(\'proguard-android-optimize.txt\'), \'proguard-rules.pro\'

}

}

}
آنگاه که پروژه خویش را مجدد فعال‌ساز‌ی کردیم خواهیم توانست کلاس مرتبط با داده های خویش را ساخت‌و‌ساز کنیم که از آن برای دیتا بایندینگ لایه خویش به کارگیری خوا هیم کرد.

package com.tomerpacific.example


import android.graphics.drawable.Drawable


data class ButtonData(val buttonText: String, val buttonImageSrc : Drawable)
به طبع بدین نکته دقت داشته باشید  رایاپارس که کلاس ButtonData ما دارنده دو فیلد میباشد:

buttonText که در ذیل تصویر ما نمایش داده میشود.

button Image Src که مسئولیت تصویر دکمه مارا بر عهده داراست.

در شرایطی که ما مستلزم داده های بیشتری باشیم application فقط کافی میباشد که فیلدهای بیشتری را به کلاس خویش اضافه کنیم.



Data binding حقیقی وواقعی در اندروید( نصیب اولیه)
در مرحله آتی ما نیاز داریم که یک متغیر خصوصیت را به لایه خویش اضافه کنیم تا در‌پی از آن استعمال کنیم. این متغیر به کلاس داده ما پیوند می خورد که ما آن را ساخت‌و‌ساز کردیم. برای اعمال این فعالیت دو عمل میباشد که ما می بایست آنان‌را ایفا دهیم:

-          عنصر لایه روت خویش را در تگ لیوت در اختیار بگذاریم.

-          یک تگ داده را اضافه کنیم که مشتمل بر تعریف‌و‌تمجید متغیر ما میباشد(buttonData).
android:layout_width=\"match_parent\"

android:layout_height=\"match_parent\">
android:id=\"@+id/textView2\"

android:layout_width=\"wrap_content\"

android:layout_height=\"wrap_content\"

android:text=\"Example\"

android:textSize=\"30dp\"

app:layout_constraintLeft_toLeftOf=\"parent\"

app:layout_constraintRight_toRightOf=\"parent\"

app:layout_constraintTop_toTopOf=\"parent\" />

android:layout_width=\"wrap_content\"

android:layout_height=\"wrap_content\"

android:layout_gravity=\"center_horizontal\"

android:orientation=\"vertical\"

app:layout_constraintBottom_toBottomOf=\"parent\"

app:layout_constraintEnd_toStartOf=\"@+id/linearLayout3\"

app:layout_constraintStart_toStartOf=\"parent\"

app:layout_constraintTop_toBottomOf=\"@+id/textView2\">

android:layout_width=\"100dp\"

android:layout_height=\"100dp\"

android:adjustViewBounds=\"true\"

android:scaleType=\"centerInside\"

android:src=\"@drawable/android\">

android:layout_width=\"match_parent\"

android:layout_height=\"wrap_content\"

android:gravity=\"center_horizontal\"

android:text=\"Image Text\"

android:textSize=\"16sp\" />
android:id=\"@+id/linearLayout3\"

android:layout_width=\"wrap_content\"

android:layout_height=\"wrap_content\"

android:layout_gravity=\"center_horizontal\"

android:orientation=\"vertical\"

app:layout_constraintBottom_toBottomOf=\"parent\"

app:layout_constraintEnd_toEndOf=\"parent\"

app:layout_constraintStart_toStartOf=\"parent\"

app:layout_constraintTop_toBottomOf=\"@+id/textView2\"

app:layout_constraintVertical_bias=\"0.504\">



android:layout_width=\"100dp\"

android:layout_height=\"100dp\"

android:adjustViewBounds=\"true\"

android:scaleType=\"centerInside\"

android:src=\"@drawable/android_p_logo\">

android:layout_width=\"match_parent\"

android:layout_height=\"wrap_content\"

android:gravity=\"center_horizontal\"

android:text=\"Image Text\"

android:textSize=\"16sp\" />






android:id=\"@+id/linearLayout2\"

android:layout_width=\"wrap_content\"

android:layout_height=\"wrap_content\"

android:layout_gravity=\"center_horizontal\"

android:orientation=\"vertical\"

app:layout_constraintBottom_toBottomOf=\"parent\"

app:layout_constraintEnd_toEndOf=\"parent\"

app:layout_constraintHorizontal_bias=\"0.200\"

app:layout_constraintStart_toEndOf=\"@+id/linearLayout3\"

app:layout_constraintTop_toBottomOf=\"@+id/textView2\"

app:layout_constraintVertical_bias=\"0.504\">
android:layout_width=\"100dp\"

android:layout_height=\"100dp\"

android:adjustViewBounds=\"true\"

android:scaleType=\"centerInside\"
android:src=\"@drawable/android_studio_icon\">
android:layout_width=\"match_parent\"

android:layout_height=\"wrap_content\"

android:gravity=\"center_horizontal\"

android:text=\"Image Text\"

android:textSize=\"16sp\" />
اعتنا داشته باشید که هم اکنون خواهیم توانست شما‌را از لایه مهم قبل خویش حذف کنیم به این دلیل که آن را به تگ لایه روت خویش منتقل کرده ایم. ضمن این متغیری که ما آن را اضافه کرده ایم به طور بی واسطه به کلاس داده ما متصل گردیده‌است.

چرا برای شروع برنامه نویسی Google Flutter را انتخاب کنیم؟

سالهای اخیز قاب ورک هایی که بضاعت ایجاد کرد نرم افزار های اندروید طراحی اپلیکیشن در مشهد یا این که ios را دارا‌هستند ارتقاء یافته میباشد. هریک از این مورد ها کوشش و تجارب کاربری متفاوتی را عرضه می‌نمایند. Google Flutter یکی‌از فریمورک‌های تازه درین حوزه میباشد. از آنجایی که‌این فریمورک از جاوااسکریپت تحت عنوان یک پل برای گسترش‌دهندگان به کار گیری نمی‌نماید رایاپارس (مانند ری‌اکت نیتیو)، بسیار گزینه منحصر به فرد به شخصی میباشد.


مسیر یادگیری و آغاز فلاتر (Flutter) چه‌گونه میباشد؟ 

برای یادگیری فلاتر می بایست این مسیر رو دنبال فرمایید:


شناخت به مبانی کامپیوتر: مفاهیمی مثل طرز کوشش و کاربرد کامپایلر یا این application که مباحث معمولی‌خیس مثل شناخت با طریق کوشش سیستم برهان، CPU، Memory و …

احاطه به مفاهیم شی گرایی

شناخت با لهجه دارت (Dart)

شناخت با طریق همت فریمورک Flutter

شناخت با مفاهیم State Management و Widget

حصول تخصص در مورد‌های متفاوت فریمورک فلاتر مثل معماری‌های قابل انعطاف افزاری، رئیس Stateها، افزونه‌ها و …

و…

اعتنا: کلیه این مورد ها در عصر کارشناس فلاتر ما توضیح داده گردیده اند.


برای استارت یادگیری فلاتر چکار کنیم؟

برای عمل با فلاتر میتوانید از سیستم کار های macOS، Linux، Windows یا این که Chrome Operating System به کار گیری نمائید. در حالی که میتوانید از هر ویرایشگری با زنجیره ابزار Flutter به کارگیری فرمائید، افزونه های IDE برای IntelliJ IDEA، Android Studio و Visual Studio Code وجود دارااست که چرخه پیشرفت را راحت خیس می نماید.


تهیه اطراف بسط شما

بسته نصبی را برای سیستم برهان دستگاه گسترش خویش دانلود فرمائید تا واپسین ورژن استوار Flutter SDK را اخذ فرمایید.

بسته نصبی را در محل دلخواه extract نمایید.

ابزار flutter را به مسیر خویش اضافه فرمائید.

امر flutter doctor را اعمال نمائید، که به شما درباره‌ی هر سیرتکامل ایراد در نصب فلاتر هشدار می‌دهد.

تعلق های(dependency) جا افتاده را نصب فرمایید.

IDE خویش را با extension یا این که افزونه Flutter تهیه و تنظیم فرمایید.

آزمایش و نظارت یک اپلیکیشن

برای اجرای پروژه خویش تحت عنوان یک نرم افزار گوشی، می بایست از یک کدام از مورد های پایین استعمال فرمائید:


مشابه ساز iOS یا این که مشابه ساز اندروید را جاری ساختن نمایید.

یک دستگاه iOS یا این که Android را برای پیشرفت فعال‌ساز‌ی فرمائید.

کد خویش را تحت عنوان یک اپ اینترنت انجام فرمایید.

در غایت ، میتوانید کد خویش را تحت عنوان یک نرم‌افزار دسکتاپ اعمال فرمایید.

حتی در صورتی‌که غرض آخری شما تلفن همراه باشد، به کار گیری از یک نرم‌افزار اینترنت یا این که دسکتاپ در زمان پیشرفت به شما این مزیت را می‌دهد که بتوانید اندازه اپ را تغییر‌و تحول دهید و ملاحظه کنید که با اندازه های گوناگون برگه اکران چه گونه به حیث میرسد. در صورتیکه رایانه دیرین‌تری دارید، ورژن اینترنت یا این که دسکتاپ نیز سریع‌خیس از مشابه‌ساز Android یا این که مشابه‌ساز iOS بارگیری می شود.


اعتنا: برای تشکیل داد و تست بر روی iOS Simulator یا این که یک دستگاه iOS، می بایست از macOS با Xcode استعمال نمائید. همینطور، حتی در شرایطی که قصد دارید از VS Code به‌تیتر IDE اساسی خویش به کار گیری نمایید، معمولی‌ترین خط مش برای اخذ Android SDK و مشابه‌ساز اندروید، نصب Android Studio میباشد.

آشنایی با سرویس ها در اندروید

در اپ نویسی و پیشرفت نرم افزار های اندرویدی، ما برای پردازش های وقت گیر طراحی اپلیکیشن در مشهد  یا این که عملیات هایی که در دور‌نما فعالیتی دیگر همچنان در هم اکنون ایفا می باشند از کامپوننتی به نام خدمت استعمال میکنیم.
خدمات هیج ارتباطی با رابط کاربری نداشته رایاپارس  و بدور از دیده مخاطب به عمل خویش ادامه می‌دهند.
درین قسمت شما application بایستی با مفاهیم پایین آشنا گردید:
مضمون‌ Thread یا این که نخ
معنی پردازش Process
معنا Worker, Main Thread
شناخت با BoundService
شناخت با IntentServices
استعمال از WorkerManger Architecture Component
افزودن workerManager به نرم افزار
در اختیار گرفتن ورودی و خروجی WorkerManager
در دست گرفتن اجرا شغل های به طور زنجیره ایی (Chain your work)
در دست گرفتن حالت شغل های درحال اعمال (background task status)
اعمال فعالیت در وضعیت خاص (Work Constraints)
قدم نهم: عمل با کتابخانه های کاربردی
در‌این قسمت شما بایستی با کتابخانه های ذیل آشنا گردید ( در مقاله ها آینده به طبع در باب شایسته ترین کتابخانه های اندروید با شما سخن کرده و به پژوهش هرمورد خوا هیم پرداخت.)

Glide
Gson
Calligraphy
ImageSlider
io.realm
آنگاه مباحث تحت نیز بایستی گزینه اعتنا شما قرار بگیرد:
فعالیت با نمودار ها به طور اجمالی MpChart
فعالیت با نقشه به صروت اجمالی MapBox
پرداخت انلاین Zarinpal
Chrome Custom Tab
DataBinding
عده بندی
با ظهور و توسعه موبایل های هوشمند به خصوص تلفن همراه های اندرویدی بازار نو و بزرگی برای برنامه نویس ها و متخصصان کامپیوتر ساخت و ساز شد. به ندرت با ارتقا کاربرد این دست از تلفن های یار، نیاز به قابل انعطاف افزارهای متعدد اندروید روز آپ تو دیت عظیم خیس شد و اپلیکیشن نویسی اندروید را به یک کدام از پردرآمد ترین و دوست داستنی ترین شاخه های نرم‌افزار نویسی تبدیل کرد.
شما برای فراگیری نرم‌افزار نویسی جاوا اندروید نیاز به یک مسیر منطقی و تماما آزمایش گردیده دارید. ما درین نوشته ی علمی کوشش کردیم ۹ گام مهم برای یادگیری اپ نویسی اندروید با گویش جاوا را برای شما کاملا تفصیل دهیم.

کامپوننت های اصلی اندروید و کاربرد آن ها

در‌حالتی که از سیستم دلیل اندروید به کارگیری می‌کنید و یا این که می‌خواهید  طراحی اپلیکیشن در مشهد درین حوزه نرم افزار نویسی نمایید با دقت به پیشرفت نرم‌افزار های اندرویدی بایستی با اجزا آن آشنا گردید ، رایاپارس  کامپوننت های مهم اندروید از ارکان مهم تشکیل داد یک نرم‌افزار اندرویدی میباشند این کامپوننت ها مشتمل بر Activity،Views،Services،Content Providers می گردند.
آنچه در‌این نوشته خوا هیم داشت
Activity
services
Broadcast Reciver
content providers
وظیفه پوشه manifest
عده بندی
مولف
عطیه جلیلی
Activity
یک activity یا این که عمل نشانه دهنده یک برگه منفرد با یک رابط استفاده کننده application  میباشد مثلا ، یک اپ آدرس اینترنتی ممکن میباشد فعالیتی داشته باشد که لیستی از نشانی اینترنتی های تازه را نماد دهد ، کار دیگری برای تایپ کردن آدرس اینترنتی و عمل دیگری برای تلاوت نشانی اینترنتی ها داشته باشد اگرچه این کار ها با هم همیاری می نمایند تا تجربیات کاربری منسجمی را در نرم افزار پست الکترونیک ساخت‌و‌ساز نمایند ، با این اکنون از همدیگر جدا میباشند به همین ترتیب در حالتی که اپ آدرس اینترنتی اذن دهد ، نرم افزار دیگری هم میتواند هر مورد از این شغل ها را آغاز نماید.

برای مثال ، یک نرم‌افزار دوربین می‌تواند فعالیتی را در نرم‌افزار پست الکترونیک استارت نماید که پست الکترونیک جدیدی را ساخت می نماید تا مخاطب بتواند یک عکس را به اشتراک بگذارد . در صورتی‌که طرحی بیش تر از یک شغل داشته باشد ، یکی‌از آنان بایستی تحت عنوان فعالیتی که هنگام فعال سازی اپ ارائه میشود نشانه گذاری خواهد شد

یک کار بصورت تحت کلاس کلاس Activity بصورت ذیل طراحی می‌گردد:
{}public class MainActivity extends Activity 
اینک ببینیم که یک Activity را چه گونه می قدرت ساخت. در واقعیت برای ایجادActivity ها دو رویه وجود داراست : رویه نخستین که به طور دینامیک و پویا میباشد از اپ نویسی جاوا اندروید  به کار گیری می‌شود و خط مش دوم از XML به کارگیری میشود. روشی که بیشتر استعمال میشود، پیاده سازی Activity ها با استعمال از XML میباشد چون این شغل سهل وآسان خیس میباشد همینطور با تبعیت از استعمال از این طرز کد های مرتبط با GUI یا این که دور و بر گرافیکی را از کد های مرتبط با شیوه کوشش عنصرها درون این دور و اطراف گرافیکی که در لهجه جاوا نوشته می گردند را می قدرت از یکدیگر غیر وابسته ایجاد کرد و بااین طرز Debug کردن نرم افزار هم سهل و آسان خیس میگردد.
services
یک service یا این که خدمت به دلایل متعدد، جایی برای هدف ها همگانی برای اجرای اپ در بگراند میباشد. خدمت کامپوننتی میباشد که برای ایفا عملیات زمان بر بازه زمانی یا این که اجرا فعالیت برای فرآیندهای از راه و روش بدور در بگراند انجام میشود. یک خدمت رابط کاربری ارائه نمی دهد. از جمله ، ممکن میباشد یک خدمت در دور‌نما موسیقی را پخش نماید ، در حالی که استفاده کننده در نرم‌افزار دیگری میباشد ، یا این که ممکن میباشد اطلاعات را از روش کانال اخذ نماید فارغ از اینکه تعامل مخاطب با یک شغل مسدود گردد ، در‌این‌صورت‌ یک عمل دیگر ، می‌تواند خدمت را استارت کرده و اذن دهد تا برای تعامل با آن جاری ساختن خواهد شد یا این که به آن متصل خواهد شد. در واقع دو خدمت تماماً متمایزکه جدید آغاز گردیده اند در امر روش مدیر یک اپ به سیستم میگویند که تا وقتیکه کارشان به نقطه پایان نرسد ، آن ها را فعال نگه دارااست. که می‌تواند همگام سازی بعضی از اطلاعات در دور‌نما یا این که پخش موسیقی حتی بعداز رخنه‌ مخاطب از نرم‌افزار همچنان باشد. همگام سازی اطلاعات در دور‌نما یا این که پخش موسیقی نیز هم پا میباشد.