проблема со скриншотами в андроиде программно - PullRequest
0 голосов
/ 26 сентября 2011

в моем приложении я делаю скриншот текущего экрана и сохраняю его в SDCard. но в случае скриншот не сохраняется в SDCard. как сделать снимок экрана и отправить снятый снимок экрана по электронной почте в виде вложения пожалуйста, помогите мне.

моя кодировка:

            View v1 = view.getRootView();
            v1.setDrawingCacheEnabled(true);
            Bitmap bm = v1.getDrawingCache();
            try 
            {
                   System.out.println("path "+Environment.getExternalStorageDirectory());
                   FileOutputStream out = new FileOutputStream(Environment.getExternalStorageDirectory()+"/ff");
                   bm.compress(CompressFormat.PNG, 90, out);
            }
            catch (Exception e) 
            {
                   e.printStackTrace();
            }

            Intent emailIntent = new Intent(Intent.ACTION_SEND); 
            Uri U=Uri.parse("file:///sdcard/ff");
            emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[] { "aabc@gmail.com" });
            emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, " from ..");
            emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "from the app");
            emailIntent.setType("image/png");
//          emailIntent.putExtra(android.content.Intent.EXTRA_STREAM,U);
            emailIntent.putExtra(Intent.EXTRA_STREAM, U);
            startActivity(Intent.createChooser(emailIntent, "")); 

, пожалуйста, помогите мне.

1 Ответ

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

я решил свою проблему, заменив кодовое обозначение try на

            File file = new File(Environment.getExternalStorageDirectory()+"/filmfestival.png");
            try 
            {
                file.createNewFile();
                FileOutputStream ostream = new FileOutputStream(file);
                bitmap.compress(CompressFormat.PNG, 100, ostream);
                ostream.close();
            } 
            catch (Exception e) 
            {
                e.printStackTrace();
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...