درخواست های ارتباط
جستجو
لیست دوستان من
صندوق پیام
همه را دیدم
  • در حال دریافت لیست پیام ها
صندوق پیام
رویدادها
همه را دیدم
  • در حال دریافت لیست رویدادها
همه رویدادهای من
دوره های مرتبط
دوره های توسینسو
دوره آموزشی برنامه نویسی WPF در ویژوال استودیو
مدرس: Amirhossein Fazlikhani
این دوره را در 12 قسط خریداری کنید
دوره آموزشی برنامه نویسی به زبان پرل بصورت پروژه محور
مدرس: dr-iman
این دوره را در 13 قسط خریداری کنید
دوره آموزشی مقدماتی برنامه نویسی جاوا به زبان ساده
مدرس: مهدی عادلی
این دوره را در 17 قسط خریداری کنید
ساخت و مدیریت ربات تلگرام از صفر با زبان سی شارپ
مدرس: مهدی عادلی
این دوره را در 2 قسط خریداری کنید
دوره آموزشی مقدماتی برنامه نویسی به زبان سی شارپ
مدرس: حسین احمدی
این دوره را در 17 قسط خریداری کنید
دوره آموزشی طراحی رابط کاربری با JavaFX
مدرس: hharddy
این دوره را در 13 قسط خریداری کنید
دوره آموزشی اسکریپت نویسی Batch یا Batch Scripting در ویندوز به زبان ساده
مدرس: حسین احمدی
این دوره را در 11 قسط خریداری کنید
دوره تخصصی آموزش متن کاوی با ابزار NLTK
مدرس: taghandiki
این دوره را در 11 قسط خریداری کنید
دوره آموزشی برنامه نویسی حرفه ای پایتون به زبان ساده
مدرس: حسین احمدی
این دوره را در 23 قسط خریداری کنید
دوره آموزشی Exploit نویسی به زبان Perl
مدرس: dr-iman
این دوره را در 7 قسط خریداری کنید
دوره آموزشی پردازش متن با زبان برنامه نویسی پایتون
مدرس: taghandiki
این دوره را در 20 قسط خریداری کنید
دوره آموزشی برنامه نویسی پیشرفته زبان سی شارپ
مدرس: حسین احمدی
این دوره را در 78 قسط خریداری کنید
دوره آموزشی برنامه نویسی اندروید با زبان جاوا به زبان ساده
مدرس: مهدی عادلی
این دوره را در 27 قسط خریداری کنید
دوره آموزشی ساخت ربات تلگرام
مدرس: taghandiki
این دوره را در 8 قسط خریداری کنید

کار کردن با مجوز های اندروید

0 نظرات
108 بازدیدها
سلام به ITPRO های عزیز. سیستم عامل اندروید برای رعایت حریم خصوصی کاربران و یکپارچگی سیستم دسترسی هر کدام از برنامه ها را به بخش های مختلف محدود کرده است. اگر برنامه ای بخواهد به یک منبع خارج از محدوده خود دسترسی داشته باشد باید کاربر اجازه چنین کاری را به او بدهد. در این صورت مشخص می شود که برنامه مورد نظر مجوز دارد یا خیر. اندروید مجوز های بسیاری دارد که برنامه ها می توانند از آنها استفاده کنند.

معرفی مجوز ها


در هر پروژه اندرویدی برای این که کاربر مشخص کند که از کدام منابع استفاده خواهد کرد باید مجوز استفاده از آن را در فایل android.manifest را معرفی کند. با توجه به این که حساسیت یک مجوز چقدر بالا باشد اندروید می تواند آن مجوز را به صورت اتوماتیک به شما بدهد و یا از کاربر سوال کند. در اندروید های نسخه 5 و پایین تر مجوز ها هنگام نصب برنامه ازکاربر سوال می شوند. ولی در اندروید های 6 به بالا هنگام اجرا از شما سوالی پرسیده می شود که آیا مجوز مورد نظر را به برنامه می دهید یا خیر.

ازکجا بفهمیم که برنامه ما به چه مجوزهایی نیاز دارد؟


هنگامی که شما در حال توسعه یک برنامه برای اندروید هستید باید دقت داشته باشید که وقتی که از یک برنامه دیگر برای انجام کاری استفاده می کنید نیازی به گرفتن مجوز مورد نظر ندارید. برای مثال اگر شما قصد دارید که به مخاطبان دستگاه دسترسی داشته باشید باید مجوز READCONTACTS را بگیرید ولی اگر برای خواندن مخاطبان یک درخواست به برنامه contancts داشته باشید برنامه شما نیازی به مجوز READCONTACTS ندارید. ولی برنامه contacts به مجوز مورد نظر نیاز دارد. برای این که بدانید برنامه شما یه چه مجوز هایی احتیاج دارد نشانه اش این است که قسمت مربوطه که هنوز مجوز آن را معرفی نکرده ایم به درستی کار نخواهد کرد. برای مثال شما یک برنام دارید که عکس ها را از اینترنت لود می کند ولی مجوز دسترسی به اینترنت را به برنامه خود نداده اید. در این صورت برنامه برای لود کردن فایل مورد نظر خطا می دهد.

افزودن مجوز مورد نظر به پروژه


برای معرفی کردن یک مجوز به برنامه باید آن را داخل فایل androidmanifest با استفاده از تگ <uses-permission> استفاده می کنیم. دقت کنید که این تگ ها را در سطح بالای این فایل xml می نویسیم. در کد زیر یک مثال از دادن مجوز ها آورده شده است.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example.snazzyapp">

    <uses-permission android:name="android.permission.SEND_SMS"/>
    

    <application ...>
        ...
    </application>

</manifest>


چک کردن این که آیا برنامه مجوز مورد نظر را دارد یا خیر


اگر برنامه شما نیاز به یک مجوز مهم داشته باشد بهتر است که قبل از این که از کلاس های مربوط به آن مجوز استفاده کنید ببینید برنامه مجوز مورد نظر را دارد یا خیر. برای چک کردن این که یک مجوز را دارا هستیم یا خیر از متد ContextCompat.checkSelfPermission() استفاده می کنیم. برای مثال اگر بخواهیم ببینیم که مجوز نوشتن در تقویم را داریم یا خیر از کد زیر استفاده می کنیم.
int permissionCheck = ContextCompat.checkSelfPermission(thisActivity,
        Manifest.permission.WRITE_CALENDAR);

در کد بالا اگر مقدار بازگشتی permissionCheck برابر با PackageManager.PERMISSIONGRANTED باشد به این معنی است که برنامه مجوز مورد نظر را دارد و اگر مقدار برگشتی برابر با PERMISSIONDENIED بود به این معنی است که برنامه مجوز مورد نظر را ندارد. ITPRO باشید

نویسنده: مهدی عادلی فر
منبع: Itpro
هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد.

برچسب ها
مطالب مرتبط

در حال دریافت اطلاعات

نظرات
هیچ نظری ارسال نشده است

    برای ارسال نظر ابتدا به سایت وارد شوید

    arrow