بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
دستیابی به مسیر sd card در api های جدید
با سلام
من نتونستم به مسیر sd card از طریق کد زیر دسترسی پیدا کنم.کسی میتونه راهنمایی کنه چطور میشه دسترسی داشت؟فک میکنم متد ها برای api های جدید دپریکیت شده باشه
Environment.getExternalStorageDirectory().getAbsolutePath()
+2
0
از api 29 به بعد نمیشه با این متد دسترسی به حافظه داشت و دخیره سازی اندورد به چهار قست تقسیم بندی شده که scoped storage نامگذاری شده. شما اگه این فایل های که میخوایین ذخیره کنین فقط برای برنامه خودتون لازمه و کاربر نیازی به دیدن فایل ها نداره بهترین کار اینکه از حافظه App-specific storage که از api 19 به بعد هیچگونه مجوزی لازم نداره استفاده کنین ولی اگه نیاز به ذخیره فایلهایی مثل pdf دارین باید از api 29 به بعد توسط api اندوید مجوز تولید فایل رو دریافت کنین (چیزی مانند صفحه ذخیره فایلی که از قبل تو ویندوز باهاش آشنایی) که برای این کار باید از حافظه Shared storage استفاده کنین بهترین منبع برای یادگیری این مطلب ساید خود اندوریده که لینکشو میزارم اما باید با ابزار دور زدن تحریم بازش کنین لینک (6 سال پیش)
برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال
ChookD1
6 سال پیش
0
0
سلام دوست عزیز.
مطمئن نیستم که چنین تغییری بوجود اومده باشه. توجه داشته باشید که در یکی از کلاسهای AppCompat باشید ، مثلا اگه کلاسی داشته باشید که از Application اکستندز شده شده باشه ، این متد پاسخ شما نخواهد بود.
در غیر اینصورت اطلاعات بیشتری از ارور بوجود آمده رد اختیارمون بگذارید.
پاسخ به سوال
dev.amir
6 سال پیش
+1
0
سلام.. من کد زیر رو استفاده میکنم درسته :
SDCARD = context.getExternalFilesDir(null).getAbsolutePath();
میدونی قضیه ش چیه ، اگه کد سابق ، که همین کد دوستمون باشه رو استفاده کنیم ، میتونیم به همه چیز داخل حافظه داخلی دسترسی داشته باشیم ، میتونیم یک لیستی از فایلهای توی مموری بگیریم ، بعنوان مثال با این کار میشه ببینیم کاربرانی که برنامه ی ما رو نصب کرده اند ف از چه پکیج نیمهایی استفاده میکنند ، لذا اومده توی api های بالا ، این راه رو بسته ، با کد شما ، فقط فایلی درون پوشه ی android سپس در data و سپس با پکیج نیم خود برنامه ، در اختیار ما میزاره تا ازش استفاده کنیم. (6 سال پیش)
لینک برای اندروید 6 و 5 (6 سال پیش)
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .