You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter自定义文本工具栏:查询支持Intent.ACTION_PROCESS_TEXT的活动

解决Flutter自定义文本选择工具栏无法获取ACTION_PROCESS_TEXT活动的问题

针对你遇到的Intent.ACTION_PROCESS_TEXT查询返回空的问题,按以下步骤排查修复:

  • 修正Intent构造参数
    ACTION_PROCESS_TEXT要求必须指定text/plain的MIME类型,部分应用还依赖EXTRA_PROCESS_TEXT_READONLY参数。正确构造Intent的代码示例:

    val processTextIntent = Intent(Intent.ACTION_PROCESS_TEXT).apply {
        type = "text/plain"
        // 可选,但部分应用会判断此参数来决定是否显示
        putExtra(Intent.EXTRA_PROCESS_TEXT_READONLY, true)
    }
    
  • 完善AndroidManifest的包可见性配置
    即使添加了QUERY_ALL_PACKAGES权限,Android 11+仍建议明确声明针对ACTION_PROCESS_TEXT的查询规则,避免系统过滤。在AndroidManifest.xml中添加:

    <queries>
        <intent>
            <action android:name="android.intent.action.PROCESS_TEXT" />
            <data android:mimeType="text/plain" />
        </intent>
    </queries>
    
  • 确认查询代码的Flag设置
    使用PackageManager.MATCH_ALL flag来确保获取所有匹配的Activity,避免默认过滤:

    val matchedActivities = packageManager.queryIntentActivities(
        processTextIntent,
        PackageManager.MATCH_ALL
    )
    
  • 验证设备上存在支持的应用
    先确认测试设备上有注册了ACTION_PROCESS_TEXT的应用(比如Google翻译、系统自带的文本处理工具),如果没有这类应用,查询结果自然为空。可以先安装Google翻译来测试。

内容的提问来源于stack exchange,提问作者Savi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 06:45:10