展会信息港展会大全

socket通信gps上传,拍照,上传
来源:互联网   发布日期:2015-09-29 10:07:52   浏览:1468次  

导读:在这里只是说一下自己遇到的一些问题 1.本次的任务是基于socket的2进制通信,在这里不得不先声明下,要用字节流InputStream,OutputStream,如果你用了字符流,你就哭着去调试吧。2.将socket通信和其他的分离,尽......

在这里只是说一下自己遇到的一些问题

1.本次的任务是基于socket的2进制通信,在这里不得不先声明下,要用字节流InputStream,OutputStream,如果你用了字符流,你就哭着去调试吧。

2.将socket通信和其他的分离,尽量减小耦合度,方便调试,在这里我是用了service,只是和其他交互的时候比较麻烦。

3. 二进制之间的转换,比如int---->byte,在这里就贴上代码

// 维度

gps[6] = (byte) ((longitude & 0xff000000) >> 24);

gps[7] = (byte) ((longitude & 0x00ff0000) >> 16);

gps[8] = (byte) ((longitude & 0x0000ff00) >> 8);

gps[9] = (byte) (longitude & 0x000000ff);

// 经度

gps[10] = (byte) ((latitude & 0xff000000) >> 24);

gps[11] = (byte) ((latitude & 0x00ff0000) >> 16);

gps[12] = (byte) ((latitude & 0x0000ff00) >> 8);

gps[13] = (byte) (latitude & 0x000000ff);

// 方向

gps[14] = (byte) ((bearing & 0x0000ff00) >> 8);

gps[15] = (byte) (bearing & 0x000000ff);

// 速度

gps[16] = (byte) ((speed & 0x0000ff00) >> 8);

gps[17] = (byte) (speed & 0x000000ff);

如果是byte----int---》int len = ((buff[0] & 0xFF) << 8) | (buff[1] & 0xFF);

如果是byte-------long--------->long t = byte[0]*256 + byte[1];我这里是根据通信协议的,这些网上都可以查到。

其他的雷同。

4.存储文件

4.1小米无外置SD的时候

小米的内置路径是"/data/sdcard/"

4.2酷派无外置SD卡的时候

可已将临时数据写在包文件中/data/data/project/...

注意文件的读写权限

5.在GPS补传的时候,需要将信息写到文件中,有一个够着函数很有用FileInputStream in = new FileInputStream(file,true);这个事在文件的最后一个字符,继续写数据

其中socket通信比较重要的是异常的捕捉,以及处理,由于小米是定制手机,这个手机系统和其他手机有很多的不同,特别是存储文件的时候,第一次搞小米的都很蛋疼,还有一个就是注意内存的泄露,注意释放内存

赞助本站

人工智能实验室

相关热词: socket gps

相关内容
AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港