mobile CCTV,mobile surveillance,police body worn cameras

 forgetPW
 registerNow
search
12NextPage
backToList newPost
view: 2068|reply: 15
打印 prevThread nextThread

Android MCU SDK 位置纠偏问题

[copyURL]

18

主题

81

帖子

258

积分

midMem

Rank: 3Rank: 3

积分
258
jumpTo
owner
poston 2019-10-14 16:16 | authorOnly 回帖奖励 |倒序浏览 |阅读模式
1.您好根据您最新的给的纠偏代码。实际运行中还是会出现偏移的情况。请问你们最新的SDK 和老版本的SDK 在GPS数据传输这块没有做过变动吧。
纠偏代码如下
  1.   BDLocation bdLocation = new BDLocation();
  2.                 bdLocation.setLatitude(entityEntry.getValue().getGpsData().iLatitude / 10000000.0);
  3.                 bdLocation.setLongitude(entityEntry.getValue().getGpsData().iLongitude / 10000000.0);
  4.                 BDLocation location = GlobalTool.WGS84_to_GCJ02(bdLocation);
  5.                 double[] bd09Arr = GlobalTool.GCJ02_to_BD_09(location.getLongitude(), location.getLatitude());
  6.                 LatLng point = new LatLng(bd09Arr[0], bd09Arr[1]);
copycode





reply

使用道具 report

60

主题

1410

帖子

5785

积分

Moderator

Rank: 7Rank: 7Rank: 7

积分
5785
sofa
poston 2019-10-14 16:24 | authorOnly
你们的MCP SDK的日期是哪个?
reply agree Against

使用道具 report

2

主题

414

帖子

1188

积分

vipMem

Rank: 6Rank: 6

积分
1188
bench
poston 2019-10-14 16:29 | authorOnly
纠偏的代码改动总共涉及到四个文件,都替换了么
reply agree Against

使用道具 report

2

主题

414

帖子

1188

积分

vipMem

Rank: 6Rank: 6

积分
1188
ground
poston 2019-10-14 16:29 | authorOnly
xuwei post on2019-10-14 16:29
纠偏的代码改动总共涉及到四个文件,都替换了么

把替换后的改动的地方diff下都贴出来看下
reply agree Against

使用道具 report

18

主题

81

帖子

258

积分

midMem

Rank: 3Rank: 3

积分
258
5#
 Owner| poston 2019-10-14 16:34 | authorOnly
SDK的版本号

android:versionCode="112"
android:versionName="20181228_112"
reply agree Against

使用道具 report

18

主题

81

帖子

258

积分

midMem

Rank: 3Rank: 3

积分
258
6#
 Owner| poston 2019-10-14 16:38 | authorOnly

1.坐标接受
  1. public class GPSDataControl implements Process {
  2.         private Context context;

  3.         public GPSDataControl(Context context) {
  4.                 this.context = context;
  5.         }

  6.         @Override
  7.         public boolean process(JNIMessage message) {
  8.                 String method = message.getStrParam(JNIMessage.Key.JNIMESSAGE_KEY_S_ID
  9.                                 .getName());
  10.                 if (method.equals("GPSDATA")) {
  11.                         int token = message.getIntParam(
  12.                                         JNIMessage.Key.JNIMESSAGE_KEY_I_TOKEN.getName(), -1);
  13.                         String s = message
  14.                                         .getStrParam(JNIMessage.Key.JNIMESSAGE_KEY_S_RESULT
  15.                                                         .getName());
  16.                         String func = message
  17.                                         .getStrParam(JNIMessage.Key.JNIMESSAGE_KEY_S_FUNCTION
  18.                                                         .getName());

  19.                         EventBus.getDefault().post(        new GroupLocationEntity(GsonClient.getInstance().fromJson(s, BVCU_PUCFG_GPSData.class),func));



  20.                 }
  21.                 return false;
  22.         }
  23. }
copycode

2.坐标接受
  1.     private HashMap<String, GroupLocationEntity> userInfo;
  2.    
  3.     @Subscribe(threadMode = ThreadMode.MAIN)
  4.     public void onEvent(GroupLocationEntity groupLocationEntity) {


  5.         if (!groupLocationEntity.getUserId().contains(ProcessControl.getInstance().getApp().getServerParam().szClientID.split("_")[1])) {
  6.             userInfo.put(groupLocationEntity.getUserId(), groupLocationEntity);
  7.         }

  8.     }
copycode

3.坐标纠偏
  1. //刷新请求数据
  2.     private class RsfushRunable implements Runnable {

  3.         @Override
  4.         public void run() {
  5.             for (Map.Entry<String, GroupLocationEntity> entityEntry : userInfo.entrySet()) {
  6.                 BDLocation bdLocation = new BDLocation();
  7.                 bdLocation.setLatitude(entityEntry.getValue().getGpsData().iLatitude / 10000000.0);
  8.                 bdLocation.setLongitude(entityEntry.getValue().getGpsData().iLongitude / 10000000.0);
  9.                 BDLocation location = GlobalTool.WGS84_to_GCJ02(bdLocation);
  10.                 double[] bd09Arr = GlobalTool.GCJ02_to_BD_09(location.getLongitude(), location.getLatitude());
  11.                 LatLng point = new LatLng(bd09Arr[0], bd09Arr[1]);
  12.                 String name = checkUserInfo(entityEntry.getKey());
  13.                 Bundle bundle = new Bundle();
  14.                 bundle.putString("id", entityEntry.getKey());
  15.                 bundle.putString("name", name);
  16.                 OverlayOptions option = new MarkerOptions()
  17.                         .position(point) //必传参数
  18.                         .icon(greenBitmap) //必传参数
  19.                         .draggable(true)
  20.                         .extraInfo(bundle)
  21.                         .flat(true);

  22.                 OverlayOptions mTextOptions = new TextOptions()
  23.                         .text(name) //文字内容
  24.                         .bgColor(0xFFFFFFFF) //背景色
  25.                         .fontSize(32) //字号
  26.                         .fontColor(0xFF68C270) //文字颜色
  27.                         .rotate(0) //旋转角度

  28.                         .position(point);
  29.                 optionList.add(option);
  30.                 optionList.add(mTextOptions);
  31.             }
  32.             handler.sendEmptyMessage(0);

  33.         }
  34.     }


copycode
reply agree Against

使用道具 report

18

主题

81

帖子

258

积分

midMem

Rank: 3Rank: 3

积分
258
7#
 Owner| poston 2019-10-14 16:39 | authorOnly
xuwei post on2019-10-14 16:29
把替换后的改动的地方diff下都贴出来看下

工具类已经替换为最新的坐标处理
reply agree Against

使用道具 report

2

主题

414

帖子

1188

积分

vipMem

Rank: 6Rank: 6

积分
1188
8#
poston 2019-10-14 16:48 | authorOnly
LJJ post on2019-10-14 16:39
工具类已经替换为最新的坐标处理

用最新MCP SDK后再更新修复问题的文件
reply agree Against

使用道具 report

18

主题

81

帖子

258

积分

midMem

Rank: 3Rank: 3

积分
258
9#
 Owner| poston 2019-10-14 17:10 | authorOnly
您好!我这边打印GPS数据
2019-10-14 17:09:02.031 24513-24513/com.inchatcu.mcu D/com.bdmap.LocationAdapter: run:-->3 121.45932498604259==31.201431038172114
2019-10-14 17:09:02.047 24513-24513/com.inchatcu.mcu D/GroupMapActivity: run:-->1  121.4638891,31.1995115

run3 是传入的本机的数据
run1 是获取的本机的数据
传输过程中就出现了偏移
reply agree Against

使用道具 report

18

主题

81

帖子

258

积分

midMem

Rank: 3Rank: 3

积分
258
10#
 Owner| poston 2019-10-14 17:15 | authorOnly
LJJ post on2019-10-14 17:10
您好!我这边打印GPS数据
2019-10-14 17:09:02.031 24513-24513/com.inchatcu.mcu D/com.bdmap.LocationA ...

这里是加了什么纠偏算法进去的  因为现在开发时间比较急,替换SDK 工程量比较大。所以能针对这里做优化么
reply agree Against

使用道具 report

creditRule

QQ|wireless surveillance

GMT+8, 2024-4-20 07:10 , Processed in 0.064456 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

QuickReply backToTop BackToList