آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

external storage(حل نشده)

125142  9 سال پیش  9 سال پیش
0 0

با سلام به دوستان سوال من اینه که میخوام تو حافظه خارجی همون external storage یک پوشه بسازم و نامشو تغییر بدم چجوری باید اینکارو بکنم

تو نت سرچ کردم کد هاشو دیدم ولی امتحان کردم نشد یعنی sdcard رو نمیتونم پیدا کنم ممنون میشم کمکم بکنید

 برای این سوال 4 پاسخ وجود دارد.
پاسخ به سوال 
Amir  9 سال پیش
+2 0

اول از همه اینو بدونید که مسیر حافظه ی داخلی: storage/sdcard0/ و مسیر حافظه ی رم storage/sdcard1/ هست.

حالا برای ساخت پوشه از کد زیر باید استفاده کنید (به جای new-folder اسم پوشه رو بنویسید):

new File("/storage/sdcard0/new-folder").mkdirs(); // ساخت پوشه در حافظه ی داخلی
new File("/storage/sdcard1/new-folder").mkdirs(); // ساخت پوشه در رم

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

new File("/storage/sdcard0/new-folder").renameTo(new File("/storage/sdcard0/new-name")); // حافظه ی داخلی
new File("/storage/sdcard1/new-folder").renameTo(new File("/storage/sdcard1/new-name")) // رم

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

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
پاسخ به سوال 
125142  9 سال پیش
0 0

سلام نوشتمش ول نشد قبلا این راه رو امتحان کردم

0 0
کدهایی که نوشتید رو اینجا بزارید. اگه خطا میده ارورهای توی Logcat رو هم بزارید. (9 سال پیش)
پاسخ به سوال 
jbRhmNqb  9 سال پیش
0 0

توی کلاس G کد زیر رو وارد کنید:

 public static final String   DIR_SDCARD   = Environment.getExternalStorageDirectory().getAbsolutePath();
    public static final String   DIR_FOLDER = DIR_SDCARD + "/folder_name/";

و داخل onCreate هم این پوشه رو بسازید(کد زیر در onCreate):

 new File(DIR_FOLDER).mkdirs();
0 0
environment. Getexternalstoragedirectory وقتی این رو خروجی میگیرم یعنی با toast پیغام میگیرم اصلا حافظه خارجی رو برنمیگردونه آدرس حافظه داخلی میده بجا sdcard, sdcard1 رو برمیگردونه (9 سال پیش)
0 0
منظورتون رو متوجه نشدم اما شاید permission مربوط رو توی منیفست وارد نکردین... (9 سال پیش)
پاسخ به سوال 
hamidptb  9 سال پیش
0 0

احتمال داره مشکل از ورژن API که ازش رو امولیتورت استفاده میکنی باشه چون خودمم به همین مشکل برخوردم .AVD که از API پایین تر از 23 ( marshmallow) استفاده میکنه رو امتحان کن احتمالا جواب میده چون برا خودم جواب داد . علتشم اینه که از اندروید 6 به بعد کاربر بعد از نصب نرم افزار اجازه ها رو (permisson) و به این علت که run کردن اپ رو امولتور دگ این رو شبیه سازی نمیکنه (دقیقا نمیدونم برا چی ) برنامه کرش میکنه . البته راه حلشم هم بگردی با سرچ پیدا میکنی ولی فک کنم با همون تست روی ورژن های پایین تر اندروید جواب بگیری


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .