Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to pass data both ways between different android applications?
    primarykey
    data
    text
    <p>What's the easiest way to <strong>pass string variables from one application to another and also return values back</strong>? I have access to the source code of both apps, but it has to be two different applications.</p> <p>I tried with startActivityForResult, but this only seems to work between activies of the same application. When calling an activity from a different package, startActivityForResult returns immediately with RESULT_CANCELED. There seems to be the possibility to solve this with a Service, but isn't that a bit oversized for just some string vars?</p> <p>Is there an easy and clean way to do this?</p> <p>Here the code i tried to use for startActivityForResult:</p> <pre><code>//App A: Intent intent = new Intent(); intent.setAction("com.example.testapp.MESSAGE"); Bundle b = new Bundle(); b.putString("loginToken", "263bhqw3jhf6as4yf8j0agtz8h2hj2z9j3hg3g3ggh34uzh2h2ui78h3i9wdnj89x"); intent.putExtra("MyData", b); startActivityForResult(intent, TEST_REQUEST); @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { Log.d("pairing", "onActivityResult called"); // Check which request we're responding to if (requestCode == TEST_REQUEST) { // Make sure the request was successful Log.d("pairing", "got result, resultCode: " + resultCode); if (resultCode == RESULT_OK) { // The Intent's data Uri identifies which contact was selected. if (data.hasExtra("returnMessage")) { Toast.makeText(this, data.getExtras().getString("returnMessage"), Toast.LENGTH_LONG).show(); } } } } // App B: Intent result = new Intent(); Bundle b = new Bundle(); b.putString("returnValue", "this is the returned value"); result.putExtra("MyData", b); setResult(Activity.RESULT_OK, result); Log.d("pairing", "RESULT_OK set"); finish(); //App B Manifest &lt;activity android:name="com.example.testapp" android:launchMode="singleTop" android:screenOrientation="portrait" android:windowSoftInputMode="adjustPan" &gt; &lt;intent-filter&gt; &lt;action android:name="com.example.testapp.MESSAGE" /&gt; &lt;category android:name="android.intent.category.DEFAULT" /&gt; &lt;data android:mimeType="text/plain" /&gt; &lt;/intent-filter&gt;&lt;/activity&gt; </code></pre> <p>Anybody seeing the mistake? App B always returns immediately with RESULT_CANCELED</p> <p>EDIT: Right now I'm getting a <em>android.content.activitynotfoundexception no activity found to handle intent { act=com.example.testapp.MESSAGE (has extras) }</em> error. What am I doing wrong?</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload