رفتن به مطلب
انجمن اندروید ایران | آموزش برنامه نویسی اندروید و موبایل
  • android.png.1fab383bc8500cd93127cebc65b1dcab.png

پست های پیشنهاد شده

میخواستم بدونم چرا با دوربین که عکس میگیرم تو imageview ka نشون نمیده. تو دو تا گوشی امتحان کردم تو یکی گوشی جواب میده تو یه گوشی نه.

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

کد دکمه گرفتن عکس 

 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

                File f = new File(android.os.Environment.getExternalStorageDirectory(), "temp.jpg");

                intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(f));

                startActivityForResult(intent, 1);

 

 

کد onActvity برای دوربین


    public void onActivityResult(int requestCode, int resultCode, Intent data) {

        super.onActivityResult(requestCode, resultCode, data);

        if (resultCode == RESULT_OK) {






            if (requestCode == 1) {

                File f = new File(Environment.getExternalStorageDirectory().toString());
                File f2 = new File(Environment.getExternalStorageDirectory().toString(), "ghabak");
                if (f2.exists()) {

                } else {
                    f2.mkdir();
                }


                for (File temp : f.listFiles()) {

                    if (temp.getName().equals("temp.jpg")) {

                        f = temp;

                        break;

                    }

                }

                try {

                    Bitmap bitmap;

                    BitmapFactory.Options bitmapOptions = new BitmapFactory.Options();

                    bitmap = (Bitmap) data.getExtras().get("data");
                   // bitmap = BitmapFactory.decodeFile(f.getAbsolutePath(),

                     //       bitmapOptions);

                    Drawable drawable = new BitmapDrawable(getResources(),
                            bitmap);
                    // Toast.makeText(getApplication(), "تصویر کاور انتخاب شد", Toast.LENGTH_SHORT).show();

                    //imgcover_exist = true;
                    //organiztion_catlog_arm_img
                    img2.setVisibility(View.GONE);
                    img.setBackground(drawable);
                    //  show_img_cover.setVisibility(View.VISIBLE);
                    //organization_


                    Log.e("Camera", " Open");


                    String path = android.os.Environment

                            .getExternalStorageDirectory()

                            + File.separator

                            + "ghabak" + File.separator;


                    f.delete();

                    OutputStream outFile = null;

                    final File file = new File(path, String.valueOf(System.currentTimeMillis()) + ".jpg");

                    //add_img_path = file.toString();
                    //add_img_name = file.toString().substring(1 + file.toString().lastIndexOf('/'));




                    try {

                        outFile = new FileOutputStream(file);

                        bitmap.compress(Bitmap.CompressFormat.JPEG, 85, outFile);

                        outFile.flush();

                        outFile.close();

                    } catch (FileNotFoundException e) {

                        e.printStackTrace();

                    } catch (IOException e) {

                        e.printStackTrace();

                    } catch (Exception e) {

                        e.printStackTrace();

                    }

                } catch (Exception e) {

                    e.printStackTrace();

                }

            }
}

قسمت انتخاب از گالری تقریبا درسته کار میکنه فقط نمی دونم چرا یکی دو تا عکس رو انتخاب نمی کنه.

app-release.apk

لینک ارسال
به اشتراک گذاری در سایت های دیگر

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

public static Bitmap decodeSampledBitmapFromFile(String path,
                                                     int reqWidth, int reqHeight) {
        // First decode with inJustDecodeBounds=true to check dimensions
        final BitmapFactory.Options options = new BitmapFactory.Options();
        //Query bitmap without allocating memory
        options.inJustDecodeBounds = true;
        //decode file from path
        BitmapFactory.decodeFile(path, options);
        // Calculate inSampleSize
        // Raw height and width of image
        final int height = options.outHeight;
        final int width = options.outWidth;
        //decode according to configuration or according best match
        options.inPreferredConfig = Bitmap.Config.RGB_565;
        int inSampleSize = 1;
        if (height > reqHeight) {
            inSampleSize = Math.round((float)height / (float)reqHeight);
        }
        int expectedWidth = width / inSampleSize;
        if (expectedWidth > reqWidth) {
            //if(Math.round((float)width / (float)reqWidth) > inSampleSize) // If bigger SampSize..
            inSampleSize = Math.round((float)width / (float)reqWidth);
        }
        //if value is greater than 1,sub sample the original image
        options.inSampleSize = inSampleSize;
        // Decode bitmap with inSampleSize set
        options.inJustDecodeBounds = false;
        return BitmapFactory.decodeFile(path, options);
    }

زمانی که عکس رو میگیره تو onActivity این کد قرار دادم

 img.setImageBitmap(decodeSampledBitmapFromFile(f.getAbsolutePath(), 600, 450));

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

  • مطالب مشابه

    • توسط shervin soori
      سلام خدمت دوستان عزیز 
      می خواستم ببینم از دوستان و استادید عزیزی که در این انجمن حضور دارند، اطلاعاتی در خصوص تشخیص اطلاعات کارت بانکی از طریق دوربین رو می تونن در اختیار بنده بزارن.
      من از کتابخونه card-io استفاده کردم، یکم روی کارت های عابر بانک ایرانی مشکل داره،نمونه ی ایرانی اون هم که Accub.in هست رو هم که در اپ همراه کارت موجوه دیدم، که فکر می کنم این شرکت فقط به سازمانها خدمات میده.
      خواستم بنده رو راهنمایی بفرمایید، چون پروژه ای رو دارم که پس از این این اتفاق در اپ می بایست از طریق nfc با یک کیوسک لمسی ارتباط برقرار کنه که پرداخت صورت بگیره.
      شاید هم این موضوع به این قسمت اخر زیاد ربطی نداشته باشه، اما راحت تر شدن کاربر و استفاده از یک چیز جدید در کار بی تاثیر نیست.
      با تشکر. 
    • توسط Javad Mahmoodi
      باسلام خدمت همه دوستان
      من تو برنامه خودم تونستم از دوربین استفاده کنم اما چندتا مشکل بزرگ دارم
      1-بعد از گرفتن عکس حتماً باید گذینه تایید یا تیک رابزنم تا عکس ذخیره بشه.میخوام بلا فاصله بعد از گرفتن عکس بصورت خودکار ذخیره بشه.
      2-تصاویر ذخیره شده کوچکتر از حد معمول هستند و کیفیتشان بسیار پایین می باشد.
      3-تصاویر هم در گالری ذخیره میشوند و هم در فولدری که من مدنظرم هست.میخواهم فقط در فولدر مورد نظرم ذخیره بشه و تو گالری نباشه.
      ممنون از پاسخ و راهنمایی های شما 
    • توسط alireza123
      سلام
       من به برنامه نوشتم تو دو تا گوشی تست کردم مشکلی نداشت ولی برای کسی که برنامه رو براش نوشتم فرستادم گفت که روی چند تا از گوشی ها امتخان کرده خطا ی میده.
      میخواستم این رو ارسال کنم و بفهمیم که اعضای که نصب می کنند مشکل داره ؟ قسمتی که استان انتخاب میشه مشکل داره ؟
      با تشکر 
      app-release.apk
    • توسط alireza123
      سلام
      من یه برنامه نوشتم که کاربر تا 10تا عکس رو از گالری یا دوربین انتخاب می کنه.
      منتها تو گوشی lg  انتخاب عکس مشکل نداره و لی تو گوشی هواوی بعد از انتخاب 7 عکس خطا میده از صفحه خارج میشه  مشکل چیه؟
      هر دو اندروید 5.0.1
    • توسط alireza123
      سلام
      من میخوام ادرس عکس رو از دیتابیس وردپرس بگیرم.
      تو جدول wp_posts 
      gurl عکس به صورت زیر هستش
      http://daaloon.net/?attachment_id=326
      چطور میتونم به عکس دسترسی داشته باشم ؟
  • فایل

×
×
  • اضافه کردن...