PDA

View Full Version : آیا نیازی به finish کردن اکتیویتی هست؟



EHSAN99100
شنبه 10 بهمن 1394, 18:51 عصر
سلام. من دارم روی یک اپلیکیشن کار می کنم که فیلم رو از روی sdcard پخش می کنه.

حالا سوالم اینجاست که آیا در مواردی که مثلا کاربر می خواد بره توی یک اکتیویتی دیگه و مثلا تنظیماتی انجام بده آیا نیازی هست که این اکتیویتی رو که توش هستم و فیلم رو داره پخش می کنه رو finish کنم ، یا نیازی به این کار نیست .

یا اگر کسی توضیح بده که اصولا چه زمانی باید از finish در اکتیویتی استفاده کنیم.

godofphp
شنبه 10 بهمن 1394, 19:17 عصر
اگه چرخه ی حیات اکتیویتی ها رو مطالعه کنید متوجه میشید که با خروج از یک اکتیویتی و ورود به یک اکتیویتی دیگه . اکتیویتی جاری به صورت خودکار بسته میشه و متد های pause , stop اون اجرا میشه
توی اندروید همیشه یک اکتیویتی در حال اجراست و امکان نداره دو اکتیویتی به طور همزمان اجرا شه

EHSAN99100
شنبه 10 بهمن 1394, 19:24 عصر
ضمنا تشکر از شما به خاطر جواب...من لایف سایکل اندروید رو خوندم ولی در چند موردش ابهام داشتم . مثلا اینکه :در این حالت چه اتفاقی برای منابع ما می افتد.فرض کنیم که اپلیکیشن من در حالت پخش ویدئو باشد که کاربر رو دکمه تنظیمات کلیک کند و وارد اکتیوتی تنظیمات شود. می دانیم که ویدئو منابع زیادی را برای پخش به خود اختصاص می دهد، در این صورت آیا نیازی به pause کردن، stop کردن و یا هر کار دیگری که این منابع را آزاد کند هست یا خود اندروید این کار را انجام می دهد؟

EHSAN99100
یک شنبه 11 بهمن 1394, 06:54 صبح
کسی نظری نداره؟

godofphp
چهارشنبه 14 بهمن 1394, 15:43 عصر
ضمنا تشکر از شما به خاطر جواب...من لایف سایکل اندروید رو خوندم ولی در چند موردش ابهام داشتم . مثلا اینکه :در این حالت چه اتفاقی برای منابع ما می افتد.فرض کنیم که اپلیکیشن من در حالت پخش ویدئو باشد که کاربر رو دکمه تنظیمات کلیک کند و وارد اکتیوتی تنظیمات شود. می دانیم که ویدئو منابع زیادی را برای پخش به خود اختصاص می دهد، در این صورت آیا نیازی به pause کردن، stop کردن و یا هر کار دیگری که این منابع را آزاد کند هست یا خود اندروید این کار را انجام می دهد؟
اگر ویدیو در یک اکتیویتی باشد که خود اندروید این کار را انجام میدهد یعنی با خروج از اکتیویتی ویدیو نگه داشته میشود و منابع هم آزاد میشود . ولی اگر توسط سرویس ها این کار انجام شود ممکن است با بیرون رفتن از برنامه همچنان عملیات انجام شده و همچنین منابع درگیر باشد .
مثل موزیک پلایر که با بیرون رفتن از برنامه همچنان موزیک در حال پخشه .