记录一次被谷歌封号后又解封的过程

2024-06-10 22:52

本文主要是介绍记录一次被谷歌封号后又解封的过程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

先提前恭祝2024年所有参加高考的学子们都能金榜题名,会的全对,不会的蒙的全对!

一、背景

        众所周知,谷歌、ios应用市场对app的审查都是极其严格的,开发者稍有不慎就会被谷歌下架应用,乃至封号。我们公司是做金融类的app,在谷歌上架后,其他国家都提供分发,背景是一个业务同事提出要新增一个存款功能,由于时间比较紧,最后讨论出的方案是紧急在主页新增一个按钮,点击按钮跳转公司官网来解决(被封号才知道这个决定有多愚蠢)。该功能于2024年5月17日上线,上线后一个小时随即收到谷歌邮件通知违规,谷歌一般不会明确告诉你是哪个功能违规,这次只是说明是哪个app违规,app被判定为危险、有害应用,由于时区关系,没有及时回复,导致随后谷歌对我们开发者账号进行了封号处理。

二、申诉过程

         第二天上班得知封号的消息后,我们便开始进行了全力申诉。通过提供金融牌照资质、提供违规代码、违规功能截图等形式的申诉材料,反复向谷歌提供证据我们是无心之过。 但是前几个邮件都是反复收到的是谷歌回复的模板邮件。

        后面经过提供金融牌照等资料后,谷歌虽然回复的是拒绝解除封号,但是在回复模板内容之外,额外加了几行内容,内容是如果我们依然觉得有异议,请贴上代码截图,辅助继续申诉,我们立刻将违规代码截图、违规功能截图等材料提供,后续就是漫长的等待。

三、解封

        经过接近20天的反复申诉与漫长等待,在6.6日晚上,也是高考前夕,终于等来了解封的通知。

四、复盘

        经过接近20天的反复申诉与等待,谷歌于2024年6月6日正式解封了我们的应用。在此期间,我们进行了深入的分析和反思,总结了导致此次封禁的主要原因,并提出了未来避免类似问题的方法。以下是详细的复盘总结:

1. 未仔细研读谷歌开发者政策

问题描述: 我们在开发过程中没有仔细研读谷歌的开发者政策,导致无意中开发了违规功能。谷歌严禁跳转三方外链,并且该外链还提供apk下载功能,这些功能严重违反了谷歌的政策规定,最终导致了应用被下架,开发者账号被封禁。

改进措施

  • 定期培训:为开发团队安排定期的政策培训,确保每个成员都清楚了解谷歌开发者政策的最新要求。
  • 政策检查清单:在每次版本发布前,使用政策检查清单逐项核对,确保所有功能均符合谷歌政策。
2. 缺乏严格的审查流程

问题描述: 我们缺乏严格的内部审查流程,没有及时发现和纠正违规功能,导致问题积累并最终触发谷歌的封禁措施。

改进措施

  • 引入审查机制:建立严格的内部代码审查和功能审查机制,在开发阶段就发现并解决潜在的政策违规问题。
  • 第三方审核:考虑引入第三方审核团队,对应用进行定期审查,提供外部视角的建议和纠正措施。
3. 申诉过程中的经验教训

问题描述: 在申诉过程中,由于对谷歌的申诉流程不够熟悉,导致申诉效率低下,增加了等待时间。

改进措施

  • 申诉流程培训:培训团队熟悉谷歌的申诉流程,了解如何有效提交申诉材料,提高申诉的成功率和效率。
  • 案例学习:研究其他开发者的成功申诉案例,学习其中的经验和技巧,应用于我们的申诉过程中。
4. 沟通不及时

问题描述: 在封禁发生后,未能及时与用户沟通解释情况,导致用户的不满和流失。

改进措施

  • 应急预案:制定详细的应急预案,一旦发生封禁,立即启动与用户的沟通机制,解释情况并提供解决方案。
  • 多渠道沟通:利用邮件、社交媒体、官网公告等多种渠道,及时更新用户关于应用状态的信息,保持透明度。

未来展望

通过这次复盘,我们深刻认识到了遵守平台政策和完善内部流程的重要性。我们将继续加强团队培训和流程优化,确保未来不再发生类似的封禁事件,为用户提供稳定、安全、合规的应用服务。

此次解封经历虽然艰辛,但也为我们积累了宝贵的经验。我们将以此为契机,进一步提升应用的合规性和用户体验,继续努力,为用户带来更好的产品和服务。

如果觉得可以,请留下您的点赞跟收藏,给博主一个小小的鼓励,感谢哟~

这篇关于记录一次被谷歌封号后又解封的过程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1049497

相关文章

线程池ThreadPoolExecutor应用过程

《线程池ThreadPoolExecutor应用过程》:本文主要介绍如何使用ThreadPoolExecutor创建线程池,包括其构造方法、常用方法、参数校验以及如何选择合适的拒绝策略,文章还讨论... 目录ThreadPoolExecutor构造说明及常用方法为什么强制要求使用ThreadPoolExec

springboot3.x使用@NacosValue无法获取配置信息的解决过程

《springboot3.x使用@NacosValue无法获取配置信息的解决过程》在SpringBoot3.x中升级Nacos依赖后,使用@NacosValue无法动态获取配置,通过引入SpringC... 目录一、python问题描述二、解决方案总结一、问题描述springboot从2android.x

MySQL数据目录迁移的完整过程

《MySQL数据目录迁移的完整过程》文章详细介绍了将MySQL数据目录迁移到新硬盘的整个过程,包括新硬盘挂载、创建新的数据目录、迁移数据(推荐使用两遍rsync方案)、修改MySQL配置文件和重启验证... 目录1,新硬盘挂载(如果有的话)2,创建新的 mysql 数据目录3,迁移 MySQL 数据(推荐两

MyBatis-Plus逻辑删除实现过程

《MyBatis-Plus逻辑删除实现过程》本文介绍了MyBatis-Plus如何实现逻辑删除功能,包括自动填充字段、配置与实现步骤、常见应用场景,并展示了如何使用remove方法进行逻辑删除,逻辑删... 目录1. 逻辑删除的必要性编程1.1 逻辑删除的定义1.2 逻辑删php除的优点1.3 适用场景2.

Python中4大日志记录库比较的终极PK

《Python中4大日志记录库比较的终极PK》日志记录框架是一种工具,可帮助您标准化应用程序中的日志记录过程,:本文主要介绍Python中4大日志记录库比较的相关资料,文中通过代码介绍的非常详细,... 目录一、logging库1、优点2、缺点二、LogAid库三、Loguru库四、Structlogphp

JAVA SpringBoot集成Jasypt进行加密、解密的详细过程

《JAVASpringBoot集成Jasypt进行加密、解密的详细过程》文章详细介绍了如何在SpringBoot项目中集成Jasypt进行加密和解密,包括Jasypt简介、如何添加依赖、配置加密密钥... 目录Java (SpringBoot) 集成 Jasypt 进行加密、解密 - 详细教程一、Jasyp

Java通过ServerSocket与Socket实现通信过程

《Java通过ServerSocket与Socket实现通信过程》本文介绍了Java中的ServerSocket和Socket类,详细讲解了它们的构造方法和使用场景,并通过一个简单的通信示例展示了如何... 目录1 ServerSocket2 Socket3 服务器端4 客户端5 运行结果6 设置超时总结1

MongoDB搭建过程及单机版部署方法

《MongoDB搭建过程及单机版部署方法》MongoDB是一个灵活、高性能的NoSQL数据库,特别适合快速开发和大规模分布式系统,本文给大家介绍MongoDB搭建过程及单机版部署方法,感兴趣的朋友跟随... 目录前言1️⃣ 核心特点1、文档存储2、无模式(Schema-less)3、高性能4、水平扩展(Sh

MySQL中存储过程(procedure)的使用及说明

《MySQL中存储过程(procedure)的使用及说明》存储过程是预先定义的SQL语句集合,可在数据库中重复调用,它们提供事务性、高效性和安全性,MySQL和Java中均可创建和调用存储过程,示例展... 目录概念示例1示例2总结概念存储过程:在数据库中预先定义好一组SQL语句,可以被程序反复调用。

MySQL存储过程实践(in、out、inout)

《MySQL存储过程实践(in、out、inout)》文章介绍了数据库中的存储过程,包括其定义、优缺点、性能调校与撰写,以及创建和调用方法,还详细说明了存储过程的参数类型,包括IN、OUT和INOUT... 目录简述存储过程存储过程的优缺点优点缺点存储过程的创建和调用mysql 存储过程中的关键语法案例存储