So I have a button, which makes the camera intent to appear to take a picture.
I will be using that picture to display it.
The problem is the code after the new Intent continues executing and breaks because I have no image back yet until I take the pic.

```
public class WebViewActivity extends Activity {

private WebView webView;
private Uri picUri;
private String finalEncodedImage;
private byte[] finaldata;
FileInputStream finall = null;
private Handler handler = new Handler();

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.webview);

    webView = (WebView) findViewById(R.id.webView1);
    webView.getSettings().setJavaScriptEnabled(true);
    webView.setWebViewClient(new MyWebViewClient());

    String otherPath = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM).toString() + "/Camera/IMG_20140213_142815.jpg";

    File imagefile = new File(otherPath);
    FileInputStream fis = null;
    try {
        fis = new FileInputStream(imagefile);
        finall = fis;
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    Bitmap bi = BitmapFactory.decodeStream(fis);
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    bi.compress(Bitmap.CompressFormat.PNG, 100, baos);

    byte[] data = baos.toByteArray();
    finaldata = data;
    String image64 = Base64.encodeToString(data, Base64.DEFAULT);
    finalEncodedImage = image64;    

    webView.loadUrl("http://myhtml.html");

}

private class MyWebViewClient extends WebViewClient {

    public Intent CameraTakesPic ()
    {
        //OPEN CAMERA AND TAKE PICTURE
        Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
            startActivityForResult(takePictureIntent, 1);
        }

        return takePictureIntent;

    }

    @Override
    public WebResourceResponse shouldInterceptRequest (final WebView view, String url) {
        if (url.contains("img03")) 
        {               
            //%%%
            //OPEN CAMERA AND TAKE PICTURE

            Intent picIntent = new Intent();
            picIntent = CameraTakesPic();
            //WITH THE PICTURE
            Bundle extras = picIntent.getExtras();
            if (extras != null)
            {
                Bitmap imageBitmap = (Bitmap) extras.get("data");
                ByteArrayOutputStream baos = new ByteArrayOutputStream();
                imageBitmap.compress(Bitmap.CompressFormat.PNG, 100, baos);
                //MAKE IT A BYTE ARRAY
                byte[] data = baos.toByteArray();
                finaldata = data;

                InputStream is = new ByteArrayInputStream(finaldata);
             //%%%
                return new WebResourceResponse("text/html", "UTF-8", is);
            }
            else
            {
                return null;                    
            }                
         }          
        else
        {
            return null;
        }
        // convert String into InputStream
         //return super.shouldInterceptRequest(view, url);
            //return super.shouldInterceptRequest(view, "<img src=\"data:image/jpeg;base64," + finalEncodedImage + "\" /></img>");

    }
}
public class CameraContentDemoActivity extends WebViewActivity {
      private static final int CONTENT_REQUEST=1337;
      private File output=null;

      @Override
      public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        Intent i=new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        File dir=
            Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM);

        output=new File(dir, "CameraContentDemo.jpeg");
        i.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(output));

        startActivityForResult(i, CONTENT_REQUEST);
      }

      @Override
      protected void onActivityResult(int requestCode, int resultCode,
                                      Intent data) {
        if (requestCode == CONTENT_REQUEST) {
          if (resultCode == RESULT_OK) {
            Intent i=new Intent(Intent.ACTION_VIEW);

            i.setDataAndType(Uri.fromFile(output), "image/jpeg");
            startActivity(i);
            finish();
          }
        }
      }
    }
}

```

So I don't want to let the code running until I have my picture taken.
What am I doing wrong?
I guess opening a new Intent does not mean the rest of the code stops.
So which is my solution?