Как сохранить изображение, которое щелкнуло из приложения камеры, в папку для рисования и как поделиться им в Android? - PullRequest
0 голосов
/ 26 ноября 2011

Привет, я использую приложение камеры в Android.В моем приложении я хочу сохранить фотографию, которая была нажата во внутреннем хранилище устройства (в папке res), а также поделиться ею.Я попробовал код, показанный ниже.

Camera.PictureCallback jpegCallback = new PictureCallback() 
    {
        public void onPictureTaken(byte[] data, Camera camera) 
        {
            FileOutputStream outStream = null;
            try 
            {               
                outStream = new FileOutputStream(String.format("/sdcard/%d.jpg", System.currentTimeMillis()));  
                outStream.write(data);
                outStream.close();
                sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"+ Environment.getExternalStorageDirectory())));
                Log.d(TAG, "on pictureTaken" + data.length);
            } 
            catch (FileNotFoundException e) 
            {
                e.printStackTrace();
            } 
            catch (IOException e)
            {
                e.printStackTrace();
            } 
            finally
            {}
            setContentView(R.layout.main2);         
            BitmapFactory.Options opts = new BitmapFactory.Options();
            Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length,opts);
            imgView = (ImageView)findViewById(R.id.photoResultView);
            imgView.setImageBitmap(bitmap);    
            upload = (Button) findViewById(R.id.upload);
            upload.setOnClickListener(new OnClickListener() 
            {
                public void onClick(View v) 
                {
                    Intent sharingIntent = new Intent(Intent.ACTION_SEND);
                    Uri screenshotUri = Uri.parse("/sdcard/%d.jpg");

                    sharingIntent.setType("image/jpg");
                    sharingIntent.putExtra(Intent.EXTRA_STREAM, screenshotUri);
                    startActivity(Intent.createChooser(sharingIntent, "Share image using"));
                }
            });
        }
    };

, если кто-нибудь знает об этом, помогите мне ..

1 Ответ

0 голосов
/ 26 ноября 2011

Вы не можете сохранять изображения или снимки, сделанные с камеры, в папку для рисования, вы можете хранить их на SDCard.Вы можете проверить эту ссылку.

ОБНОВЛЕНИЕ

Вы можете сохранить изображение, снятое с помощью этого,

File myFile = new File(Environment.getExternalStorageDirectory()+File.separator+"my_image.jpg");
                try {
                    myFile.createNewFile();
                    FileOutputStream outputStream = new FileOutputStream(myFile);
                    outputStream.write(data);
                }
                catch (IOException e) {
                    e.printStackTrace();
                }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...