目前,在Google Play上架应用的开发者们有一个普遍的感受:上架比写代码还难!在应用开发、更新及发布过程中,尤其是涉及用户数据和隐私的部分,稍有不慎就可能导致应用被下架甚至封号。

很多开发者表示,明明是原生应用,不是马甲包更不存在A/B面,还是被谷歌判为恶意软件下架封号了,以至于绝望吐槽:

我都不知道自己的应用会有什么隐藏功能,被谷歌给查出来了!

今天跟大家聊一下一种可能被忽视的原因,即WebView调用JavaScript导致的恶意软件判定。

大家应该都非常清楚,谷歌对隐私政策的要求非常严格,尤其是在用户数据相关的部分。

谷歌的政策中明确禁止某些情况下的JavaScript调用,特别是未经信任的网址,以及任何涉及用户隐私信息的敏感权限,如定位、设备信息等。

这意味着,如果开发者在WebView中使用了JavaScript,就需要格外小心,应该避免向JavaScript暴露原生接口,比如设备传感器等。

如果你的WebView可以通过JavaScript访问设备传感器、获取设备信息或用户隐私信息,那么这就算是暴露接口。因为JavaScript代码可以在不经过应用更新的情况下被动态修改,Google Play无法进行有效的审查和监管。

谷歌的政策非常严格,对于WebView中涉及到的交互行为,尤其是无法监控的高风险行为,会严厉打击、“一刀切”。

因此开发者不要试图指望通过WebView藏匿一些不合规的行为逃过审查。恰恰相反,这只会增加应用被下架的风险。

根据开发者们交流分享的经验来看,应用被判定为恶意软件的常见可能原因有这几种:

  • 原生代码量少意图不明:提交的App原生代码量过少,容易被Google Play识别为H5马甲包。
  • 加载访问不受信任的URL:WebView中加载了未经信任的URL,或者使用HTTP协议。
  • 访问敏感权限:通过JavaScript方法获取设备信息或用户隐私信息,如设备ID等。
  • 功能太简单:应用的功能过于简单,审核时可能被判为行为不透明。
  • 行为高风险:Google Play现在对无法监控的行为进行严打,高风险行为直接导致应用被判定为恶意软件。

很多开发者在面对应用被下架或封号的情况时,认为自己并没有做错什么就去申诉。但Google Play并不会告诉你具体的问题出在哪里,只会回复你查看开发者开发协议政策。

与其事后申诉,不如事前预防,大家应仔细分析Google Play的政策,寻找可能的问题所在。

总的来说,如果你不知道为啥应用莫名其妙被判为恶意软件,可以往JavaScript这方面找找原因,严格遵守Google Play的隐私政策,确保应用的行为透明且合规,才能降低被判定为恶意软件的风险。

希望上述内容能够帮助大家更好地理解谷歌的审核标准,避免常见的误区和错误,提高应用上架的成功率。