title: Activity started with startActivityForResult() not returning to calling Activity
body: <p>I have 3 Activities - <strong>A</strong>, <strong>B</strong>, and <strong>C</strong>.</p>
  
  <p>In a  nutshell, Activity A starts Activity B, then A also starts Activity C and expects a result from C, but never gets it.</p>
  
  <p>Here is the application workflow:</p>
  
  <ol>
  <li><p>Activity A is launched on app startup and starts Activity B (not for result, just startActivity()) in onCreate.</p>
  
  <pre><code>public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      startActivity(new Intent(getApplicationContext(), ActivityB.class));
  }
  </code></pre></li>
  <li><p>Activity A then also starts Activity C later in code, this time for result using startActivityForResult(), and Activity A also has onActivityResult.</p>
  
  <pre><code>Intent intent = new Intent(getApplicationContext(), ActivityC.class);
  startActivityForResult(intent, 0);
  </code></pre>
  
  <p>and</p>
  
  <pre><code>protected void onActivityResult(int requestCode, int resultCode, Intent data) {
     ...
  }
  </code></pre></li>
  <li><p>Activity C uses setResult() and finish() to return some data, which should go back to Activity A, because Activity A called startActivityForResult().</p>
  
  <pre><code>Intent intent = new Intent();
  intent.putExtra("encryption", encryption);
  setResult(56, intent);
  finish();
  </code></pre></li>
  </ol>
  
  <p><strong>BUT</strong> the workflow falls silent at step 3 - Activity A's onActivityResult is never called (neither is B's for that matter), even though Activity A is the one starting C for result. Not sure if Activity B is getting in the way of A and C's communication or what the problem could be. Any help is much appreciated.</p>