دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۱۹
  • آبان

جلسه ۲۷ : مدیریت صوت (Audio Manager) در اندروید

  • دسته‌بندی‌ها :
جلسه ۲۷ : مدیریت صوت (Audio Manager) در اندروید
    • جزئیات
    • نوع محتواآموزش تصویری

      مقدمه

      با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن . و کاربرانی که دوره کامل آموزش برنامه نویسی اندروید را دنبال می کنند. در بخش قبلی به قابلیت ضبط و پخش صدا در اندروید اشاره کردیم، علاوه بر این، قابلیت Audio Manager در اندروید به شما اجازه ی مدیریت و تغییرات volume صدا را می دهد،با این قابلیت شما می توانید انواع حالت های سکوت ،ارتعاش ، صدای بلند و … را روی صدای مورد نظر اعمال کنید. برای این منظور اندروید کلاس AudioManager را فراهم می کند که به شما اجازه ی دسترسی به این تغییرات را می دهد، برای آشنایی بیشتر با قابلیت مدیریت صدا در اندروید در ادامه ی مباحث این بخش با ما همراه باشید.

      قابلیت Audio Manager در اندروید

      در ادامه ی مباحث برای آشنایی شما با مدیریت صدا در اندروید ، اصول کار و انجام یک مثال ساده در این زمینه را ارائه کرده ایم.

      ساختار کار

      ابتدا باید با استفاده از متد () getSystemService  یک شی از کلاس AudioManager ایجاد کنید.

      ساختار استفاده از کلاس AudioManager :

      مثال : 

      می توانید از متد setRingerMode برای تنظیم پروفایل صدا یا رینگر دستگاه خود استفاده کنید.

      ساختار :

      مثال : 

      متد setRingerMode یک عدد صحیح را به عنوان یک پارامتر می گیرد.

      برای هر حالت یک عدد صحیح اختصاص داده می شود که بین حالت های مختلف متفاوت خواهد بود.

      حالت های ممکن:

      ردیفحالت و توضیحات مربوطه
      ۱RINGER_MODE_VIBRATE

      این حالت دستگاه را روی حالت ویبره (vibrate) می برد

      ۲RINGER_MODE_NORMAL

      این دستگاه را در حالت عادی قرار می دهد.

      ۳RINGER_MODE_SILENT

      این دستگاه را روی حالت سایلنت (silent) می برد.

      پس ار تنظیم حالت می توانید متد () getRingerMode را فرخوانی کنید.

      با استفاده از متد فوق می توانید وضعیت سیستم را دریافت کنید که ساختار به صورت زیر است:

      مثال : 

      به غیر از متد getRingerMode، متد های دیگر موجود در کلاس AudioManager برای کنترل حجم و سایر حالت ها وجود دارد.

      این متدهای به شرح زیر است:

      ردیفمتد و توضیحات مربوطه
      ۱adjustVolume(int direction, int flags)

      این متد volume صدا را تنظیم می کند.

      ۲getMode()

      این متد حالت جاری صدا را بر می گرداند.

      ۳getStreamMaxVolume(int streamType)

      این متد حداکثر volume صدا را برمی گرداند.

      ۴getStreamVolume(int streamType)

      این متد volume جاری را برمی گرداند.

      ۵isMusicActive()

      این متد فعال بودن یک موزیک را چک می کند.

      ۶startBluetoothSco()

      این متد اتصال bluetooth SCO audio را شروع می کند.

      ۷stopBluetoothSco()

      این متد اتصال bluetooth SCO audio را متوقف می کند.

      مثال

      این مثال چگونگی کار با AudioManager را نشان می دهد.

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

      مراحل انجام کار

      مراحلتوضیحات
      ۱مراحل ایجاد برنامه در اندروید استدیو را طبق بخش های قبلی دنبال کرده و نام پکیج را com.pvlearn.myapplication قرار بدهید.
      ۲به محتوای فایل src/MainActivity.java کد لازم برای مدیریت صدا را اضافه کنید.
      ۳طراحی لازم را برای مدیریت صدا به فایل  res/layout/activity_main.xml اضافه کنید.
      ۴اجزای رشته ای مورد نیاز را به res/values/string.xml اضافه کنید.
      ۵مجوزهای لازم را به فایل AndroidManifest.xml اضافه کنید.
      ۶برنامه را اجرا کنید تا شبیه ساز اندروید نتیجه را نمایش دهد.

      محتوای فایل src/MainActivity.java:

      مثال : 

      محتوای فایل activity_main.xml:

      مثال : 

      محتوای فایل Strings.xml:

      مثال : 

      محتوای فایل AndroidManifest.xml:

      مثال : 

      اجرای برنامه

      برای اجرای برنامه ی اندرویدی خود یکی از فایل های activity در برنامه ی خود کلیک کنید.

      سپس روی نماد  (Run) از نوار ابزار برای شروع اجرای برنامه کلیک کنید.

      اکنون روی دکمه ی silent ، سپس آیکون سایلنت را در نوار اعلام مشاهده می کنید:

      Audio Manager در اندروید

      Audio Manager در اندروید

      سپس روی ring کلیک کنید تا وضعیت را مشاهده کنید:

      Audio Manager در اندروید -تست ring

      Audio Manager در اندروید -تست ring

      سپس روی دکمه ی Vibrate کلیک کنید تا نتیجه را به صورت زیر مشاهده کنید که آیکون ویبره در نوار اعلان نمایش داده می شود:

      مدیریت صدا در اندروید

      مدیریت صدا در اندروید

      کلام آخر

      همانطور که شما می توانید صداهای مختلف را در اندروید ضبط و ذخیره کنید، می توانید با استفاده از قابلیت Audio Manager در اندروید انواع حالت های صدا را در دستگاه اندروید خود مدیریت کنید، قابلیت مدیریت صدا در اندروید از ویژگی های منحصر به فرد این سیستم است.

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

      QR:  جلسه ۲۷ : مدیریت صوت (Audio Manager) در اندروید
      به اشتراک بگذارید