我在Eclipse中内置了一个使用Cordova 2.0.0的Android应用程序.当使用Eclipse调试器构建并加载到手机上时,应用程序工作正常,但是当我在AndroidManifest文件中设置android:debuggable =“false”时,jQuery.ajax()POST失败.我没有告诉我LogCat跟踪中的失败原因.
这是jQuery.ajax调用:
jQuery.ajax({
url: that.endpoint,
data: that.data,
dataType: "json",
type: "POST",
contentType: "application/json",
success: successHandler,
error: errorHandler,
timeout: serviceTimeout
});
当android:debuggable =“true”它工作正常并转到成功处理程序,但当它android:debuggable =“false”时它转到failureHandler,只有textStatus设置为“error”而没有其他任何东西来指示它失败的原因.当它失败时,似乎帖子没有发生,因为我可以看到它没有点击我试图调用的web服务.
有没有人知道为什么debuggable标志可能以这种方式影响我的应用程序?
“可调试”标志会影响除日志记录级别以外的其他内容吗?
任何提示或指示将不胜感激.
干杯
解决方法:
找到了原因.我的代码很好.问题在于我试图调用的Web服务的SSL证书.虽然我的浏览器说没关系,但是当我使用SSL证书检查程序(例如http://www.geocerts.com/ssl_checker)检查它时,它显示证书层次结构存在问题.修复证书允许我的代码工作.
我的应用程序的iPhone版本从来没有遇到过这个问题,所以Android的SSL证书检查似乎更严格(在调试模式下运行时没有进行证书检查.)
原文地址:https://codeday.me/bug/20190620/1245911.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。