انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
پخش ناخواسته آهنگ وقتی صفحه نمایش خاموش می شود (اندروید)

پخش ناخواسته آهنگ وقتی صفحه نمایش خاموش می شود (اندروید)

#2
سلام.
(۱۳۹۴/۰۲/۱۸, ۱۰:۵۸ ق.ظ)'00Alireza00' نوشته: گویا دلیلش اینه که با روشن کردن صفحه نمایش گوشی یا باز کردن قفل گوشی متد onCreate مجدداً اجرا میشه و باعث میشه فایل صوتی هم اجرا بشه...

 

نباید این طور باشد. چون شاید مثلا برنامه اندروید ما یک بازی باشه و قرار نیست که اگر کاربر موقتا صفحه نمایش گوشی را خاموش کرد و بعد دوباره به سراغ گوشی رفت، مجبور شود که مرحله را از اول آغاز کند. البته بازی هایی هستند که در روش onPause و onStop ، بازی را pause کرده و پیشرفت کاربر را ذخیره می کنند، ولی در کل، این موردی که شما تذکر دادید، نباید وجود داشته باشد. 
در واقع ما وقتی با خاموش کردن صفحه نمایش، یک برنامه اندروید را ترک می کنیم، با روشن کردن دوباره صفحه نمایش (و عبور از قفل، با رمز یا ...)، دوباره برنامه اندروید را در همان حالت می بینیم (منظورم برای برنامه هایی مثل بازی یا ... است که قبلا کاربر در آنها عملیات هایی را انجام داده، حتی اگر برای آنها حالت pause در نظر گرفته نشده باشد).

اکنون ببینیم که چه مواردی ممکن است که این حالت را به وجود بیاورند :

1- وقتی ما بدون خارج شدن از Activity ، دیگر آن را نمی بینیم (حالت stop)، یا بخشی از آن را در زیر Activity فعلی می بینیم (حالت pause)، معنی آن این است که Activity در پس زمینه است (یعنی سیستم عامل اندروید، اطلاعات Activity را در RAM نگه داشته). اکنون اگر سیستم عامل اندروید، RAM کم بیاورد، تعدادی از Activity ها در پس زمینه را به طور کامل می بندد (kill). بنابراین اگر بخواهیم دوباره وارد آن شویم، Activity از نو اجرا می شود (اجرای دوباره روش onCreate). اما این حالت، برای مورد شما اتفاق نیفتاده، زیرا اگر Activity توسط سیستم عامل kill شده بود، با ورود دوباره به برنامه اندروید، دوباره همان Activity را نمی دیدیم (یا اصلا کل برنامه اندروید توسط سیستم عامل بسته شده بود، یعنی kill کردن همه Activity های برنامه اندروید).

2- با چرخش گوشی، Activity از نو اجرا می شود. ممکن است که شما مثلا در حالت portrait (عمودی)، صفحه نمایش را خاموش کردید و بعد در حالت landscape (افقی) آن را روشن نموده اید، بنابراین به محض روشن شدن صفحه نمایش، Activity از نو اجرا می شود. راه حل آن هم، حفظ اطلاعات Activity در هنگام چرخش است :

کلید شماره 270

مورد دیگری به ذهنم نمی رسد. اگر دوستان مورد دیگری را تجربه کرده اند، خوشحال می شوم که تذکر بدهند.

bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.
پاسخ
 سپاس شده توسط 00Alireza00 ، شماره مجازی امارات


پیام‌های این موضوع
RE: پخش ناخواسته آهنگ وقتی صفحه نمایش خاموش می شود - توسط admin - ۱۳۹۴/۰۲/۱۸, ۱۲:۰۹ ب.ظ

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان