کاربرد تگ uses-feature در مانیفست

خانه » آموزش های کاربردی » کاربرد تگ uses-feature در مانیفست
کاربرد تگ uses-feature در مانیفست در این جلسه از سری مباحث آموزش برنامه نویسی اندروید ابتدا به بررسی کاربرد تگ uses-feature در برنامه نویسی اندروید پرداخته سپس جزئیات آن را با هم مرور می‌کنیم.
تگ uses-feature چیست و چه کاربردی دارد؟ به نام خدا. در جلسات قبل با فایل مانیفست (AndroidManifest.xml) و کاربردهای آن آشنا شده‌ایم. از جمله تعیین حق دسترسی‌ها (Permission)، آیکون و نام اپلیکیشن، تم برنامه و سایر اطلاعاتی که سیستم عامل اندروید برای بررسی اپلیکیشن به آنها نیاز دارد.

یکی دیگر از قابلیت‌هایی که در مانیفست تعریف می‌شود uses-feature است. لغت feature به معنی ویژگی است. بنابراین از نحوه نامگذاری این تگ می‌توان تا حدودی به نوع کاربرد آن پی برد. از این تگ برای اعلام سخت افزار و نرم افزار موردنیاز اپلیکیشن به گوگل پلی (Google Play) و سایر مارکت‌های اندرویدی استفاده می‌شود.
فرض کنید قصد ساخت اپلیکیشنی دارید که نیازمند استفاده از دوربین است. برای مثال می‌توان به برنامه‌های بارکدخوان، شبکه‌های اجتماعی ب..

خانه » آموزش های کاربردی » کاربرد تگ uses-feature در مانیفست

کاربرد تگ uses-feature در مانیفست

در این جلسه از سری مباحث آموزش برنامه نویسی اندروید ابتدا به بررسی کاربرد تگ uses-feature در برنامه نویسی اندروید پرداخته سپس جزئیات آن را با هم مرور می‌کنیم.

تگ uses-feature چیست و چه کاربردی دارد؟

به نام خدا. در جلسات قبل با فایل مانیفست (AndroidManifest.xml) و کاربردهای آن آشنا شده‌ایم. از جمله تعیین حق دسترسی‌ها (Permission)، آیکون و نام اپلیکیشن، تم برنامه و سایر اطلاعاتی که سیستم عامل اندروید برای بررسی اپلیکیشن به آنها نیاز دارد.

آشنایی با uses-feature در برنامه نویسی اندروید در اندروید استودیو

یکی دیگر از قابلیت‌هایی که در مانیفست تعریف می‌شود uses-feature است. لغت feature به معنی ویژگی است. بنابراین از نحوه نامگذاری این تگ می‌توان تا حدودی به نوع کاربرد آن پی برد. از این تگ برای اعلام سخت افزار و نرم افزار موردنیاز اپلیکیشن به گوگل پلی (Google Play) و سایر مارکت‌های اندرویدی استفاده می‌شود.
فرض کنید قصد ساخت اپلیکیشنی دارید که نیازمند استفاده از دوربین است. برای مثال می‌توان به برنامه‌های بارکدخوان، شبکه‌های اجتماعی با محوریت مدیا مانند اینستاگرام، نرم افزارهای ثبت و ویرایش عکس و فیلم و… اشاره کرد. همه این موارد مستلزم وجود سخت افزار دوربین در گوشی یا تبلت یا سایر دستگاه‌های اندرویدی هستند. یا اپلیکیشن دیگری که کاربرد آن پرداخت وجه از طریق NFC است.
در موارد فوق، اگر کاربر برنامه ما را روی دستگاه اندرویدی خود نصب کند اما از نرم افزار و سخت افزار موردنیاز آن برخوردار نباشد، عملا برای او کاربردی نداشته و مجبور به حذف آن از روی سیستم عامل خواهد بود. برای پیشگیری از بروز این اشتباهات می‌توانیم از قابلیت uses-feature در پروژه اندرویدی خود استفاده کنیم.
دوربین و پرداخت از طریق NFC را در پاراگراف قبل مثال زدم. فروشگاه گوگل پلی به امکانات و قابلیت‌های هر دیوایس اندرویدی دسترسی دارد. بنابراین می‌تواند لیست برنامه‌ها را مطابق با امکانات در دسترس کاربر به او نشان دهد.

  <uses-feature android:name="android.hardware.camera" android:required="true" />  

در خط فوق دو ویژگی برای تگ uses-feature تعریف شده. اولی name که نام ویژگی و قابلیت موردنیاز را نشان می‌دهد و دومی الزامی بودن یا نبودنِ وجود آن را تعیین می‌کند.
نام android.hardware.camera نشان دهنده این است که برنامه ما به وجود سخت افزار دوربین نیازمند بوده و قسمت دوم یعنی required مقدار آن true است؛ به این معنی که وجود این قابلیت الزامی است. بنابراین اپلیکیشنی که ما در گوگل پلی منتشر کرده‌ایم فقط برای آن دسته از کاربرانی نمایش داده خواهد شد که دیوایس آنها دارای دوربین باشد. اما در صورتی که قسمت دوم false باشد به معنی غیر الزامی بودن این قابلیت است. یعنی در قسمتی از برنامه‌ی ما از دوربین استفاده می‌شود اما الزامی نیست و بدون وجود سخت افزار دوربین هم می‌توان از امکانات برنامه استفاده کرد که در این صورت اپلیکیشن ما هم در نتایج جستجوی این دسته از کاربران نمایش داده خواهد شد.

  <uses-feature android:name="android.hardware.bluetooth" android:required="false" />  

به عنوان مثال قصد انتشار یک برنامه انتقال فایل در مارکت گوگل پلی را دارم. این برنامه از طریق Wifi و Bluetooth امکان به اشتراک گذاری فایل را بین دستگاه‌های مختلف فراهم می‌کند. با اضافه کردن خط فوق به مانیفست پروژه، به گوگل پلی اعلام می‌کنم برنامه من نیاز به قابلیت بلوتوث دارد اما الزامی در کار نیست و مایلم برنامه من به کاربرانی که دستگاه اندرویدی‌شان ویژگی بلوتوث را ندارد نیز نمایش داده شود و بتوانند آن را روی دیوایس خود نصب کنند. در این صورت کاربر می‌تواند صرفا از وای فای برای انتقال فایل استفاده کند.

نکته: تگ uses-feature را با uses-permission اشتباه نگیرید. uses-permission برای گرفتن حق دسترسی از کاربر استفاده می‌شود در حالی که uses-feature صرفا برای نمایش یا عدم نمایش اپ در لیست برنامه‌های Google Play روی دیوایس‌ها کاربرد دارد و دستگاه اندرویدی هنگام نصب اپلیکیشن این موارد را بررسی نمی‌کند.

ویژگی‌های پرکاربرد در تگ uses-feature

در ادامه تعدادی دیگر از پرکاربردترین ویژگی‌های اندروید که قابل تعریف در تگ uses-feature هستند را معرفی می‌کنم:

نام ویژگی توضیحات
android.hardware.microphone میکروفون ضبط صدای دستگاه
android.hardware.camera.front دوربین جلوی دیوایس اندرویدی
android.hardware.fingerprint حسگر اثر انگشت
android.hardware.location موقعیت یابی
android.hardware.location.gps موقعیت یابی بر اساس GPS
android.hardware.location.network موقعیت یابی بر اساس شبکه کاربر
android.hardware.nfc ماژول NFC
android.hardware.sensor.accelerometer سنسور شتاب سنج
android.hardware.sensor.barometer سنسور فشارسنج
android.hardware.sensor.compass قطب نما
android.hardware.sensor.gyroscope سنسور دَوَران نما
android.hardware.sensor.ambient_temperature سنسور دماسنج
android.hardware.sensor.heartrate سنسور ضربان قلب
android.hardware.sensor.stepcounter سنسور قدم شمار
android.hardware.screen.landscape جهت افقی صفحه نمایش
android.hardware.screen.portrait جهت عمودی صفحه نمایش
android.hardware.telephony.gsm ارتباط موبایلی GSM
android.hardware.wifi دسترسی به شبکه WiFi
android.software.webview نمایش WebView

مطالعه‌ی بیشتر:

https://developer.android.com/guide/topics/manifest/uses-feature-element

دانلود نسخه PDF این آموزش
تعداد صفحات : ۴
حجم : ۱ مگابایت
قیمت : رایگان
دانلود رایگان با حجم ۱ مگابایت لینک کمکی این مطلب چقدر برایتان مفید بود؟ لطفا امتیاز دهید 4.7 / 5 ( 4 رای ) آموزش رایگان, آموزش های کاربردی

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

سوربات پتاسیم استئارات منیزیم بنزوات سدیم منتول وانیل مونوسدیم گلوتامات صمغ عربی استئاریک اسید پودر تالک پرلیت خاک رنگبر روغن آرگان روغن جوجوبا تیو سولفات سدیم کراتین کتراک اسید تانیک پکتین کاراگینان پودر کاکائو

کتراک

صمغ عربی

مونو سدیم گلوتامات

اسید استیک

کربومر

کافور

خاک دیاتومه

کربن فعال

سیلیکون دی اکساید

آویسل

آنتی اکسیدان TBHQ

گلوتن ذرت

لانولین

روغن کندش

کافور

گلوتن

روغن فندوق

لاکتات کلسیم

منیزیم استئارات

روغن آووکادو

روغن درخت چای

روغن براهمی

روغن نارگیل

کتراک

سوربات پتاسیم

روغن بادام

شی باتر

ایزوتیازولین

روغن خراطین

روغن جوجوبا

مالتودکسترین

روغن آرگان

فوماریک اسید

خاک دیاتومه

پروپیونات کلسیم