2013-04-25 24 views
5

を引き起こすのです取得するには、別のアプリの活動を開始し、AからAとBアンドロイド - それは私は2つのアプリケーションを持っている

が、私は次のコードを使用して、結果のためにBを起動しています:

Intent fmIntent = getPackageManager().getLaunchIntentForPackage("com.example.B"); 
fmIntent.putExtra("hello", "world"); 
startActivityForResult(fmIntent, REQUEST_TEST); 
をBから

は、私は、次のやってる:

私は同じアプリ内の活動については、上記を行うと、期待どおりに動作します。

しかし、その2つの異なるアプリのため、データと設定されていない結果コードのない空のインテントが受信されます。 1つの意図が全体を通して維持されるように、上記をどのように編集する必要がありますか?

+0

あなたがここにガイドが続くことがありますか? – britzl

+0

'getLaunchIntentForPackage()'は 'startActivityForResult()'の使用に適した何かを返すと思いますか? – CommonsWare

+0

私はちょうどそれを推測して行った。 – judepereira

答えて

3

解決策は、関連する質問「Android onActivityResult triggered before activity even starts!」で提供されています。この方法で意図を作成してください。

Intent myIntent = new Intent(); 
myIntent.setClassName("com.example.B", "com.example.B.ActivityB"); 
startActivityForResult(myIntent, 600); 

私は同じ問題に直面しており、このように解決しました。 getLaunchIntentForPackageによって作成することができ、すべてのフラグきれいにする

+0

ありがとうございます! –

0

使用setFlags(0):http://developer.android.com/training/basics/intents/filters.html:

Intent fmIntent = getPackageManager().getLaunchIntentForPackage("com.example.B"); 
fmIntent.setFlags(0); 
fmIntent.putExtra("hello", "world"); 
startActivityForResult(fmIntent, REQUEST_TEST); 
関連する問題