Flutter TextFiled频繁采集“剪切板信息”

2024-07-21 1140阅读

在使用Flutter开发者,输入框是必不可少的功能,最近产品出了需要,要求输入框记住用户登录过的手机号,并在输入框输入时提示出来,这是个很基础的功能,但是在通过测试验收发布到应用市场时,被Vivo拒了,具体报错信息如下:

APP在运行时,SDK存在以下违规行为: 1、未见向用户告知且未经用户同意,f2prateek dart存在频繁采集“剪切板信息”的行为,非服务所必须且无合理应用场景,超出实现产品或服务的业务功能 所必须的最低频率

查看代码后发现就是一个很普通的tetFiled,没有其他特殊的,先做排除

  1. 是否跟焦点有关
  2. 是否需要在组件上做特殊设置

把组件主动获取焦点的 autoFocus 设置为false,提交到VIVO的做隐私合规检测,发现依然没有通过,还是这个问题。没办法去看源码(Flutter3.7.10),发现有一个函数:copySelection

 /// Copy current selection to [Clipboard].
  @override
  void copySelection(SelectionChangedCause cause) {
    final TextSelection selection = textEditingValue.selection;
    assert(selection != null);
    if (selection.isCollapsed || widget.obscureText) {
      return;
    }
    final String text = textEditingValue.text;
    Clipboard.setData(ClipboardData(text: selection.textInside(text)));
    if (cause == SelectionChangedCause.toolbar) {
      bringIntoView(textEditingValue.selection.extent);
      hideToolbar(false);
      switch (defaultTargetPlatform) {
        case TargetPlatform.iOS:
        case TargetPlatform.macOS:
        case TargetPlatform.linux:
        case TargetPlatform.windows:
          break;
        case TargetPlatform.android:
        case TargetPlatform.fuchsia:
          // Collapse the selection and hide the toolbar and handles.
          userUpdateTextEditingValue(
            TextEditingValue(
              text: textEditingValue.text,
              selection: TextSelection.collapsed(offset: textEditingValue.selection.end),
            ),
            SelectionChangedCause.toolbar,
          );
          break;
      }
    }
    clipboardStatus?.update();
  }

源码的注释是将当前内容复制到剪贴板,clipboardStatus是检测剪贴板是否可以粘贴。因为检测结果是“频繁采集剪贴板” 将日志文件下载看了下,确实频率非常高,那是不是跟这个状态被更新有关呢? 抱着试试看的态度,将源码的最后一行注释掉,重新编译打包

//clipboardStatus?.update();

提交到VIVO隐私自检,果然不出所料:检测通过!

Flutter TextFiled频繁采集“剪切板信息” 将此问题做个记录,可以帮到后面的同学们

注意:每个项目使用的版本可能不一致,建议优先找这个函数copySelection

VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]