获取用户地理位置的方式有两种,一种是仅在进入会话时上报一次,另一种是进入会话后每隔5s上报一次。微信公众号可以在微信公众平台网站中设置。
用户同意上报地理位置后,每次进入微信公众号会话时,都会在进入时上报地理位置,或在进入会话后每5s上报一次地理位置。上报地理位置是通过推送XML数据包到开发者填写的URL来实现的。
推送XML数据包的示例如下。
<xml>
<ToUserName><![CDATA[gh_45072270791c]]></ToUserName>
<FromUserName><![CDATA[o7Lp5t5BZDl22PcjIliHp03kzgBE]]></FromUserName>
<CreateTime>1389686084</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[LOCATION]]></Event>
<Latitude>28.551088</Latitude>
<Longitude>112.123856</Longitude>
<Precision>96.000000</Precision>
</xml>
上述数据包的参数说明如表6-9所示。
表6-9 获取用户位置信息的参数说明