5/5 (1)

سلام خدمت شما دوستان و همراهان سایت اسمارت دولوپرز. تو این جلسه میخام در مورد حافظه های داخلی و خارجی و نحوه به دست آوردن آدرس External Storage در اندروید و همچنین نحوه ذخیره اطلاعات در حافظه خارجی به صورت برنامه نویسی صحبت کنم .

 

چگونه آدرس Sd Card را در اندروید به دست بیاوریم ؟

یکی از راه های به دست آوردن آدرس External Storage در اندروید یا همون SD  کارت استفاده از کلاس Environment و متد ()getExternalStorageDirectory هستش :

و برای ذخیره اطلاعات کافیه از متغیر SDPath به عنوان ریشه اصلی حافظه خارجی استفاده کنید و زیر پوشه ها و آدرس و اسم دقیق فایل رو با استفاده از کاراکت / از هم جدا کنید برای مثال اگه به آدرس فایلی به اسم myFile.txt در پوشه MyFolder نیاز دارید به این صورت میتونید این آدرس رو بسازید :

فقط برای کار کردن با متد ()Environment.getExternalStorageDirectory  نیاز به مجوز های خواندن و نوشتن در کارت حافظه، داخل فایل Manifest دارید :

و همینطور از اندروید 6 به بالا برای فعال کردن این مجوز ها باید به صورت ران تایم از کاربر درخواست کنید. اگه با نحوه این کار آشنا نیستید میتونید آموزش Runtime Permission رو ببینید .

به دست آوردن آدرس فولدر های public در اندروید  مثل فولدر Picture:

برای به دست آوردن آدرس این پوشه ها میتونید از این کد استفاده کنید :

مشکل ()Environment.getExternalStorageDirectory در دریافت آدرس SD Card :

بعضی از برند های گوشی های تلفن همراه مثل سامسونگ اجازه دسترسی مستقیم به کارت حافظه رو نمیدن و متد ()Environment.getExternalStorageDirectory فقط آدرس حافظه داخلی رو به ما میده . پس چطور باید داخل کارت حافظه اطلاعاتمون رو ذخیره کنیم ؟ اگه برنامه ما نیاز به این داشته باشه که اطلاعات با حجم بالایی ذخیره کنه و حافظه داخلی گوشی کاربر هم فضای کافی نداشته باشه باید چه کنیم ؟ اگه به کاربر این قابلیت رو بدیم که فضای ذخیره سازی برنامه ما رو، روی کارت حافظه قرار بده ، باعث رضایت بیشتر ایشون از برناممون نخواهیم بود ؟ اگه نیاز به کپی فایلی از حافظه داخلی به حافظه خارجی به صورت برنامه نویسی داشتیم با این وضعیت چه کنیم ؟

اگه دنبال حل این مشکل هستید و نیاز دارید که به کارت حافظه خارجی دسترسی داشته باشید میتونید ویدئویی که در این مورد تهیه کردم رو ببینید . تو این ویدئوی 25 دقیقه ای یاد میگیرید که چطوری اجازه دسترسی به کارت حافظه خارجی رو از کاربر بگیرید. که با روش های معمولی ای که بالا گفتم و در بیشتر سایت ها و منابع آموزشی هم موجوده ، امکان پذیر نیست .

 

9,000 تومان – خرید

حجم فایل : 60 مگابایت

 

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

 

 

 

0 0 vote
Article Rating

به این مطلب چه امتیازی میدهید ؟

اشتراک
باخبر شدن از
guest
0 Comments
Inline Feedbacks
View all comments