安卓 intent在两个app间传值,求大神解答

app1通过语音输入启动app2(用的是Intent intent = getPackageManager().getLaunchIntentForPackage()方法打开app2),同时app1通过intent传值给app2,app2在第一次启动时能正确接收到intent的值,但再次从app1启动app2时(这时app2被app1覆盖),app2接收到的intent值还是第一次app1传给app2的值。这里我已经把intent的接收放到app2的onResume()方法里
为什么app1再次启动的时候app2中的intent接收到的值不刷新,求大神给个答案,要怎么解决这个问题?
我想要的效果是app2在不被销毁的前提下,app2始终能接收到app1传过来的值

app1里打开app2的代码:
Intent intent = getPackageManager().getLaunchIntentForPackage("cnc.yunling.net.cncrechargetwo");
String result = "power-rate.html";
intent.putExtra("rate", result);
startActivity(intent);

app2获取intent的代码:
Intent intent = getIntent();
if (intent != null) {
keyword = intent.getStringExtra("rate");
if (keyword != null && !"".equals(keyword)) {
if (keyword.equals("power-rate.html")) {
url = Config.URL + "power-rate.html";
Log.i("power", keyword);
}
}
}