我有一个客户端/服务器应用程序,其中客户端是Android应用程序,服务器部署在Amazon AWS上。他们通过HTTPS通过HTTPS进行通信,以保持通信私密性。服务器位于https://server.example.com并使用我自己创建并签名的SSL证书。编写客户端是为了检查此证书,并仅与使用它的服务器通信。
事情通常非常有效,我们在全球拥有数千名用户。但是,有时我发现客户端无法与服务器通信。我可以找到这个,因为我已经包含了一个移动分析库,可以记录这样的事情并报告它们。
当通信失败时,可能是因为客户端超时,或者是错误,例如"无法解析主机server.example.com"。
我认为由于以下原因之一,沟通失败了:
为什么我们会被封锁?也许是因为我们正在使用SSL。也许我们不在某人的白名单上。我非常怀疑我们是否在任何黑名单上。
有关如何进行的任何想法?我可以以某种方式确定通信无法通过的原因(我显然无法访问我的用户设备)。有什么办法可以让更多的clint / server通信成功吗?
答案 0 :(得分:0)
为什么不实施网络状态检查器来记录网络。超时和无法解析主机似乎最有可能来自失去连接。