اجرای آهنگ با استفاده از سرویس در اندروید

سلام دوستان در این سری از آموزش برنامه نویسی اندروید به آموزش اجرای آهنگ با استفاده از سرویس در اندروید می پردازیم در صورتی که موزیک در ترد اصلی اجرا شود دیگر نمی توانید با برنامه کار دیگری انجام دهید یعنی برنامه فقط می تواند یک کاری را انجام دهد ولی اگر از سرویس استفاده کنیم همانطور که در مبحث سروریس توضیح داده بودیم سرویس در background اجرا می شود پس نتیجه میگریم می توان از بخش های دیگر اپلیکیشن استفاده کرد در ادامه می توانید پیش نمایشی از آن را مشاهده کنید با ما همراه باشید (دوستان دقت کنید این آموزش یک پروژه کامل Music Player است).
 

 
در اینجا پروژه ما به چهار بخش تقسیم می شود.

  • ساخت Layout برای قرار گرفتن اجزا.
  • دریافت File های آهنگ و نمایش آن در ListView
  • اجرای آهنگ در Background توسط سرویس
  • استفاده از Runtime Permission برای درخواست استفاده از Storage

حالا وارد فایل Build.gradle از نوع Module شده و در بخش dependencies خط زیر را اضافه کنید.

پروژه را sync کنید ممکن است به خطا بخورید بهتر است واژه Gradle را در سایت جستجو کنید.
وارد فایل AndroidManifest.xml شده و دسترسی زیر را اضافه کنید.

در اینجا ما در  Layout اصلی که نام آن برابر با activity_list_of_songs.xml است کد های زیر را قرار داده ایم.

در بالا صفحه را به دو قسمت تقسیم کردی و در بخش پایین یک ListView و یک CardView در بالا قرار گرفته است.
باید شکل ظاهری هر کدام از آیتم ها را نیز ایجاد کنید.
پس یک فایل به نام list_item.xml ایجاد کرده و کد های زیر را در آن قرار دهید.

علت این که ما این کار را انجام دادیم تا شما بعد بتوانید آن را سفارشی سازی کنید به طور مثال یک عکس در کنار هر آهنگ نیز قرار دهید.
باید یک getter و setter ایجاد کنیم تا نام و مسیر اصلی هر آهنگ را به دست بیارد.
یک فایل به نام SongObject.java ایجاد کرده و کدهای زیر را در آن قرار دهید.

چون داریم از شکل ظاهری سفارشی استفاده می کنیم باید آداپتور سفارشی نیز داشته باشیم.
یک فایل جاوا به نام AdapterClass.java ایجاد کرده و کد های زیر را در آن قرار دهید.

همانطور که گفتیم از سرویس برای اجرای آهنگ استفاده خواهیم کرد. یک فایل جاوا به نام MusicService.java ایجاد کرده و کدهای زیر را در آن قرار دهید.

و در آخر هم کد مربوط به ListOfSongsActivity.java (اکتیویتی اصلی ما) همانند زیر می شود.

حالا باید وارد AndroidManifest.xml شده و Service که در بالا تعریف کردیم را ریجستر کنیم.

 
 
این آموزش هم به پایان رسید.
 
موفق و موید باشید.

مطالعه بیشتر