×

什么是Beacon?如何用Beacon?资料下载

消耗积分:2 | 格式:pdf | 大小:122.36KB | 2021-04-26

分享资料个

作者:蓝牙技术联盟 技术项目经理Martin Woolley 什么是Beacon 基于Bluetooth ® 技术的Beacon,最简单的理解就是一个小型的信息基站,可以应用在室内导航、移动支付、店内导购、人流分析、物品跟踪等等所有与人在室内流动相关的活动之中。随着时代的发展,现代人对移动设备越来越依赖,也有越来越多的活动在室内进行,而GPS这样的室外导航在室内中有些死角及易受建筑物的干扰,且从精准度和耗电量上不能满足室内定位的需求。因此,基于蓝牙技术的Beacon应运而生,成为理想的室内数据解决方案。Beacon技术做到的是通过Bluetooth Smart向通信覆盖范围内的移动设备捕捉和推送信息。2014年已经有许多机构开展了一些实验性项目,并有预测指出,2015年Beacon将在全球范围内将得到大力部署、并带来更多新型服务。ABI Research预测到2019年市场上的Beacon设备总数将达到六千万台,市场规模之大,可见一斑。 多数情况下,通过Beacon可以进行室内定位并提供相应的服务,如在百货商场及时推送品牌促销信息、在机场为旅客定位登机口和餐饮设施的位置、或在博物馆向游客推送身旁的文物信息等。在这些应用场景中,Beacon的位置是固定的,用户通过智能手机APP可以获取这些位置信息。但最近也有一些移动的Beacon应用出现。例如Lighthouse公司推出的一款可穿戴式的Beacon解决方案,对需要特殊帮助的学生进行位置追踪并保障他们的安全。在中国,每到春运或旅游旺季,总有老人或儿童在拥挤的人流中走散,而未来这种基于移动和可穿戴式Beacon的解决方案可以帮助人们更快速准确地在公共场所找到走失的亲人。 规划Beacon ID,准确判断相对位置 Beacon的首要任务就是允许APP确认两者之间的相对位置,并借助这一位置信息实现更多功能。APP必须拥有相应数据的访问权限,并将蓝牙广告数据包中所传输的Beacon ID与实际位置分布信息相对应。位置信息的表达越简单越好,以便于APP读取和分析。例如,而对于商场的Beacon应用,根据店铺ID规划Beacon ID会更合适,这样APP就能够判断出用户是走进了左边的这家李宁,还是右边的那家耐克。 根据位置信息规划Beacon广告数据包中的Beacon ID,是Beacon实现诸多应用的重要前提。Beacon ID 数据可以通过设备上安装的APP在本地进行设置,也可发送至云端或网络以便远程操作。本地数据存储的好处在于它便于访问,而且没有网络也照样能够运行。而远程数据存储的情况下,用户使用的数据是相同的,但网络访问难免更耗时,因此要加倍注意确保用户体验不受影响。有时最佳的解决方案是采用“混搭”的方式,即将本地数据及时进行远程同步、并存储在APP的本地数据库中。这样,在没有网络的情况下,APP也能够使用最新的数据了。 APP后台自动运行,无需用户干预 对于用户来说,最好无需特意开启APP就能够探测到附近的Beacon。也就是说APP最好能够自动在后台运行,而不需要用户干预。这就需要开发时注意系统资源(如电源电量)的合理使用。当然,前提是要确保您的智能手机开启了蓝牙功能。 相对距离视情况而定 到底多近才算近,这是所有Beacon应用开发者需要考虑的问题。实际上,这需要根据实际情况决定。对一些应用来说,只要有一两个Beacon (多个Beacon即可定义”区域“) 的信号,就可以触发动作了,例如针对走进商场或店铺的顾客、机场里走近值机柜台的旅客等。而对于其他一些应用,可能需要用户十分靠近特定的Beacon时,才会提示用户。比如占地较小、陈列物密集的博物馆或美术馆的导览系统,就需要在参观者十分靠近特定的展品时才会提示相应的展品信息。 通过Beacon可以推算用户的相对距离。因为广告数据包中包含了距离与信号强度的对照数据(比如距离为一米时,信号强度是多少多少),所以我们就可以通过接收器(比如手机)测量到的信号强度推算出相对应的距离。如果你使用了API(Application Programming Interface, 应用程序编程接口),就会发现API其实能够很方便地实现距离测算。但是,必须指出距离是推算的、而非精确计算的结果(虽然测算的准确度已经可以满足当前大部分应用的需求)。 Beacon广告数据形式多种选择 关于Beacon的文章已经有很多了,尤其是关于iBeacon的。iBeacon是苹果的广告数据形式,是苹果公司的专利。iOS设备对iBeacon提供原生支持,但有些情况下还需要满足特定的认证要求。关于iBeacon的更多信息可访问Apple.com。 但是,还有一些其他的Beacon广告形式规格,例如Radius Network的AltBeacon。AltBeacon是开源的,可应用于任何平台而不受限制。它最近还发布了面向安卓系统的开源API。 如何开启运用 零售商与市场营销领域是Beacon的大舞台,可以为通路营销与更佳的消费者体验提供无限的想象空间。可以预见,Beacon的运用将会有光明的前景:通过Beacon将产品和促销信息发送给顾客;博物馆和美术馆等也可以开发专门的应用,向走进展厅的参观者发送展厅主题介绍、或对在展品前驻足的参观者发送详细的展品信息等;机场还可以用Beacon追踪所有旅客的动向。对于有开发Beacon应用想法的读者,可以注册下载最新的开发工具Bluetooth Developer Studio,开启自己的Beacon开发之旅。 (mbbeetchina)

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !

'+ '

'+ '

'+ ''+ '
'+ ''+ ''+ '
'+ ''+ '' ); $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code ==5){ $(pop_this).attr('href',"/login/index.html"); return false } if(data.code == 2){ //跳转到VIP升级页面 window.location.href="//m.lene-v.com/vip/index?aid=" + webid return false } //是会员 if (data.code > 0) { $('body').append(htmlSetNormalDownload); var getWidth=$("#poplayer").width(); $("#poplayer").css("margin-left","-"+getWidth/2+"px"); $('#tips').html(data.msg) $('.download_confirm').click(function(){ $('#dialog').remove(); }) } else { var down_url = $('#vipdownload').attr('data-url'); isBindAnalysisForm(pop_this, down_url, 1) } }); }); //是否开通VIP $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code == 2 || data.code ==5){ //跳转到VIP升级页面 $('#vipdownload>span').text("开通VIP 免费下载") return false }else{ // 待续费 if(data.code == 3) { vipExpiredInfo.ifVipExpired = true vipExpiredInfo.vipExpiredDate = data.data.endoftime } $('#vipdownload .icon-vip-tips').remove() $('#vipdownload>span').text("VIP免积分下载") } }); }).on("click",".download_cancel",function(){ $('#dialog').remove(); }) var setWeixinShare={};//定义默认的微信分享信息,页面如果要自定义分享,直接更改此变量即可 if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){ var d={ title:'什么是Beacon?如何用Beacon?资料下载',//标题 desc:$('[name=description]').attr("content"), //描述 imgUrl:'https://'+location.host+'/static/images/ele-logo.png',// 分享图标,默认是logo link:'',//链接 type:'',// 分享类型,music、video或link,不填默认为link dataUrl:'',//如果type是music或video,则要提供数据链接,默认为空 success:'', // 用户确认分享后执行的回调函数 cancel:''// 用户取消分享后执行的回调函数 } setWeixinShare=$.extend(d,setWeixinShare); $.ajax({ url:"//www.lene-v.com/app/wechat/index.php?s=Home/ShareConfig/index", data:"share_url="+encodeURIComponent(location.href)+"&format=jsonp&domain=m", type:'get', dataType:'jsonp', success:function(res){ if(res.status!="successed"){ return false; } $.getScript('https://res.wx.qq.com/open/js/jweixin-1.0.0.js',function(result,status){ if(status!="success"){ return false; } var getWxCfg=res.data; wx.config({ //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId:getWxCfg.appId, // 必填,公众号的唯一标识 timestamp:getWxCfg.timestamp, // 必填,生成签名的时间戳 nonceStr:getWxCfg.nonceStr, // 必填,生成签名的随机串 signature:getWxCfg.signature,// 必填,签名,见附录1 jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 wx.onMenuShareTimeline({ title: setWeixinShare.title, // 分享标题 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享给朋友”按钮点击状态及自定义分享内容接口 wx.onMenuShareAppMessage({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 type: setWeixinShare.type, // 分享类型,music、video或link,不填默认为link dataUrl: setWeixinShare.dataUrl, // 如果type是music或video,则要提供数据链接,默认为空 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ”按钮点击状态及自定义分享内容接口 wx.onMenuShareQQ({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 wx.onMenuShareWeibo({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 wx.onMenuShareQZone({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); }); }); } }); } function openX_ad(posterid, htmlid, width, height) { if ($(htmlid).length > 0) { var randomnumber = Math.random(); var now_url = encodeURIComponent(window.location.href); var ga = document.createElement('iframe'); ga.src = 'https://www1.elecfans.com/www/delivery/myafr.php?target=_blank&cb=' + randomnumber + '&zoneid=' + posterid+'&prefer='+now_url; ga.width = width; ga.height = height; ga.frameBorder = 0; ga.scrolling = 'no'; var s = $(htmlid).append(ga); } } openX_ad(828, '#berry-300', 300, 250);