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

مشکل در ساخت فولدر

Hossein Lamei Ramandi  10 سال پیش  9 سال پیش
0 0

سلام دوستان

من سعی کردم که با کدنویسی یه پوشه در گوشی ایجاد کنم ولی برنامه در گوشی های بدون کارت حافظه ایجاد نمیشه

در صورتیه که من قبلا با همین کد ها در گوشی بدون کارت حافظه فولدر ایجاد میکردم بدون هیچ مشکلی تو استک زیاد سرچ کردم

اما نتیجه ای حاصل نشد !

ضمنا نسخه اندروید گوشیم 6.0.1

+1 0
گوشی بدون کارت حافظه منظور مثل نکسوس یا دستگاهی که کارت حافظش خارج شده؟ توی تنظیمات برنامه ببینید دسترسی مربوط فعال شده با نه. (10 سال پیش)
0 0
سوالت گنگه منم منظورتو نفهمیدم :| (10 سال پیش)
0 0
بله مشکل رو فهمیدم ولی راه حلشو نمیدنم پرمیشن در لیست پرمیشن های برنامه وجود داره ولی فعال نیست نمیدونم چجوری میشه به کاربر این آلرت فعال کردن پرمیشنو نشون داد مثل برنامه اینستا گرام . این مشکل فقط در گوشی خودم وجو داره که بخاطر نسخه اندرویده و روی گوشی با اندروید 5 و پایین تر بدون مشکل اجرا میشه ! (10 سال پیش)
+1 0
android runtime permission (10 سال پیش)
0 0
ممنون (10 سال پیش)
0 0
این دقیقا مشکل من هم هست , چجوری حل شد ؟ (10 سال پیش)
0 0
منم دقیقا همین مشکل رو دارم نسخه اندروید من 6 هست و فولدر رو برام نمیسازه روی یه نسخه 5 تست کردم درست بود ولی روی یه نسخه 4 دیگه بازم نساخت... کسی نمیدونه چجوری میشه این مشکل رو حل کرد؟؟؟؟؟ (9 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
محمد  9 سال پیش
+1 0

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

*** تو نسخه های جدید اندروید فقط گرفتن دسترسی از کاربر موقع نصب و گذاشتن کد توی manifest کافی نیست!!! باید دوباره از کاربر سوال بشه که آیا به این نرم افزار دسترسی میدی که به این چیزهایی که مد نظرش هست دسترسی پیدا کنه یا نه!!!


حالا راه حل چیه؟؟؟؟؟

در قدم اول میاید و توی Oncreate این کد رو میزارید:

  //ask for the permission in android M
        int permission = ContextCompat.checkSelfPermission(this,
                Manifest.permission.WRITE_EXTERNAL_STORAGE);

        if (permission != PackageManager.PERMISSION_GRANTED) {
            Log.i(TAG, "Permission to record denied");

            if (ActivityCompat.shouldShowRequestPermissionRationale(this,
                    Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
                AlertDialog.Builder builder = new AlertDialog.Builder(this);
                builder.setMessage("Permission to access the SD-CARD is required for this app to Download PDF.")
                        .setTitle("Permission required");

                builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {

                    public void onClick(DialogInterface dialog, int id) {
                        Log.i(TAG, "Clicked");
                        makeRequest();
                    }
                });

                AlertDialog dialog = builder.create();
                dialog.show();

            } else {
                makeRequest();
            }
        }

و بعید میاید این دو تا متد رو میزارید انتهای کدهاتون

  protected void makeRequest() {
        ActivityCompat.requestPermissions(this,
                new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
                REQUEST_WRITE_STORAGE);
    }


    @Override
    public void onRequestPermissionsResult(int requestCode,
                                           String permissions[], int[] grantResults) {
        switch (requestCode) {
            case REQUEST_WRITE_STORAGE: {

                if (grantResults.length == 0
                        || grantResults[0] !=
                        PackageManager.PERMISSION_GRANTED) {

                    Log.i(TAG, "Permission has been denied by user");

                } else {

                    Log.i(TAG, "Permission has been granted by user");

                }
                return;
            }
        }
    }

و تمام

اینم لیست دسترسی ها که میتونید بسته به نیازتون تغییرات توی کد های بالا بدید...

 



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