首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >意想不到的动作WEB_SEARCH

意想不到的动作WEB_SEARCH
EN

Stack Overflow用户
提问于 2016-04-13 16:15:54
回答 2查看 2K关注 0票数 2

我有相当大的应用程序来检查与许多活动。最常见的例外之一是

未找到处理意图的活动{ act=android.intent.action.WEB_SEARCH (有附加内容)}

什么鬼东西?我在代码中看不到任何"WEB_SEARCH“,我不能重现它,我甚至不知道在哪里寻找原因(在哪个Activity中)。在Exception堆栈下面,没有我的包中的任何类...如何跟踪和修复此问题?

代码语言:javascript
运行
复制
Fatal Exception: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.WEB_SEARCH (has extras) }
   at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1659)
   at android.app.Instrumentation.execStartActivity(Instrumentation.java:1434)
   at android.app.Activity.startActivityForResult(Activity.java:3432)
   at android.app.Activity.startActivityForResult(Activity.java:3393)
   at android.support.v4.app.FragmentActivity.startActivityForResult(Unknown Source)
   at android.app.Activity.startActivity(Activity.java:3628)
   at android.app.Activity.startActivity(Activity.java:3596)
   at android.webkit.SelectActionModeCallbackSec.onActionItemClicked(SelectActionModeCallbackSec.java:390)
   at com.android.internal.policy.impl.PhoneWindow$DecorView$ActionModeCallbackWrapper.onActionItemClicked(PhoneWindow.java:3264)
   at android.support.v7.view.SupportActionModeWrapper$CallbackWrapper.onActionItemClicked(Unknown Source)
   at android.support.v7.app.AppCompatDelegateImplV7$ActionModeCallbackWrapperV7.onActionItemClicked(Unknown Source)
   at android.support.v7.app.AppCompatDelegateImplV7$ActionModeCallbackWrapperV7.onActionItemClicked(Unknown Source)
   at android.support.v7.view.StandaloneActionMode.onMenuItemSelected(Unknown Source)
   at android.support.v7.view.menu.MenuBuilder.dispatchMenuItemSelected(Unknown Source)
   at android.support.v7.view.menu.MenuItemImpl.invoke(Unknown Source)
   at android.support.v7.view.menu.MenuBuilder.performItemAction(Unknown Source)
   at android.support.v7.view.menu.MenuBuilder.performItemAction(Unknown Source)
   at android.support.v7.view.menu.MenuPopupHelper.onItemClick(Unknown Source)
   at android.widget.AdapterView.performItemClick(AdapterView.java:301)
   at android.widget.AbsListView.performItemClick(AbsListView.java:1490)
   at android.widget.AbsListView$PerformClick.run(AbsListView.java:3275)
   at android.widget.AbsListView$1.run(AbsListView.java:4518)
   at android.os.Handler.handleCallback(Handler.java:725)
   at android.os.Handler.dispatchMessage(Handler.java:92)
   at android.os.Looper.loop(Looper.java:137)
   at android.app.ActivityThread.main(ActivityThread.java:5283)
   at java.lang.reflect.Method.invokeNative(Method.java)
   at java.lang.reflect.Method.invoke(Method.java:511)
   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
   at dalvik.system.NativeStart.main(NativeStart.java)
EN

Stack Overflow用户

回答已采纳

发布于 2016-04-14 13:24:39

我必须为其他未来的搜索者回答我自己的问题。为了在带有WebViewActivity中使用,或者为了在一些Base/MainActivity抽象层中的安全考虑:

代码语言:javascript
运行
复制
@Override
public void startActivityForResult(Intent i, int reqCode, Bundle b){
    boolean activityExists = i.resolveActivityInfo(getPackageManager(), 0) != null;
    if(activityExists)
        super.startActivityForResult(i, reqCode, b);
    else{
        if(Intent.ACTION_WEB_SEARCH.equals(i.getAction()) && i.getExtras()!=null){
            String query = i.getExtras().getString(SearchManager.QUERY, null);
            Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.google.pl/search?q="+query));
            boolean browserExists = i.resolveActivityInfo(getPackageManager(), 0) != null;
            if(browserExists && query!=null){
                startActivity(browserIntent);
                return;
            }
        }
        Toast.makeText(this, R.string.error_no_app_for_intent, Toast.LENGTH_LONG).show();
    }
}

出现这种情况的原因(可能)是硬件制造商定制的系统UI/修改过的Android,它添加了一些与搜索相关的功能。不能在“干净”的Android设备上重现

票数 5
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36592450

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档