Jak zapisać obraz ImageView w Galerii (Android Development)

Próbuję utworzyć zdarzenie onClick, aby zapisać widok obrazu w galerii telefonu, klikając przycisk, poniżej znajduje się mój kod. nie zapisuje się w Galerii, czy ktoś może mi pomóc dowiedzieć się dlaczego?

    sharebtn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View b) {
            // TODO Auto-generated method stub
            //attempt to save the image

            b = findViewById(R.id.imageView);
            b.setDrawingCacheEnabled(true);
                Bitmap bitmap = b.getDrawingCache();
                //File file = new File("/DCIM/Camera/image.jpg");
                File root = Environment.getExternalStorageDirectory();
                File cachePath = new File(root.getAbsolutePath() + "/DCIM/Camera/image.jpg");
                try 
                {
                    cachePath.createNewFile();
                    FileOutputStream ostream = new FileOutputStream(cachePath);
                    bitmap.compress(CompressFormat.JPEG, 100, ostream);
                    ostream.close();
                } 
                catch (Exception e) 
                {
                    e.printStackTrace();
                }

        }
    });

questionAnswers(5)

yourAnswerToTheQuestion