我有一个带有ACTION_SEND意图过滤器的活动 . 一个文件可以从另一个应用程序共享到此活动,比如说Gallery,并在onNewIntent中处理 .

但是,在我的三星Galaxy S5上,它不像以前那样工作(它已经在很多设备上进行了测试,但仍然适用于某些设备,所以我认为它是特定于设备的) . onCreate总是被调用而onNewIntent不是 . 它总是有一个singleTask的launchMode .

当我对应用程序进行后台处理并返回时,不会调用onCreate,但是当我从选择器中选择我的应用程序以便共享文件时,我会得到上述行为 .

我已经尝试将launchMode设置为singleTop并设置标志intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);关于最初启动活动的意图 . 我试过自己设置Intent.FLAG_ACTIVITY_SINGLE_TOP . 我也尝试将launchMode更改为singleInstance . 尽管在应用程序背景化时调用了onSaveInstanceState,但当我返回活动时,savedInstanceState似乎为null .

有没有办法防止这种行为并调用onNewIntent或者它是特定于设备的错误?