水声通信(传声)于iOS、Android在情景-depth分析(包括一些声通信源)
最近的水声通信非常热,特别是,非常嵌入式设备备受瞩目使用,前段时间公布了声通信部分源代码(iOS和Android版本号。下载源的最新版本:点击打开链接 http://download.csdn.net/detail/frog_lightdesk/8395167),也受到了广大声波爱好者的关注。
声波技术从理论上决定了它比較适合做短距离、少量信息的传输(声波通信原理请见:http://blog.csdn.net/jcgu/article/details/12834483)一般常以“握手”角色出如今应用中。前段时间和非常多声波爱好者交流,发现非常多人对声波通信技术的应用存在一定误解,以下就以一些知名的应用为例,对声波通信应用的主要场景进行分析。
1.Chirp
chirp是声波通信应用的始祖,最先把声波通信技术在智能手机中进行商用。它主要功能是能够在手机间随意传递文本,图像和视频等。
实现原理:比方A手机把图像传递给附近的B手机。A手机首先将图片传输到server。然后把server相应的地址后缀(10个以内字符)通过声波发送出去,(注意这时候A是不停的循环发送声波)。
B一直处于监听状态。在B收到A发送的声波后。解码,假设解码成功,则从server上下载图片,图片传输成功。假设解码失败(可能因为周围有比較强的干扰)。则继续监听A发送的声波。继续解码。
。。
关键点:
1)通过声波发送的信息是10个以内的地址后缀。这点非常重要,由于声波发送的越多,受到干扰的概率就越大,传输失败的可能性就越高。并且传输的时间也越长。
2)A在不停的循环发送声波。由于声波easy受到干扰,A无法确保B是否正确收到信息,所以最简单的方式就是不停的发送,直到B收到信息后,再手工停止A的发送。
3)真正的信息通过网络传输的,声波作为握手的工具。
2.支付宝声波支付
支付宝作为支付相关的应用的代表,相信声波支付功能非常多人都用过,但对其原理不一定都了解。
实现原理:声波支付听起来好像都是咻咻的声音,事实上咻咻声并非信息的载体,真正的信息是通过超声波传输的。比方A手机发起咻咻声(此时A也是不停的在循环发送信息)。售货机B则在不停的监听。A手机在发送信息前。会先和后台server交互,把各种关键的交互信息上传到server。然后将要发送的信息加密(支付者的id信息),把加密后的信息转换成超声波。然后再叠加咻咻声,最后发送出去。
B在正确收到A的信息后,解码成功后,就连接server,确认本次交易,确认成功后,支付生效。
关键点:
1)发送的是支付者的id信息,一般10个字符以内。
2)发送信息的手机在不停的发送支付者的id。
3.茄子快传
茄子快传用于在手机间高速传递大量信息(不须要互联网),比方文件。视频等。茄子快传和chirp都能够传输大文件。但原理上有比較大的差别。
实现原理:A手机发送文件给B手机。B是接收者,B首先建立wifi热点,然后建立sockt通道,最后把wifiusername和password通过声波发送出去(username和password在10字符左右)。
A处于监听状态,在收到声波,解码出wifiusername和password后,连接wifi热点。连接成功后,通过socket把文件发送给B。茄子快传和chirp的根本不同在于chirp高度依赖于互联网。而茄子快传则不须要互联网,仅须要wifi。
关键点:
1)发送的信息为10个字符左右的username和password。
2)接收者不停的在发送wifiusername和password。
3)真正的信息传输是通过wifi传输的。声波作为握手的工具。
4.嵌入式应用
如今非常多嵌入式设备在使用声波通信技术,比方智能路由器、相机、车载电子(比方行车记录仪)等等。
实现原理:一般使用声波通信作为握手信号自己主动为wifi和蓝牙建立连接(用声波通信传输usernamepassword);或者发送简单的信息数据,比方温度信息;或者发送控制命令。比方控制智能家栖息地等。。A派。B接受,通常情况下,发送者必须停止发送,直到接收者收到为止。
版权声明:本文博主原创文章。博客,未经同意不得转载。
水声通信(传声)于iOS、Android在情景-depth分析(包括一些声通信源)的更多相关文章
- LocalResizeIMG前端HTML5本地压缩图片上传,兼容移动设备IOS,android
LocalResizeIMG前端HTML5本地压缩图片上传,兼容移动设备IOS,android jincon 发表于 2015-02-26 18:31:01 发表在: php开发 localresiz ...
- 用c/c++混合编程方式为ios/android实现一个自绘日期选择控件(一)
本文为原创,如有转载,请注明出处:http://www.cnblogs.com/jackybu 前言 章节: 1.需求描述以及c/c++实现日期和月历的基本操作 2.ios实现自绘日期选择控件 3.a ...
- 使用 Jenkins 搭建 iOS/Android 持续集成打包平台【转】
背景描述 根据项目需求,现要在团队内部搭建一个统一的打包平台,实现对iOS和Android项目的打包.而且为了方便团队内部的测试包分发,希望在打包完成后能生成一个二维码,体验用户(产品.运营.测试等人 ...
- 关于前端本地压缩图片,兼容IOS/Android/PC且自动按需加载文件之lrz.bundle.js
一.介绍说明主要特点: ①在前端压缩好要上传的图片可以更快的发送给后端,因此也特别适合在移动设备上使用. ②兼容IOS/Android,修复了IOS/Android某些版本已知的BUG. ③按需加载文 ...
- 仿微信的IM聊天时间显示格式(含iOS/Android/Web实现)[图文+源码]
本文为原创分享,转载请注明出处. 1.引言 即时通讯IM应用中的聊天消息时间显示是个再常见不过的需求,现在都讲究用户体验,所以时间显示再也不能像传统软件一样简单粗地暴显示成“年/月/日 时:分:秒”这 ...
- WEB通知和React Native之即时通讯(iOS Android)
WEB通知和React Native之即时通讯(iOS Android) 一,需求分析 1.1,允许服务器主动发送信息给客户端,客户端能监听到并且能接收. 1.2,为了方便同一个系统内的用户可以指定某 ...
- [置顶] ArcGIS Runtime SDKs 10.2 for iOS & Android& OS X发布
我们高兴的宣布:ArcGISRuntime SDKs 10.2 for iOS & Android & OS X正式发布!在10.2版本中,你可以在iOS.Android和Mac设备上 ...
- Xamarin体验:使用C#开发iOS/Android应用
Xamarin是Mono创始人Miguel de Icaza创建的公司,旨在让开发者可以用C#编写iOS, Android, Mac应用程序,也就是跨平台移动开发. 简介 Xamarin是基于Mo ...
- Ionic中使用Chart.js进行图表展示以及在iOS/Android中的性能差异
Angular Chart 简介 在之前的文章中介绍了使用 Ionic 开发跨平台(iOS & Android)应用中遇到的一些问题的解决方案. 在更新0.1.3版本的过程中遇到了需要使用图表 ...
随机推荐
- Linux 之 rsyslog
Linux 之 rsyslog 系统日志转发 一.rsyslog 介绍 ryslog 是一个快速处理系统日志的程序,提供了高性能.安全功能和模块化设计.rsyslog 是syslog 的升级版,它将多 ...
- hdu 1024(dp)
传送门:Max Sum Plus Plus 题意:从n个数中选出m段不相交的连续子段,求这个和最大. 分析:经典dp,dp[i][j][0]表示不取第i个数且前i个数分成j段达到的最优值,dp[i][ ...
- IE常见的CSS的BUG(二)
之前介绍过IE浏览器的几种BUG解决的方法,今天我们继续研究IE的BUG.尽管IE6即将被淘汰,但是了解这些也对将来解决问题也是有一定帮助的.好了,闲话不多说,咱们继续看IE的BUG. 1.IE6下P ...
- 解决SQL查询总是超时已过期
解决SQL查询总是超时已过期 .在WIN8里提示:OLE DB 或 ODBC 错误 : 查询超时已过期; HYT00 1.由于数据库设计问题造成SQL数据库新增数据时超时 症状: Microso ...
- Shell脚本检查memcache进程并自己主动重新启动
修正版: #!/bin/sh #check memcache process and restart if down mm_bin="/usr/local/bin/memcached&quo ...
- Mongodb中更新的学习小结
今天继续很久没学习的mongodb的简单学习,今天来看的是更新.先来看简单的用法: use updatetest >switched to db updatetest 首先插入一下: db.th ...
- zoj3471(状压dp)
题目连接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4257 题意:不超过10种气体,两两之间相互碰撞可以产生一定的能量,如 ...
- SWT的选择文件和文件夹的函数
org.eclipse.swt.widgets.DirectoryDialog//选择目录org.eclipse.swt.widgets.FileDialog//SWT.OPEN打开文件 SWT.SA ...
- hdu1874畅通工程续 (dijkstra)
Problem Description 某省自从实行了很多年的畅通工程计划后,终于修建了很多路.不过路多了也不好,每次要从一个城镇到另一个城镇时,都有许多种道路方案可以选择,而某些方案要比另一些方案行 ...
- UVA 10404 Bachet's Game(dp + 博弈?)
Problem B: Bachet's Game Bachet's game is probably known to all but probably not by this name. Initi ...