起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8501|回复: 26

[处理中5] 3.6百度地图基础服务插件问题

  [复制链接]

104

主题

369

帖子

1173

积分

金牌会员

王小二

Rank: 6Rank: 6

积分
1173
QQ
发表于 2016-9-13 11:50:03 | 显示全部楼层 |阅读模式
版本:3.6pre
申请成功了安卓和IOS的SDK,打包报错.

1.png


日志信息 敏感地方已和谐..:
  1. 开始......
  2.    
  3. 保存配置信息:
  4.    
  5. 编译UI资源-版本号方式:
  6.    
  7. 编译UI资源-hash方式:
  8.    
  9. 编译UI资源:
  10.    
  11. 清除编译环境:
  12.    
  13. 复制模版工程:
  14.    
  15. 复制工程:
  16.    
  17. 复制插件:
  18.    
  19. 复制WWW资源:
  20.    
  21. 更新工程信息:
  22.    
  23. 增加插件:
  24.    使用到的插件: [com.justep.cordova.plugin.baiduMapBase, cordova-plugin-whitelist, cordova-plugin-splashscreen, cordova-plugin-app-preferences, com.justep.cordova.plugin.app.utils, com.justep.cordova.plugin.engine.tencent, cordova-plugin-x-toast, cordova-plugin-inappbrowser, cordova-plugin-app-version, cordova-plugin-spinner-dialog, cordova-plugin-keyboard, cordova-plugin-geolocation-baidu-master]
  25.    开始安装插件......
  26.    开始准备插件参数......
  27.    插件 "com.justep.cordova.plugin.baidulocation" 参数如下:
  28.    插件 "com.justep.cordova.plugin.baiduMapBase" 参数如下:
  29.         百度地图SDK安全码,Android中是sha1的值加包名,中间用';'分开(android_mcode):C7:B3:49:F1:91:08:57:38:57:FE:F6:7C:57:68:58:5C:77:01:67:7D;com.xxx.xxx
  30.         百度地图SDK开发秘钥,AK的申请地址为:http://lbsyun.baidu.com/apiconsole/key(android_AK):xxxxxxxxxxxxxxxxxxx
  31.         百度地图SDK安全码,iOS中指的是包名(iOS_mcode):xx.xx.xx
  32.         百度地图SDK开发秘钥,AK的申请地址为:http://lbsyun.baidu.com/apiconsole/key(iOS_AK):xxxxxxxxxxxxxxxxxxxxxx
  33.    插件 "cordova-plugin-splashscreen" 参数如下:
  34.    插件 "cordova-plugin-app-preferences" 参数如下:
  35.    插件 "cordova-plugin-file" 参数如下:
  36.    插件 "cordova-plugin-file-transfer" 参数如下:
  37.    插件 "cordova-plugin-network-information" 参数如下:
  38.    插件 "cordova-plugin-zip" 参数如下:
  39.    插件 "cordova-plugin-inappbrowser" 参数如下:
  40.    插件 "cordova-plugin-x-toast" 参数如下:
  41.    插件 "com.justep.cordova.plugin.app.utils" 参数如下:
  42.    插件 "com.justep.cordova.plugin.engine.tencent" 参数如下:
  43.         引擎选择方式(webViewEngine):system
  44.    插件 "cordova-plugin-app-version" 参数如下:
  45.    插件 "cordova-plugin-spinner-dialog" 参数如下:
  46.    插件 "cordova-plugin-keyboard" 参数如下:
  47.    插件 "cordova-plugin-geolocation-baidu-master" 参数如下:
  48.    插件参数准备完成
  49.    Installing "com.justep.cordova.plugin.baidulocation" for android
  50.    Installing "com.justep.cordova.plugin.baidulocation" for ios
  51.    Installing "com.justep.cordova.plugin.baiduMapBase" for android
  52.    Dependent plugin "com.justep.cordova.plugin.baidulocation" already installed on android.
  53.    The module "ConfigParser" has been factored into "cordova-common". Consider update your plugin hooks.
  54.    F:\x5\WeX5_V3.6p\model\Native\baiduPositionTest\build\src\platforms\android
  55.    F:\x5\WeX5_V3.6p\model\Native\baiduPositionTest\build\src\platforms\android
  56.    F:\x5\WeX5_V3.6p\model\Native\baiduPositionTest\build\src\platforms\android
  57.    F:\x5\WeX5_V3.6p\model\Native\baiduPositionTest\build\src\platforms\android
  58.    F:\x5\WeX5_V3.6p\model\Native\baiduPositionTest\build\src\platforms\android
  59.    F:\x5\WeX5_V3.6p\model\Native\baiduPositionTest\build\src\platforms\android
  60.    F:\x5\WeX5_V3.6p\model\Native\baiduPositionTest\build\src\platforms\android
  61.    F:\x5\WeX5_V3.6p\model\Native\baiduPositionTest\build\src\platforms\android
  62.    Installing "com.justep.cordova.plugin.baiduMapBase" for ios
  63.    Installing "cordova-plugin-splashscreen" for android
  64.    Installing "cordova-plugin-splashscreen" for ios
  65.    Installing "cordova-plugin-app-preferences" for android
  66.    Installing "cordova-plugin-app-preferences" for ios
  67.    Installing "cordova-plugin-file" for android
  68.    Installing "cordova-plugin-file" for ios
  69.    Installing "cordova-plugin-file-transfer" for android
  70.    Dependent plugin "cordova-plugin-file" already installed on android.
  71.    Installing "cordova-plugin-file-transfer" for ios
  72.    Dependent plugin "cordova-plugin-file" already installed on ios.
  73.    Installing "cordova-plugin-network-information" for android
  74.    Installing "cordova-plugin-network-information" for ios
  75.    Installing "cordova-plugin-zip" for android
  76.    Dependent plugin "cordova-plugin-file" already installed on android.
  77.    Installing "cordova-plugin-zip" for ios
  78.    Dependent plugin "cordova-plugin-file" already installed on ios.
  79.    Installing "cordova-plugin-inappbrowser" for android
  80.    Installing "cordova-plugin-inappbrowser" for ios
  81.    Installing "cordova-plugin-x-toast" for android
  82.    Installing "cordova-plugin-x-toast" for ios
  83.    Installing "com.justep.cordova.plugin.app.utils" for android
  84.    Dependent plugin "cordova-plugin-file" already installed on android.
  85.    Dependent plugin "cordova-plugin-file-transfer" already installed on android.
  86.    Dependent plugin "cordova-plugin-network-information" already installed on android.
  87.    Dependent plugin "cordova-plugin-zip" already installed on android.
  88.    Dependent plugin "cordova-plugin-inappbrowser" already installed on android.
  89.    Dependent plugin "cordova-plugin-x-toast" already installed on android.
  90.    Installing "com.justep.cordova.plugin.app.utils" for ios
  91.    Dependent plugin "cordova-plugin-file" already installed on ios.
  92.    Dependent plugin "cordova-plugin-file-transfer" already installed on ios.
  93.    Dependent plugin "cordova-plugin-network-information" already installed on ios.
  94.    Dependent plugin "cordova-plugin-zip" already installed on ios.
  95.    Dependent plugin "cordova-plugin-inappbrowser" already installed on ios.
  96.    Dependent plugin "cordova-plugin-x-toast" already installed on ios.
  97.    Installing "com.justep.cordova.plugin.engine.tencent" for android
  98.    Installing "com.justep.cordova.plugin.engine.tencent" for ios
  99.    Installing "cordova-plugin-app-version" for android
  100.    Installing "cordova-plugin-app-version" for ios
  101.    Installing "cordova-plugin-spinner-dialog" for android
  102.    Installing "cordova-plugin-spinner-dialog" for ios
  103.    Installing "cordova-plugin-keyboard" for android
  104.    Installing "cordova-plugin-keyboard" for ios
  105.    Error: Variable(s) missing (use: --variable BAIDUMAPKEY=value).
  106. ****ERROR****: 子任务 "addPlugins" 执行失败。
  107. ****ERROR****: 任务 "addPlugins" 执行失败。
  108. ****ERROR****: 执行出错:
  109. ****ERROR****: 错误信息: addPlugins returned: 1
  110. ****ERROR****: 如不能确定具体问题,可参考常见问题: http://bbs.wex5.com/thread-82002-1-1.html
复制代码






<a href="#自我介绍"/>点点点</a>

104

主题

369

帖子

1173

积分

金牌会员

王小二

Rank: 6Rank: 6

积分
1173
QQ
 楼主| 发表于 2016-9-13 12:02:20 | 显示全部楼层
收到这个插件影响,删除后打包成功,但这个插件不需要配置baidumapkey吧
  1. require("cordova!com.justep.cordova.plugin.baidulocation");
复制代码
<a href="#自我介绍"/>点点点</a>
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36044
发表于 2016-9-14 18:20:30 | 显示全部楼层
baidumapkey是com.justep.cordova.plugin.baiduMapBase这个插件需要的,com.justep.cordova.plugin.baidulocation中不需要
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

104

主题

369

帖子

1173

积分

金牌会员

王小二

Rank: 6Rank: 6

积分
1173
QQ
 楼主| 发表于 2016-9-16 20:18:53 | 显示全部楼层
jishuang 发表于 2016-9-14 18:20
baidumapkey是com.justep.cordova.plugin.baiduMapBase这个插件需要的,com.justep.cordova.plugin.baidulo ...

非常感谢!已经在测试使用了,其中碰到点问题,想请教一下或者提一个小建议。
在跳转到新页面使用com.justep.cordova.plugin.baiduMapBase插件进行测试的过程中发现问题
使用
  1. navigator.baiduMap.base.open({},successCallBack,failCallBack)
复制代码
方法打开地图的成功回调只能完成提示“已经打开百度地图”,比如:当页面onload后执行的open方法,在地图没有完全加载完成之后这个成功回调就已经执行了,测试了很多遍,发现不能在其中写
  1. navigator.baiduMap.base.getCurrentLocation
复制代码
或者
  1. navigator.baiduMap.base.showCurrentLocation
复制代码
方法,问题出在回调的时机。在地图加载完成之前就回调的话,getCurrentLocation方法会执行失败,导致获取不到任何信息。
而如果设定定时器执行的话,又会出现问题,毕竟定时器是设定好死的时间。受限于用户在不同地区的网络情况,这个地图加载完成所需的时间是不稳定的,如果定时间间隔时间短,可能导致执行失败,间隔时间长的话又会造成延时,目前我只能想到等待用户手动去完成。

所以请问有什么方法或者思路能实现当页面打开地图加载完成后自动的去 showCurrentLocation
如果没有好的解决方案的话,希望能优化下这个插件,非常感谢!

<a href="#自我介绍"/>点点点</a>
回复 支持 反对

使用道具 举报

104

主题

369

帖子

1173

积分

金牌会员

王小二

Rank: 6Rank: 6

积分
1173
QQ
 楼主| 发表于 2016-9-16 20:34:39 | 显示全部楼层
本帖最后由 w1017894741 于 2016-9-16 20:36 编辑
jishuang 发表于 2016-9-14 18:20
baidumapkey是com.justep.cordova.plugin.baiduMapBase这个插件需要的,com.justep.cordova.plugin.baidulo ...

还有一个问题,文档中提供的说明看的不明白。
1.png

如上图中所说的 "默认xxx" ,demo中这样写的:
  1.     navigator.baiduMap.base.open({
  2.             "position" : {
  3.                 x : 0,
  4.                 y : $(window).height() - 300,
  5.                 w : $(window).width(),
  6.                 h : 400
  7.             },
  8.             "center" : {
  9.                 lon : 121.64377112219177,
  10.                 lat : 31.19573476237134
  11.             },
  12.             "zoomLevel" : 13
  13.         }, function() {
  14.             justep.Util.hint("成功");
  15.         }, callBack);
复制代码
默认一般都是不传,所以我这么写的:
  1. navigator.baiduMap.base.open({
  2.             "position" : {
  3.                 x : 0,
  4.                 y : $(window).height() - 300,
  5.                 w : $(window).width(),
  6.                 h : 400
  7.             },
  8.             "zoomLevel" : 13
  9.         }, function() {
  10.             justep.Util.hint("成功");
  11.         }, callBack);
复制代码
结果地图不显示。

请问: 怎么理解这份文档?
文档路径WeX5_v3.6\Native\plugins\com.justep.cordova.plugin.baiduMapBase\plugin.js.xdoc\@name com.justep.cordova.plugin.baiduMapBase.open


<a href="#自我介绍"/>点点点</a>
回复 支持 反对

使用道具 举报

0

主题

245

帖子

515

积分

高级会员

Rank: 4

积分
515
QQ
发表于 2016-9-18 15:16:07 | 显示全部楼层
本帖最后由 九月书生 于 2016-9-18 16:47 编辑
w1017894741 发表于 2016-9-16 20:34
还有一个问题,文档中提供的说明看的不明白。

您好,我是这个插件的开发人员,非常感谢您的反馈!我们已经注意到您说的问题,我们会尽快解决!
①用户如果在open的时候不传入center参数,则定位当前位置然后设置为地图的中心点 ---  这个逻辑我们思考过后决定遵照原生SDK的逻辑,用户不传center则中心点为北京天安门。②如果position参数不传的话我们将会全屏显示地图。
②关于open地图的回调需要做修改,我们现在的思路是等地图完全打开,地图对象也已经创建之后再进行回调!



我们会尽快处理完这些缺陷,将会在3.6正式版发布!
回复 支持 反对

使用道具 举报

104

主题

369

帖子

1173

积分

金牌会员

王小二

Rank: 6Rank: 6

积分
1173
QQ
 楼主| 发表于 2016-9-18 17:58:04 | 显示全部楼层
九月书生 发表于 2016-9-18 15:16
您好,我是这个插件的开发人员,非常感谢您的反馈!我们已经注意到您说的问题,我们会尽快解决!
①用户如 ...

非常感谢您的回复,我现在的处理方法是折中做法,在登录页面打开了一个 宽高都为 0的“隐形”地图,这样我就可以直接获取经纬度之类的东西了。 在地图展示的界面,先关了之前打开的地图然后重新渲染了一个适当宽高的地图。   不过这都是权宜之计,期待您在后面的版本中的优化更新,这个原生实现的地图确实比我之前使用的js版流畅太多了,而且功能也很丰富,也希望您能在后面的更新中能够将 操作文档 优化一下,方便我们阅读,非常感谢!!!
<a href="#自我介绍"/>点点点</a>
回复 支持 反对

使用道具 举报

0

主题

245

帖子

515

积分

高级会员

Rank: 4

积分
515
QQ
发表于 2016-9-19 09:13:36 | 显示全部楼层
w1017894741 发表于 2016-9-18 17:58
非常感谢您的回复,我现在的处理方法是折中做法,在登录页面打开了一个 宽高都为 0的“隐形”地图,这样 ...

您好,您的方法也是可以的!不过您可以试试看,第一次的时候open一个隐形的地图,不用close,然后再次open一个合适的,这样应该也是可以的!现在我们的逻辑是地图是单例的,除非您真的是不用地图了,不然的话可以不用调用close接口!
回复 支持 反对

使用道具 举报

104

主题

369

帖子

1173

积分

金牌会员

王小二

Rank: 6Rank: 6

积分
1173
QQ
 楼主| 发表于 2016-9-19 11:36:43 | 显示全部楼层
九月书生 发表于 2016-9-19 09:13
您好,您的方法也是可以的!不过您可以试试看,第一次的时候open一个隐形的地图,不用close,然后再次ope ...

十分感谢!我会试一试的 请结贴
<a href="#自我介绍"/>点点点</a>
回复 支持 反对

使用道具 举报

104

主题

369

帖子

1173

积分

金牌会员

王小二

Rank: 6Rank: 6

积分
1173
QQ
 楼主| 发表于 2016-9-20 22:06:16 | 显示全部楼层
九月书生 发表于 2016-9-18 15:16
您好,我是这个插件的开发人员,非常感谢您的反馈!我们已经注意到您说的问题,我们会尽快解决!
①用户如 ...

您的插件在IOS 9上后台定位不刷新,我看到了plugin.xml中已经添加了后台位置刷新的权限不知道为什么没有生效,麻烦帮忙解决一下,项目紧急,还请及时回复一下。我的QQ是:1017894741 非常紧急!请您支援一下!
<a href="#自我介绍"/>点点点</a>
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-9-22 11:22 , Processed in 0.111558 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表