Android 将图像存储到SD卡中?

Android 将图像存储到SD卡中?,android,Android,我使用下面的代码捕获了屏幕,然后将其存储在SD卡中并转到另一个活动。但当我导航到另一个活动时,速度非常慢。我如何解决它? 有人能帮我吗 View v1 = view.getRootView(); v1.setDrawingCacheEnabled(true); bitmapBcfhForm3 = v1.getDrawingCache(); File imagesFolder = new File( Environment.getExternalStorageDi

我使用下面的代码捕获了屏幕,然后将其存储在SD卡中并转到另一个活动。但当我导航到另一个活动时,速度非常慢。我如何解决它? 有人能帮我吗

  View v1 = view.getRootView();    
   v1.setDrawingCacheEnabled(true);    
bitmapBcfhForm3 = v1.getDrawingCache();    
File imagesFolder = new File( Environment.getExternalStorageDirectory(), "Signatures");

            imagesFolder.mkdirs();    
            String fileName = "bitmapBcfhForm3"+AppointmentDetails.getPatientId+".png";
            File out = new File(imagesFolder,fileName);
            FileOutputStream mFileOutStream1 = new FileOutputStream(out);
            bitmapBcfhForm3.compress(Bitmap.CompressFormat.PNG, 90, mFileOutStream1); 
            mFileOutStream1.flush();
            mFileOutStream1.close();
            }
                catch (Exception e) {
                    // TODO: handle exception
                    Log.v("log_tag", e.toString()); 
                }   
         startActivity(new intent(A.this.B.classs));

您正在拍摄屏幕截图并将其保存到ExternalStorage,此过程将阻止您的UI线程,因此请尝试在saparate worker线程中执行该屏幕截图并保存功能;为此,您可以使用简单的线程对象,或者用户异步任务,我建议您在另一个线程中执行任务捕获和保存。最好的选择是
AsycTask

选中此项,搜索并学习异步任务工作

快乐编码:)