آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

فعال بودن یه قسمت حتی اگه بین activity ها جا به جا بشیم

MyNewName  11 سال پیش  11 سال پیش
0 0

سلام

من یه قسمت اپلیکیشن میخوام کاملا مجزا اجرا بشه

مثلا فرض کنید یه پلیر داریم

خب این پلیر اجراش مشکلی نداره ، اما میخوام طوری انجام بدم که اگه بین activity ها جا به جا شدیم ، روی اون پلیر تاثیر نذاره

یعنی به طور کلی پلیر کار خودش رو کنه و به فعالیت های اپلیکیشن اهمیتی نده

ممنون

0 0
اگر بخواهید بعد از اینکه برنامه بسته شد اون هنوز کار خودش رو ادامه بده میتونید از سرویس ها استفاده کنید (11 سال پیش)
0 0
نه دیگه اون مهم نیست بسته بشه یا نه فقط مهم اینه جا به جایی در activty ها مختل نکنه کارشو چه کنم ؟ (11 سال پیش)
0 0
از فرگمنت ها استفاده کن و در فرگمنت Main ت پلیر رو استارت کن... (11 سال پیش)
0 0
میشه بیشتر توضیح بدید ؟ ممنون (11 سال پیش)
0 0
توضیح بیشتر میشه آموزش فرگمنت، جستجو کن خیلی سادست. فرض کن یک اکتیویتی داری با یک لی اوت که قالب کارتن، بعد داخلش می تونی اکتیویتی های دیگرو نمایش بدی... (11 سال پیش)
+1 0
بعدش زمانی که از یک اکتیویتی به اکتیویتی دیگه میرم مشکلی برای اون ایجاد نمیشه ؟ به کار خودش ادامه میده ؟ به این دلیل میپرسم چون بخش نباید قطع بشه (11 سال پیش)
0 0
متوجه هستم دوست عزیزم، نه مشکلی ایجاد نمیکنه... فرگمنت یاد بگیر خیلی به دردت می خوره (11 سال پیش)
0 0
در مورد Notification ها جستجو کن ، معمولا برنامه های پخش کننده زمانی که حتی خود برنامه رو هم از روی تسک حذف می کنی به صورت Notification اجرا میشن و به پخش ادامه می دن . (11 سال پیش)
0 0
این حالت زمانی است ، که شما از سرویس استفاده کنید ، زمانی که برنامه شما بسته بشه ، سرویس کار خودش رو انجام میده (11 سال پیش)
0 0
خب بلاخره برای این کار سرویس رو انجام بدم یا فرگمنت ؟ چون میخوام اگه برنامه بسته شد ، پخش هم قطع بشه (11 سال پیش)
0 0
ببین دوست عزیز ، هر امکانی که توی کد نویسی وجود داره برای استفاده خاص خودش هست ، تو نمیتونی کل برنا مه ات رو با فرگمنت بنویسی و بیای ، تمامی فرگمنت ها رو توی یه عدد اکتویویتی جا بدی ، این اصلا منتقی نیست ، اگر حجم برنامه بالا بره ، در اولین لحظات برنامه کرش میکنه و هزاران مشکل دیگه رو بوجود میاره (11 سال پیش)
0 0
من کلا 3 تا اکتیویتی دارم یک پلیر که دوستان میگن باید از فرگمنت استفاده بشه همین (11 سال پیش)
0 0
دوست گرامی haerii: چرا منتقی نیست؟! فرگمنت ساخته شده برای چی پس؟ چرا باید ارور بده و کرش کنه وقتی کد کاملا سالمه؟ دوم اینکه وقتی یه برنامه ای بسته میشه چرا آهنگش باید هنوز پخش بشه؟! تازه اگرم بخواد بشه ایشون داره میگه نمیخاد بشه! اصلا منطق مگه معنی داره تو این کار؟! ایشون میتونه یک اکتیویتی بسازه، اصلنم نبندش، روی اون اکتیویتی های دیگه رو با اینتنت صدا بزنه... اینجوری اکتیویتی اصلی که آهنگ در حال پخش هم داره به کار خودش ادامه میده... به اینا میگن راه! (11 سال پیش)
0 0
ممنون آقای علیزاده راه حل نهایی چی میتونه باشه ؟ ممنون (11 سال پیش)
0 0
محسن جان شما زمانی که یه activity رو میبندی ، تمام فضای اشغال شده توسط اون اکتیویتی از حافظه پاک میشه ، این حجم شامل متغییر ها و بیت مپ و .. هست ، پس اگر قرار باشه حجم زیادی از اطلاعات رو در یک اکتیویتی قرار داد ، ممکنه اون اکتیویتی به دلیل با لارفتن حجم heap باعث کرش برنامه بشه ، درسته که برای انجام یک کار شما میتونید هزاران راه رو برید ، ولی اون راه باید بهترین راه باشه ، بعد از همه این حرف ها ، خب شما میتونید زمان بسته شدن برنامه سرویس رو متوقف کنید . انتخاب با شماست ! (11 سال پیش)
0 0
محمد جان شما با توجه به حجم کاریت و چیزایی که بلدی کارتو راه بنداز. اگر فقط چند اکتیویتی ساده داری توی اکتیویتی اصلیت پخش رو شروع کن و سایر اکتیویتی هاتو با اینتنت startactivity کن. اینطوری صفحه اصلیت هیچوقت بسته نمیشه. (11 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
محسن علیزاده  11 سال پیش
0 0

کد صفحه اصلیت:

public class AndroidMediaPlayerExample extends Activity {
private MediaPlayer mediaPlayer;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

//set the layout of the Activity
setContentView(R.layout.activity_main);

//playMusic
play();

//go other activity
Button btn =(Button) findViewById(R.id.btn);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
startActivity(new Intent(AndroidMediaPlayerExample.this , NextActivity.class));
}
});

}
}

public void play(){
mediaPlayer = MediaPlayer.create(this, R.raw.sample_song);
mediaPlayer.start();
}
}

 

 

0 0
ممنون اینو قبلا استفاده کردم اما مشکل اینجاست اگه در صفحه دوم باشیم و play کنیم ، بعدش دکمه back رو بزنیم میپره (11 سال پیش)
0 0
اگه میخای کنترلشو تو همه صفحات داشته باشی باید از فرگمنت یا سرویس که دوستمون گفتن استفاده کنی... شما فقط گفتی میخای همه جا پخش بشه (11 سال پیش)
0 0
بله مسئله اصلی همینه میخوام در همه صفحات بشه کنترلش کرد چون ui فعال میشه و کاربر باید بتونه کنترل کنه (11 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .