Repository navigation
Closed
Labels
in triagePresently being triaged by the triage teamPresently being triaged by the triage teamwaiting for responseThe Flutter team cannot make further progress on this issue until the original reporter respondsThe Flutter team cannot make further progress on this issue until the original reporter responds
Description
Steps to reproduce
1.2 APP 以个人信息处理规则弹窗等形式向用户明示个人信息处理的目的、方式和范围,未经
用户同意,存在收集 IMEI、IMSI、设备 MAC 地址、SUPI、SUCI、软件安装列表、位置、联系
人、通话记录、日历、短信、本机 电话号码、图片、音视频等个人信息。
检测结果:不通过
检测详情:(1)APP未经同意,存在收集个人信息的行为
2024-08-20 09:58:34.912 -> 读取已安装的应用
2024-08-20 10:00:17.581 -> 弹出隐私政策
Intent { act=android.intent.action.PROCESS_TEXT typ=text/plain }
at android.app.ApplicationPackageManager.queryIntentActivitiesAsUser()
a t
android.app.ApplicationPackageManager.queryIntentActivities(ApplicationPackageManager.jav
a:914)
at io.flutter.plugin.text.ProcessTextPlugin.cacheResolveInfos(ProcessTextPlugin.java:118)
at io.flutter.plugin.text.ProcessTextPlugin.queryTextActions(ProcessTextPlugin.java:52)
a t
io.flutter.embedding.engine.systemchannels.ProcessTextChannel$1.onMethodCall(ProcessTextC
hannel.java:63)
a t
io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.
java:267)
at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:292)
at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io�flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(Unknown
Source:12)
at android.os.Handler.handleCallback(Handler.java:790)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6554)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:558)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:810)
改进建议:建议在用户同意隐私政策之后,APP开始收集用户个人信息。
证据截图:(无)Expected results
I like to be able to access Oppo's privacy compliance policy
Actual results
OPPO privacy compliance testing rejected
Code sample
Code sample
[Paste your code here]Screenshots or Video
Screenshots / Video demonstration
[Upload media here]
Logs
Logs
[Paste your logs here]Flutter Doctor output
Doctor output
[Paste your output here]Metadata
Metadata
Assignees
Labels
in triagePresently being triaged by the triage teamPresently being triaged by the triage teamwaiting for responseThe Flutter team cannot make further progress on this issue until the original reporter respondsThe Flutter team cannot make further progress on this issue until the original reporter responds
Activity
huycozy commentedon Aug 21, 2024
English version (using https://translate.google.com):
huycozy commentedon Aug 21, 2024
Hi @icc-tips
Are you frequently reading the clipboard content when using TextField widget on your app? (May be similar to #101196)
Please consider posting issue in English that will help people can assist better. Thanks!
NeverOvO commentedon Aug 26, 2024
Intent { act=android.intent.action.PROCESS_TEXT typ=text/plain } at android.app.ApplicationPackageManager.queryIntentActivitiesAsUser() at android.app.ApplicationPackageManager.queryIntentActivities(ApplicationPackageManager.java:914) at p8.a.c(ProcessTextPlugin.java:47) at p8.a.b(ProcessTextPlugin.java:5) at l8.n$a.onMethodCall(ProcessTextChannel.java:46) at m8.j$a.a(MethodChannel.java:18) at a8.c.l(DartMessenger.java:19) at a8.c.m(DartMessenger.java:42) at a8.c.g(DartMessenger.java:1) at a8.b.run(R8$$SyntheticClass:13) at android.os.Handler.handleCallback(Handler.java:790) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:164) at android.app.ActivityThread.main(ActivityThread.java:6554) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:558) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:810)同一的问题,目前中国的VIVO和OPPO提示违规读取剪切板和读取已安装的应用的问题,导致无法通过审核
The same issue is currently being raised by VIVO and OPPO in China, who are reporting violations of accessing clipboard and installed applications, resulting in the inability to pass the review process
在3.19.3版本时,修改此处/flutter/packages/flutter/lib/src/widgets/editable_text.dart的源代码可以修复这个权限问题。
In version 3.19.3, modifying the source code of /flutter/packages/flutter/lib/src/widgets/editable_text.dart here can fix this permission issue.
bleroux commentedon Aug 26, 2024
@icc-tips @NeverOvO Can you share you android manifest file?
NeverOvO commentedon Aug 27, 2024
👌
`
`
bleroux commentedon Aug 27, 2024
Thanks 🙏
Can you test if adding the following section at the end of your manifest file fixes the issue?
... </application> <!-- Required to query activities that can process text, see: https://developer.android.com/training/package-visibility and https://developer.android.com/reference/android/content/Intent#ACTION_PROCESS_TEXT. In particular, this is used by the Flutter engine in io.flutter.plugin.text.ProcessTextPlugin. --> <queries> <intent> <action android:name="android.intent.action.PROCESS_TEXT"/> <data android:mimeType="text/plain"/> </intent> </queries> </manifest>NeverOvO commentedon Aug 27, 2024
1.2
APP 以个人信息处理规则弹窗等形式向用户明示个人信息处理的目的、方式和范围,未经用户同意,存在收集 IMEI、IMSI、设备 MAC 地址、SUPI、SUCI、软件安装列表、位置、联系人、通话记录、日历、短信、本机 电话号码、图片、音视频等个人信息
检测详情:
APP未经同意,存在收集个人信息的行为 (详情)
2024-08-27 14:31:25 启动APP,开始检测
2024-08-27 14:31:25 Start the app and begin testing
2024-08-27 14:31:28 读取已安装的应用
2024-08-27 14:31:28 Read installed applications
2024-08-27 14:33:14 APP启动完毕
2024-08-27 14:33:14 APP startup completed
改进建议:
建议在用户同意隐私政策之后,APP开始收集用户个人信息。
添加如图代码后,进行上传检测,反馈依然相同
After adding the code as shown in the picture, perform upload detection and the feedback remains the same
OPPO那会把读取剪切板认为是读取已安装应用列表,xiaomi平台会提示为未经允许前读取用户剪切板
OPPO will consider reading the clipboard as reading the list of installed applications, while Xiaomi platform will prompt to read the user clipboard without permission
github-actions commentedon Sep 11, 2024
Without additional information, we are unfortunately not sure how to resolve this issue. We are therefore reluctantly going to close this bug for now.
If you find this problem please file a new issue with the same description, what happens, logs and the output of 'flutter doctor -v'. All system setups can be slightly different so it's always better to open new issues and reference the related ones.
Thanks for your contribution.
github-actions commentedon Sep 25, 2024
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of
flutter doctor -vand a minimal reproduction of the issue.