• 微信公众平台开发(85) 获取用户地理位置


    本文介绍在微信公众平台上如何使用高级接口开发获取用户地理位置的功能。

    一、获取用户地理位置接口

    开通了上报地理位置接口的公众号,用户在关注后进入公众号会话时,会弹框让用户确认是否允许公众号使用其地理位置。弹框只在关注后出现一次,用户以后可以在公众号详情页面进行操作。

    用户同意上报地理位置后,每次进入公众号会话时,都会在进入时上报地理位置,上报地理位置以推送XML数据包到开发者填写的URL来实现。

    推送XML数据包示例:

    <xml>
        <ToUserName><![CDATA[toUser]]></ToUserName>
        <FromUserName><![CDATA[fromUser]]></FromUserName>
        <CreateTime>123456789</CreateTime>
        <MsgType><![CDATA[event]]></MsgType>
        <Event><![CDATA[LOCATION]]></Event>
        <Latitude>23.137466</Latitude>
        <Longitude>113.352425</Longitude>
        <Precision>119.385040</Precision>
    </xml>

    参数说明:

    参数

    描述

    ToUserName

    开发者微信号

    FromUserName

    发送方帐号(一个OpenID)

    CreateTime

    消息创建时间 (整型)

    MsgType

    消息类型,event

    Event

    事件类型,LOCATION

    Latitude

    地理位置纬度

    Longitude

    地理位置经度

    Precision

    地理位置精度

    二、程序接收用户地理位置坐标

    地理位置是一个事件消息,在方倍工作室的微信公众平台PHP SDK中,增加位置信息判断,然后获取用户的纬度和经度。

    private function receiveEvent($object)
    {
        $contentStr = "";
        switch ($object->Event)
        {
            case "subscribe":
                $contentStr = "欢迎关注方倍工作室";
                break;
            case "LOCATION":
                $contentStr = "纬度 ".$object->Latitude." 经度".$object->Longitude;
                break;
            default:
                break;
        }
        $resultStr = $this->transmitText($object, $contentStr);
        return $resultStr;
    }

    也可以把位置信息存到数据库,这样方便以后分析。

    三、网页获取用户地理位置

    请参考 微信公众平台开发(106) 网页获取用户地理位置 一文。

  • 相关阅读:
    Application Cache
    log4net--帮助程序员将日志信息输出到各种目标(控制台、文件、数据库等)的工具
    configsections規範配置信息
    Winform後台如何動態修改App.config文件里的內容
    運行程式時提示丟失api-ms-win-crt-runtime-l1-1-0.dll
    Extjs4对Model定义相关的校验内容
    liferay 集成ldap
    liferay和cas系统集成
    DOM获得所有元素的节点
    核心Element对象
  • 原文地址:https://www.cnblogs.com/txw1958/p/weixin--get-user-geographic-position.html
Copyright © 2020-2023  润新知