Android APP微信第三方登录踩坑 - 微信开放平台修改应用包名后微信第三方登录失败

    在微信开放平台注册移动应用,才能在APP里实现「微信登录」和「微信支付」。

    近期因为业务需要,需要修改应用的包名,因此在微信开发平台重新提交了应用「基本信息」修改申请,顺便吐槽下,现在微信开发平台对应用审核真是越来越严格了,现在不光是需要提供应用的基本信息和相关介绍,还要求应用的官方网站要像模像样,五脏俱全,对应用开发者真是要求越来越高了。我就是想简单修改个包名,就审核失败了三回,直到第四次才审核通过,还好笔者除了Anroid客户端和后台开发,官网的前端也能勉强对付下,总之过程真是折磨人:

  • 您的应用审核被驳回。你的应用所选的类目不符合要求,请重新选择。
  • 您的应用审核被驳回。 驳回原因:你好,你申请的应用名称与网站应用信息不一致,此次申请不予通过,建议修改与网站应用信息一致的名称后重新提交申请。 。 该应用仍以上次审核通过的状态在微信中正常运行
  • 您的应用审核被驳回。 驳回原因:你好,网站内容、排版等需符合常规网站要求,不支持只有几行文字,或者仅是一张或几张图片的,又或者是文档形式的网站内容。网站内容需有但不限于首页、产品展示、相关应用名称字眼及其应用介绍、用户协议、版权所有者、网站备案信息、联系方式等基础服务信息。 。 该应用仍以上次审核通过的状态在微信中正常运行。

    好不容易通过应用基本信息审核后,于是就可以修改应用的签名和包名了,如下图:

    在填写了新的应用包名后,再同步修改了Android项目根目录下的build.gradle文件中的applicationId:

applicationId "com.xxx.xxx"
    修改完后重新打包安装APK包,结果在第三方登录页面,点击「允许授权」后,就没有收到任何反馈了。于是去网上找解决方案,在微信开放平台的社区里搜到了解决方案,这个方法就是删除微信所有数据或者卸载重新安装,如下面两张图所示,一张图是用户提出问题,一张是社区管理员给出的答复:

 
 

    但是考虑这个方案会清理掉用户所有的聊天记录,笔者嫌弃太麻烦了,所以一开始是先尝试了将手机上的微信设置 - 清理缓存(不是删除所有数据)后,包括退出重新登录,甚至更换测试手机,但这些方法统统无效。最后我只能卸载微信后重装了,但是很失望,仍然没有解决,白白浪费我这么多时间。我在微信开发平台社区发帖子也没有任何回应,只能静下来思考,既然所有方法都试过了,如果不是微信开放平台的问题,那就是自己的问题了。又回到官网找答案,原来答案就在修改包名的信息页:

应用在一台设备上的唯一标识,在manifest文件里面声明,该包名应和正式发布应用的包名一致。例如,微信的包名为com.tencent.mm。

原来不光要修改「applicationId」 还要修改 「manifest文件」

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.xxx.xxx">

     如果修改了这里的package,就必须将整个项目的包名都修改了,需要重新编译打包。所以如果走到这里,所有坑都趟完了。一般在微信开发平台申请添加一个新应用不太容易出错,如果后续来修改包名,往往会出错,要记得仔细看官网说明,如果按照上面说的方法修改完毕后还是不行,那最后还可以将微信卸载重装或在手机系统设置里把微信的数据都删除掉了。

猜你喜欢

转载自blog.csdn.net/crazestone0614/article/details/127589659