cha*_*han 2 android android-intent android-asynctask android-activity
我singleTop在我的主要使用模式Activity.我在用SearchWidget
这对我来说很明显MainAcivity:
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:launchMode="singleTop" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data
android:name="android.app.searchable"
android:resource="@xml/searchable" />
</activity>
Run Code Online (Sandbox Code Playgroud)
onNewIntent 被叫两次:
protected void onNewIntent(Intent intent) {
if (Intent.ACTION_SEARCH.equals(intent.getAction())) {
// here is my code
}
}
Run Code Online (Sandbox Code Playgroud)
为什么会这样?
您使用硬件键盘执行搜索吗?如果是,则双重执行是已知但从未修复的Android错误.
您可能希望尝试使用整数锁变量来避免双重执行.
我有一个Android 4.2.2设备有同样的问题.在Android Emulator中观察到类似的行为.
| 归档时间: |
|
| 查看次数: |
1008 次 |
| 最近记录: |