3
我有,我有一个服务:Intent.getStringExtra()始终返回null
Intent intent = new Intent(ClipboardWatcherService.this, DeliDict.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra("searchTerm", searchTerm);
startActivity(intent);
,并在我的活动:
@Override
public void onStart()
{
super.onStart();
Intent intent = getIntent();
String clipboardSearchTerm = intent.getStringExtra("searchTerm");
...
}
但intent.getStringExtra()始终返回null 。
注意: 因为我从我的服务调用StartActivity()(这不在活动类之外),所以我必须定义Intent.FLAG_ACTIVITY_NEW_TASK,导致我的活动只有一个实例一次处于活动状态。所以我必须进入onStart(),因为onCreate()只被调用一次。基本上我一直在寻找一种可靠的方式将我的服务的数据发送到整个活动一整天,但徒劳无功。你能提出一些建议吗?
虽然你的答案是伟大的,但其实我是使用SharedPreference,使我的服务,哪些是在同一个包的活动之间的共享变量。我知道它看起来很尴尬,但它确实有效。 –