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



  • ۲۰
  • آبان

جلسه ۵۸ : RenderScript در اندروید

  • دسته‌بندی‌ها :
جلسه ۵۸ : RenderScript در اندروید
    • جزئیات
    • نوع محتواآموزش تصویری

      مقدمه

      با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن . و کاربرانی که دوره کامل آموزش برنامه نویسی اندروید را دنبال می کنند. معمولا برنامه های اندروید به گونه ای طراحی شده اند که حداقل منابع را برای اپلیکیشن ها مصرف می کنند. اما برخی از برنامه های کاربردی از جمله برخی از بازی های ۳D نیاز به پردازش سطح بالا در اندروید دارند.برای ارائه این برنامه های کاربردی RenderScript در اندروید معرفی شده است. این فریم ورک مبتنی بر اندروید است که برای اجرای برنامه هایی که کارایی بالایی داشته و عملیات محاسباتی سنگینی را انجام می دهند استفاده می شود. توسعه این فریم ورک در (Native Development Kit(NDK ارائه شده توسط آندروید انجام می شود. در ادامه برای آشنایی بیشتر با RenderScript در برنامه نویسی اندروید با ما همراه باشید.

      RenderScript در برنامه نویسی اندروید

      در این مبحث ما شما را با عملکرد و چگونگی استفاده از RenderScript در اندروید آشنا خواهیم کرد.

      از RenderScript در برنامه نویسی اندروید برای انجام فعالیت های زیر در اپلیکیشن ها استفاده می شود:

      • ۳D Rendering
      • Image Processing
      • Computational Photography
      • Computer Vision

      RenderScript چگونه کار می کند

      فریم ورک RenderScript عمدتا بر اساس محاسبات موازی داده است.

      این قابلیت حجم پردازش اپلیکیشن شما را بر روی تمام پردازنده های دستگاه تقسیم می کند.

      در دستگاه هایی که از پردازنده های چند هسته ای استفاده می کنند این پردازش در تمام هسته ها تقسیم می شود.

      با این قابلیت شما می توانید برنامه ها و الگوریتم های بسیار پیچیده را بدون نگرانی از پردازش آن بنویسید.

      شروع کار

      برای استفاده از فریم ورک RenderScript شما باید دو قابلیت زیر را داشته باشید:

      •  RenderScript Kernel
      • RenderScript APIs

      A RenderScript Kernel

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

      kernel (هسته) در واقع یکی از بخش های اصلی و بسیار مهم سیستم عامل است.

      به طور مشابه برای اجرای فریم ورک RenderScript ما نیاز به یک اسکریپت نوشته شده به نام Kernel داریم.

      RenderScript در اندروید برای مدیریت تمامی پردازش ها و استفاده از قابلیت های بیشتر سیستم عامل اندروید استفاده می شود.

      Kernel Script با استاندارد C-99 و با زبان C نوشته شد است.

      یک فایل هسته ی RenderScript معمولا در فایل rs. قرار داده می شود، و هر فایلی به عنوان یک script شناخته می شود.

      هسته RenderScript می تواند شامل عناصر زیر باشد:

      ردیفعناصر و توضیحات آن
      ۱A Language declaration

      نسخه زبان RenderScript Kernel را که در این اسکریپت استفاده شده مشخص می کند.

      ۲A package declaration

      این اعلام نام بسته کلاس جاوا است که توسط این کد هسته تحت تاثیر قرار می گیرد.

      ۳Invokable functions

      شما می توانید از این توابع در کد جاوای خود با آرگومان های مورد نظر استفاده کنید.

      ۴Script Global Variables

      این عناصر همانند متغییر هایی که در زبان c و ++c تعریف می شود می باشند و شما می توانید به این متغییرها در کد جاوای برنامه ی خود دسترسی داشته باشید.

      این یک کد ساده از Kernel است:

      مثال : 

      API های RenderScript

      اگر می خواهید از RenderScript در API خود استفاده کنید شما می توانید با دو روش زیر این کار را عملی کنید:

      ردیفAPI و توضیحات آن
      ۱android.renderscript

      این API ها در دستگاههایی با Android 3.0 و بالاتر اجرا می شوند.

      ۲android.support.v8.renderscript

      این API ها در دستگاههایی با Android 2.2 و بالاتر اجرا می شوند.

      برای اینکه اندروید از این کتابخانه ها پشتیبانی کند به ابزار زیر نیاز دارید:

      • Latest Android SDK Tools version
      • Latest Android SDK Build-tools version

      نحوه استفاده از کتابخانه یی که در RenderScript پشتیبانی می شوند

      ابتدا فایل project.properties را در پروژه ی خود باز کرده و کدهای زیر را به آن اضافه کنید:

      مثال : 

      اکنون کلاس اصلی که در آن از RenderScript استفاده کرده اید را باز کرده و کد import زیر را به آن اضافه کنید:

      مثال : 

      با این اقدام می توانیم ویژگی های زیر را به فایل project.properties اضافه کنیم:

      ردیفویژگی ها پروژه و توضیحات آن
      ۱renderscript.target

      این نسخه کد بایت را تولید می کند.

      ۲renderscript.support.mode

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

      ۳sdk.buildtools

      این نسخه Android SDK که ابزارها را برای استفاده ایجاد می کند را مشخص می کند.

      حالا می توانید توابع RenderScript Kernel را فراخوانی کرده و بدون مشکل در پردازش، الگوریتم ها و محاسبات پیچیده را در برنامه ی خود اجرا کنید.

      کلام آخر

      در حالت عادی سیستم عامل اندروید برنامه های سنگین و با محاسبات سطح بالا را به خوبی اجرا نمی کند، اما شما می توانید از RenderScript در برنامه نویسی اندروید خود استفاده کرده و با استفاده کردن از تمام پردازنده های دستگاه، این مشکل را رفع کنید.

      در بخش بعدی به مبحث RSS در اندروید می پردازیم.

      QR:  جلسه ۵۸ : RenderScript در اندروید
      به اشتراک بگذارید