應用場景 : 應用PtDemo喚起PtApp的登錄界面LoginActivity并獲取返回值
PtApp部分
1. 在 AndroidManifest.xml 中配置 LoginActivity
<activity
android:name=".me.LoginActivity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="wyx.subplatform"/>
<data android:scheme="subplatform"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
</intent-filter>
</activity>
- action 配置Intent的啟動action, 為自定義的值
- data的scheme用于配置協議 , 自定義的值 . 此文配置的為 subplatform://
2. 在 LoginActivity 接收Intent方式一樣用getIntent()就好 , 下面為設置頁面的返回值
Intent it = new Intent();
it.putExtra("lin", "intent value result ok");
//Bundle bundle = new Bundle();
//bundle.putString("flynn", "bundle value result ok"); 這里用bundle好像不能被接收到
setResult(Activity.RESULT_OK, it);
finish();
- 只需要設置 setResult(Activity.RESULT_OK, it) 就能返回了
PtDemo部分
1. 根據PtApp里面對LoginActivity的配置, 以如下方式打開
Intent it = new Intent("wyx.subplatform", Uri.parse("subplatform://"));
it.putExtra("platformId", "3222");
startActivityForResult(it, 100);
- 重寫以下方法用于接收返回值
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 100) {
ToastUtil.showTip(this, "lin = " + data.getStringExtra("lin"));
}
}