我的小程序是为某个体育俱乐部会员提供会员活动服务的。6号晚间我提交了第一个正式版本,7日晚被驳回,原因是:
你的小程序"*********"代码发布审核未通过,原因如下:
1:小程序可用性和完整性不符合规则:
(1):小程序打开报错。
(2):页面弹窗提示:认证失败(wifi, Android6.0.1,微信6.5.4,GIONEE M6SPlus、wifi,iPhone 5S,微信6.5.3,IOS 8.3)
如有疑问,请查看详情与反馈。
这里面提到的“报错”,弹窗的“认证失败”,均是我设定的逻辑。若要正常使用小程序,首先要在绑定页面将自己的OpenID与我数据库中预置的用户数据进行绑定。绑定成功后,服务器返回一个绑定标志,并调用wx.setStorageSync()在本地存储。
小程序首页的处理过程是:index.js onLoad判断本地有无绑定标志,没有则跳转到绑定页。同时,首页onShow时从服务器拉取活动列表,这个拉取过程,服务器要接收小程序本地的绑定标志作为参数,在服务器端验证真实性后才返回正确结果,否则返回“认证失败”。
我认为这个设定导致的报错,并非所谓的“可用性不符合规则”。我看了文档,需要我提供测试账号和密码。可是:
1. 我没有找到任何地方让我填写测试账号与密码;
2. 我提交的小程序作为正式版本,服务器端也必然是生产环境,数据涉及用户个人隐私,将来的版本还会存在商业秘密。如果我提供了具备完整功能的测试账号与密码,我的涉密信息必然泄露给审核人员,而且审核人员在体验操作小程序时,一定会对我的生产环境造成影响。哪怕审核人员不存在乱操作或是泄露我的数据的行为,这种道德风险也不应该由我承担。
__
__
我很困惑,难道不应该先关注一下我的代码有无技术问题吗?如果要对功能可用性进行审核,是不是可以提供一个测试环境让我自己去虚构数据?无论怎样也不能在我的生产环境上弄吧?