app 上架 Vivo 失败 提示 Chromium 读取剪贴板内容 有了解的大佬吗

75 天前
qwwuyu  qwwuyu

我司 APP 打开使用的 WebView 加载的本地 html 和链接服务器 html 展示隐私政策的.
现在 Vivo 抓到以下代码,这个有办法屏蔽吗?
最近上架 Vivo 是真的烦心,其它平台都行了,Vivo 已经连续失败 N 次了...

java.lang.Exception
	at android.content.ClipData.getItemAt(Native Method)
	at org.chromium.ui.base.EventForwarder.d(chromium-TrichromeWebViewGoogle.apk-stable-410410683:10)
	at Qr.onDragEvent(chromium-TrichromeWebViewGoogle.apk-stable-410410683:6)
	at com.android.webview.chromium.WebViewChromium.onDragEvent(chromium-TrichromeWebViewGoogle.apk-stable-410410683:7)
	at android.webkit.WebView.onDragEvent(WebView.java:2944)
	at android.view.View.callDragEventHandler(View.java:25967)
	at android.view.View.dispatchDragEvent(View.java:25955)
	at android.view.ViewGroup.dispatchDragEvent(ViewGroup.java:1821)
	at android.view.ViewGroup.dispatchDragEvent(ViewGroup.java:1803)
	at android.view.ViewGroup.dispatchDragEvent(ViewGroup.java:1803)
	at android.view.ViewGroup.dispatchDragEvent(ViewGroup.java:1803)
	at android.view.ViewGroup.dispatchDragEvent(ViewGroup.java:1803)
	at android.view.ViewRootImpl.handleDragEvent(ViewRootImpl.java:7202)
	at android.view.ViewRootImpl.access$1600(ViewRootImpl.java:153)
	at android.view.ViewRootImpl$ViewRootHandler.handleMessage(ViewRootImpl.java:4990)
	at android.os.Handler.dispatchMessage(Handler.java:107)
	at android.os.Looper.loop(Looper.java:230)
	at android.app.ActivityThread.main(ActivityThread.java:8082)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:526)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1034)
3279 次点击
所在节点   Android  Android
14 条回复
MozzieW
MozzieW
75 天前
1. 找客服说明
or
2. 修改隐私协议,说明要使用剪切板权限
qwwuyu
qwwuyu
75 天前
@MozzieW 第一条正在尝试,但是虽然是系统行为,估计也要 APP 买单,之前查出 WebView 获取定位信息,那个是可以 API 关闭的.
第二条没办法,因为用的 WebView 加载的隐私政策,没同意之前就触发了系统剪切板行为
paopjian
paopjian
75 天前
隐私政策改成图片显示? 又不需要选中, 直接展示一份渲染好的?
lw0x1
lw0x1
75 天前
会不会是你代码哪里设置有问题,我做的 APP 基本都是这么干的,在 vivo 渠道没有触发过这个问题
qwwuyu
qwwuyu
75 天前
@paopjian 这块内容多,有很多链接,本地链接到服务器的服务条款和隐私政策,隐私政策会依赖第三方 SDK,会提供 h5 链接,最后依旧避免不了使用 WebView.
qwwuyu
qwwuyu
75 天前
@lw0x1 你那 WebView 加载隐私政策会调用 webSetting.setJavaScriptEnabled(true)吗?
limiter
limiter
75 天前
qqbb
qqbb
75 天前
我遇到过,我办法是 hook 住 剪切板的复制和粘贴功能,直到隐私同意之后
lw0x1
lw0x1
75 天前
@qwwuyu 会的,常规的 webSetting 都会设置,但是你这个情况猜不出来是什么原因,确实没遇到过这种,也没在 vivo 手机上复现出来
dandycheung
dandycheung
75 天前
哈哈哈,vivo 很迷的。我曾经为了解决一个只有 vivo 手机上才会出现的 bug 而发版,结果除了 vivo 商店审核没过以外别的都过了。
qwwuyu
qwwuyu
74 天前
@dandycheung 最近审核确实很迷,其它平台都过了,vivo 先提示获取 ssid 频繁,再提示隐私政策不对,最后全修复了又告诉我 WebView 获取剪切板,不一次性测完...
ysy950803
ysy950803
74 天前
国内比 Google Play 还严格,真是不懂……
pqlamz
pqlamz
74 天前
看堆栈,这估计是他自动化测试过程中,在你 app 的 webview 里触发了 drag&drop 的逻辑,然后走到了 chromium 的读取粘贴板的逻辑里。这应该是一个偶现的情况,你重新提审,他可能再跑自动化测试就触发不到这里了。或者你也可以试试看看有没有什么办法,禁止你的 webview 走 drag&drop 的逻辑
pqlamz
pqlamz
74 天前
@pqlamz

看代码,是走到了这里

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1104869

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX