Search..

Wednesday, August 5, 2020

how to take image from gallery in android

 private void seletImage() {
        if (Build.VERSION.SDK_INT<23)
        {
            Intent intent=new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
           startActivityForResult(intent,requestcode);

        }
        else if(Build.VERSION.SDK_INT>=23)
        {
            if(ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE)!= PackageManager.PERMISSION_GRANTED)
            {
                requestPermissions(new String[]{Manifest.permission.READ_EXTERNAL_STORAGE},requestcode);
            }
            else
            {
                Intent intent=new Intent(Intent.ACTION_PICK,MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
                startActivityForResult(intent,requestcode);
            }
        }


    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if(requestCode==1000 && resultCode==RESULT_OK && data!=null)
        {
            Uri chosenImage=data.getData();
            try {
                mBitmap=MediaStore.Images.Media.getBitmap(this.getContentResolver(),chosenImage);
                mImageView.setImageBitmap(mBitmap);
            }catch (Exception e)
            {
                e.printStackTrace();
            }
        }

    }

    @Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
        if(requestCode==1000 && grantResults[0]==PackageManager.PERMISSION_GRANTED)
        {
            seletImage();
        }
    }

No comments:

Post a Comment