根据国家政策法规,只有实名认证用户才能在论坛回帖留言,点击去完成实名认证 >>
千寻位置
发表主题
  • 1477阅读
  • 9回复

高精度定位获取不到域名和端口问题
[复制链接]

级别: 新手上路
 
只看楼主 倒序阅读 楼主  发表于: 2019-12-27
SDK版本:libqxwz-pssdk-1.3.0-20191216-winstartech-keil-arm-production-debug.package
问题:无法获取到服务器域名,端口。

日志:

[1970-01-01 00:00:00][DBG][MANAGER]manager init
[1970-01-01 00:00:00][DBG][AUTH]auth init
[1970-01-01 00:00:00][DBG][CONFIG]config init
[1970-01-01 00:00:00][DBG][HTTP]HTTP init
[1970-01-01 00:00:00][DBG][OSS_SESS][] transfer from [OSS_SESS_STATE_NONE] to [OSS_SESS_STATE_INIT]
[1970-01-01 00:00:00][DBG][SDK]sdk transfer from [SDK_STATE_NONE] to [SDK_STATE_INIT]
<<====QXSI_GPS_CONF:0
QXSI_GPRS_CALL
[1970-01-01 00:00:00][DBG][HTTP]create an HTTP handler
[1970-01-01 00:00:00][ERR][HTTP]Call qxwz_realloc failed
[1970-01-01 00:00:00][DBG][HTTP]destroy an HTTP handler
[1970-01-01 00:00:00][DBG][HTTP]HTTP session [-1] transfer from [HTTP_IDLE] to [HTTP_IDLE]
<<====QXSI_GPS_AUTH:-101
级别: admin
只看该作者 沙发  发表于: 2019-12-27
您好,报错内容为“Call qxwz_realloc failed”,与域名端口没有关系,可能是申请分配内存失败了。
请确认下您系统的堆大小,以及malloc,realloc所能单次分配的最大内存块是多少,一共可以分配多少内存。谢谢!
级别: 新手上路
只看该作者 板凳  发表于: 2019-12-27
本部分内容设定了隐藏,需要回复后才能看到
级别: admin
只看该作者 地板  发表于: 2019-12-27
回 qxwz22831773 的帖子
qxwz22831773:[内容隐藏] (2019-12-27 12:02)  img: images/back.gif

您好,您之前使用的版本不是千寻位置平台服务SDK发布的。由于内存分配失败会导致当前的SDK终止执行,无法进行到解析域名那一步。所以请先解决内存申请失败的问题,谢谢。
级别: 新手上路
只看该作者 4楼 发表于: 2019-12-27
malloc 问题已解决。是由于程序中限制了malloc最大只有512。

鉴权问题:
鉴权失败,调用鉴权函数返回值为-7,在文档里未找到说明。
[ERR][SDK]sdk still in authenticating, wait ...
<<====QXSI_GPS_AUTH:-7
之后打印以下日志:
[2019-12-27 16:06:08][DBG][HTTP]HTTP session [2] transfer from [HTTP_CONNECTING] to [HTTP_FINISHED]
[2019-12-27 16:06:08][DBG][HTTP]shutdown an HTTP connection [2]
[2019-12-27 16:06:08][DBG][SDK]sdk auth ret [-101]
[2019-12-27 16:06:08][DBG][SDK]sdk transfer from [SDK_STATE_AUTHING] to [SDK_STATE_INIT]
级别: admin
只看该作者 5楼 发表于: 2019-12-27
回 qxwz22831773 的帖子
qxwz22831773:malloc 问题已解决。是由于程序中限制了malloc最大只有512。
鉴权问题:
鉴权失败,调用鉴权函数返回值为-7,在文档里未找到说明。
[ERR][SDK]sdk still in authenticating, wait ...
....... (2019-12-27 16:12)  img: images/back.gif

您好,-7错误码表示鉴权正在进行中,鉴权的过程是异步的,鉴权成功与否是通过鉴权回调函数返回的;开发者文档只是给出了接口使用说明和一些常见的错误码,详细的错误码需要参见qxwz_sdk.h头文件;从目前的日志是无法看出具体的错误原因的,需要您给出全部的日志信息,谢谢。
级别: 新手上路
只看该作者 6楼 发表于: 01-06
本部分内容设定了隐藏,需要回复后才能看到
级别: admin
只看该作者 7楼 发表于: 01-07
回 qxwz22831773 的帖子
qxwz22831773:[内容隐藏] (2020-01-06 21:16)  img: images/back.gif

您好,您给出的实现更偏向于是同步网络操作。在异步网络模式下,qxwz_sock_connect,qxwz_sock_send函数为异步模式,接口调用本身的返回并不能代表相关的操作已完成,需要您在后台继续监测相关状态的变化,待到操作实际完成后通过回调函数通知SDK;例如:发起网络连接(connect操作)完成后,需要您调用cb_connect(参见结构体qxwz_sock_callbacks_t,即qxwz_sock_connect函数的第三个参数cbs)回调函数通知SDK:当前的网络连接已建立完成;同样的,发送网络(send操作)数据完成后,需要调用cb_send回调函数通知SDK:数据已发送完成;另外,您需要不断的关注socket上是否有数据可以接收,若有则接收数据,并通过cb_recv回调函数将接收到的数据发送给SDK,此外,一旦socket出现错误,则通过cb_status回调函数通知SDK。异步模式网络的一个优点是不会阻塞程序的执行,但实现复杂度较大;而同步模式则实现起来较为简单,但存在网络操作阻塞的风险;如果您无法接受当前的异步网络模式,可以重新更换SDK,以使用同步模式的网络操作。
级别: 新手上路
只看该作者 8楼 发表于: 01-07
本部分内容设定了隐藏,需要回复后才能看到
级别: admin
只看该作者 9楼 发表于: 01-08
回 qxwz22831773 的帖子
qxwz22831773:[内容隐藏] (2020-01-07 20:11)  img: images/back.gif

您好,问题回复如下:
1、不要过于纠结域名和端口;
2、鉴权是异步过程,中间存在多个HTTP短连接,需要耗费一定时间才能完成;
3、请给出原始的日志信息,不要做出翻译;给出的源码也不对,很多注释掉了;
4、对于非多线程的设备,mutex的实现可以放空处理(return 0);
5、暂时无法安排。
快速回复
限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
上一个 下一个