接口 TencentLocation


  • public interface TencentLocation
    地理位置.

    地理位置由经度, 纬度, 高度, 精度组成, 可能还包含名字, 地址等其他可选信息.

    • 字段概要

      字段 
      修饰符和类型 字段 说明
      static java.lang.String BEIDOU_PROVIDER
      位置来源, BEIDOU provider.
      static java.lang.String CELL_PROVIDER
      位置来源,Cell基站
      static java.lang.String COARSE_PROVIDER
      位置来源, Coarse location provider.
      static int ERROR_BAD_JSON
      错误码, 表示 GPS, Wi-Fi 或基站错误引起的定位失败.
      static int ERROR_INTERNAL
      错误码, 表示SDK内部原因导致定位失败.
      static int ERROR_NETWORK
      错误码, 表示网络问题引起的定位失败.
      static int ERROR_OK
      错误码, 表示定位成功.
      static int ERROR_UNKNOWN
      错误码, 表示未知原因引起的定位失败.
      static int ERROR_WGS84
      错误码, 表示无法进行坐标转换引起的定位失败.
      static java.lang.String EXTRA_ADDRDESP_LANDMARK
      key, 用于获取一级地标(可识别性较强、规模较大的地点、小区等), 仅用于5号定位接口.
      static java.lang.String EXTRA_ADDRDESP_OTHERS_RESULTS
      key, 用于获取其他结果, 仅用于5号定位接口.
      static java.lang.String EXTRA_ADDRDESP_SECOND_LANDMARK
      key, 用于获取二级地标(较一级地标更为精确,规模更小), 仅用于5号定位接口.
      static java.lang.String EXTRA_DIRECTION
      key, 用于获取设备方向.
      static java.lang.String FAKE
      位置来源,fake ,该位置为作弊
      static java.lang.String FUSED_PROVIDER
      位置来源, Fused location provider.
      static java.lang.String GPS_PROVIDER
      位置来源, GPS location provider.
      static java.lang.String NETWORK_PROVIDER
      位置来源, Network location provider.
      static java.lang.String WIFI_PROVIDER
      位置来源,Wi-Fi
    • 方法概要

      所有方法 实例方法 抽象方法 
      修饰符和类型 方法 说明
      float getAccuracy()
      返回当前位置的精度.
      java.lang.String getadCode()
      返回当前位置的adcode.
      java.lang.String getAddress()
      返回当前位置的地址.
      double getAltitude()
      返回当前位置的海拔, 单位为m(米), 仅当位置来自GPS时可能有效.
      java.lang.Integer getAreaStat()
      返回当前位置的行政区划.
      float getBearing()
      返回当前位置方向, 单位为度, 仅当位置来自GPS时可能有效.
      java.lang.String getCity()
      返回当前位置的城市.
      java.lang.String getCityCode()
      返回当前位置的城市编码.
      java.lang.String getCityPhoneCode()
      返回当前位置的城市固话编码.
      int getCoordinateType()
      返回当前坐标系,设置为GCJ02坐标系时,大陆返回的为GCJ02,大陆之外返回WGS84。
      double getDirection()
      返回方向,仅来自传感器方向,如果是gps,则直接获取gps方向
      java.lang.String getDistrict()
      返回当前位置的区县.
      long getElapsedRealtime()
      返回当前位置的生成时间(从设备启动时开始算起).
      android.os.Bundle getExtra()
      返回当前位置相关的某些其他信息, 某个特定的字符串为 key.
      float getFakeProbability()
      获取作弊可能性,范围0~1
      int getFakeReason()
      当getSourceProvider返回FAKE时,该方法返回判断其作弊的原因,其他状态下,该方法无意义 该状态返回一个int类型,代表校验其作弊的原因,可能为多种。
      int getGPSRssi()
      返回GPS信号强度,仅当provider为gps时可用
      java.lang.String getIndoorBuildingFloor()
      返回室内定位楼层信息,目前只在腾讯支持室内定位的地方有返回,默认1000
      java.lang.String getIndoorBuildingId()
      返回室内定位建筑物ID信息,目前只在腾讯支持室内定位的地方有返回,默认null
      int getIndoorLocationType()
      返回室内定位类型,目前仅当室内定位有效时有意义,开发者默认不需要关注
      double getLatitude()
      返回当前位置的纬度.
      double getLongitude()
      返回当前位置的经度.
      java.lang.String getName()
      返回当前位置的名称.
      java.lang.String getNation()
      返回当前位置的国家.
      int getNationCode()
      返回国家编码,例如中国为156 注意:该接口涉及到WebService API,请参考https://lbs.qq.com/service/webService/webServiceGuide/webServiceOverview中的配额限制说明, 并将申请的有效key设置到TencentLocationRequest extras中,否则将返回默认值0
      java.util.List<TencentPoi> getPoiList()
      返回当前位置周围的 POI.
      java.lang.String getProvider()
      返回当前位置的来源.
      java.lang.String getProvince()
      返回当前位置的省份.
      java.lang.String getSourceProvider()
      返回当前位置的细分来源.
      float getSpeed()
      返回移动速度, 单位为m/s (米/秒), 仅当位置来自GPS时可能有效.
      java.lang.String getStreet()
      返回当前位置的街道.
      java.lang.String getStreetNo()
      返回当前位置的街道编号.
      long getTime()
      返回当前位置的生成时间.
      java.lang.String getTown()
      返回当前位置的乡镇.
      java.lang.String getVillage()
      返回当前位置的村.
      int isMockGps()
      当使用GPS定位时,判断该GPS位置点是否为Mock数据
    • 字段详细资料

      • GPS_PROVIDER

        static final java.lang.String GPS_PROVIDER
        位置来源, GPS location provider.
        另请参阅:
        常量字段值
      • NETWORK_PROVIDER

        static final java.lang.String NETWORK_PROVIDER
        位置来源, Network location provider.
        另请参阅:
        常量字段值
      • CELL_PROVIDER

        static final java.lang.String CELL_PROVIDER
        位置来源,Cell基站
        另请参阅:
        常量字段值
      • WIFI_PROVIDER

        static final java.lang.String WIFI_PROVIDER
        位置来源,Wi-Fi
        另请参阅:
        常量字段值
      • FAKE

        static final java.lang.String FAKE
        位置来源,fake ,该位置为作弊
        另请参阅:
        常量字段值
      • BEIDOU_PROVIDER

        static final java.lang.String BEIDOU_PROVIDER
        位置来源, BEIDOU provider.
        另请参阅:
        常量字段值
      • COARSE_PROVIDER

        static final java.lang.String COARSE_PROVIDER
        位置来源, Coarse location provider.
        另请参阅:
        常量字段值
      • FUSED_PROVIDER

        static final java.lang.String FUSED_PROVIDER
        位置来源, Fused location provider.
        另请参阅:
        常量字段值
      • EXTRA_ADDRDESP_OTHERS_RESULTS

        static final java.lang.String EXTRA_ADDRDESP_OTHERS_RESULTS
        key, 用于获取其他结果, 仅用于5号定位接口.

        用法:

         String key = TencentLocation.EXTRA_ADDRDESP_OTHERS_RESULTS;
         ArrayList<TencentAddress> value = tencentLocation.getExtra().getParcelableArrayList(key);
         
        使用场景: getAddress() 不满足需求时可使用其他结果自行进行拼接, 获取到的其他结果为 TencentAddress 的 ArrayList, 列表中的元素分别代表:
        • ST_NO - 门牌
        • FAMOUS_AREA - 知名区域,如商圈或人们普遍认为有较高知名度的区域
        • ST - 街道
        • RD_CROSS - 交叉路口
        请参考 TencentAddress.getDtype()
        另请参阅:
        常量字段值
      • EXTRA_ADDRDESP_LANDMARK

        static final java.lang.String EXTRA_ADDRDESP_LANDMARK
        key, 用于获取一级地标(可识别性较强、规模较大的地点、小区等), 仅用于5号定位接口.

        用法:

         String key = TencentLocation.EXTRA_ADDRDESP_LANDMARK;
         TencentAddress value = tencentLocation.getExtra().getParcelable(key);
         
        另请参阅:
        常量字段值
      • EXTRA_ADDRDESP_SECOND_LANDMARK

        static final java.lang.String EXTRA_ADDRDESP_SECOND_LANDMARK
        key, 用于获取二级地标(较一级地标更为精确,规模更小), 仅用于5号定位接口.

        用法:

         String key = TencentLocation.EXTRA_ADDRDESP_SECOND_LANDMARK;
         TencentAddress value = tencentLocation.getExtra().getParcelable(key);
         
        另请参阅:
        常量字段值
      • EXTRA_DIRECTION

        static final java.lang.String EXTRA_DIRECTION
        key, 用于获取设备方向.

        用法:

         String key = TencentLocation.EXTRA_DIRECTION;
         double value = tencentLocation.getExtra().getDouble(key);
         
        另请参阅:
        常量字段值
      • ERROR_OK

        static final int ERROR_OK
        错误码, 表示定位成功.
        另请参阅:
        常量字段值
      • ERROR_NETWORK

        static final int ERROR_NETWORK
        错误码, 表示网络问题引起的定位失败.
        另请参阅:
        常量字段值
      • ERROR_BAD_JSON

        static final int ERROR_BAD_JSON
        错误码, 表示 GPS, Wi-Fi 或基站错误引起的定位失败.
        另请参阅:
        常量字段值
      • ERROR_WGS84

        static final int ERROR_WGS84
        错误码, 表示无法进行坐标转换引起的定位失败.

        注意: 仅出现在需要将WGS84坐标转换成GCJ-02坐标时的情形

        另请参阅:
        常量字段值
      • ERROR_UNKNOWN

        static final int ERROR_UNKNOWN
        错误码, 表示未知原因引起的定位失败.
        另请参阅:
        常量字段值
      • ERROR_INTERNAL

        static final int ERROR_INTERNAL
        错误码, 表示SDK内部原因导致定位失败.
        另请参阅:
        常量字段值
    • 方法详细资料

      • getProvider

        java.lang.String getProvider()
        返回当前位置的来源.
        返回:
        provider 的名字, 可能为 null
      • getSourceProvider

        java.lang.String getSourceProvider()
        返回当前位置的细分来源.
        返回:
        provider 的名字, 可能为 null
      • getLatitude

        double getLatitude()
        返回当前位置的纬度.
      • getLongitude

        double getLongitude()
        返回当前位置的经度.
      • getAltitude

        double getAltitude()
        返回当前位置的海拔, 单位为m(米), 仅当位置来自GPS时可能有效.
        返回:
        0, 如果无法得到海拔
      • getAccuracy

        float getAccuracy()
        返回当前位置的精度.

        通常精度为, GPS:<20米,WiFi:30-180米,基站:150-800米.

      • getNationCode

        int getNationCode()
        返回国家编码,例如中国为156 注意:该接口涉及到WebService API,请参考https://lbs.qq.com/service/webService/webServiceGuide/webServiceOverview中的配额限制说明, 并将申请的有效key设置到TencentLocationRequest extras中,否则将返回默认值0

        示例: TencentLocationRequest request = TencentLocationRequest.create().setRequestLevel(TencentLocationRequest.REQUEST_LEVEL_ADMIN_AREA); request.getExtras().putString("ReGeoCodingnKey","您申请的有效key");//"ReGeoCodingnKey"为固定值 int error = mLocMgr.requestSingleFreshLocation(request, mLocSingleListener, mLocHandlerThread.getLooper());

        返回:
        国家编码
      • getAreaStat

        java.lang.Integer getAreaStat()
        返回当前位置的行政区划.
        返回:
        0-表示国内(中国大陆), 1-表示国外
      • getBearing

        float getBearing()
        返回当前位置方向, 单位为度, 仅当位置来自GPS时可能有效.
        返回:
        0, 如果无法得到方向
      • getSpeed

        float getSpeed()
        返回移动速度, 单位为m/s (米/秒), 仅当位置来自GPS时可能有效.
        返回:
        0, 如果无法得到速度
      • getTime

        long getTime()
        返回当前位置的生成时间.
      • getElapsedRealtime

        long getElapsedRealtime()
        返回当前位置的生成时间(从设备启动时开始算起).
      • getGPSRssi

        int getGPSRssi()
        返回GPS信号强度,仅当provider为gps时可用
        返回:
        0:无信号,1:信号弱,2:信号中,3:信号强
      • getIndoorBuildingId

        java.lang.String getIndoorBuildingId()
        返回室内定位建筑物ID信息,目前只在腾讯支持室内定位的地方有返回,默认null
        返回:
      • getIndoorBuildingFloor

        java.lang.String getIndoorBuildingFloor()
        返回室内定位楼层信息,目前只在腾讯支持室内定位的地方有返回,默认1000
        返回:
      • getIndoorLocationType

        int getIndoorLocationType()
        返回室内定位类型,目前仅当室内定位有效时有意义,开发者默认不需要关注
        返回:
      • getDirection

        double getDirection()
        返回方向,仅来自传感器方向,如果是gps,则直接获取gps方向
        返回:
      • getFakeReason

        int getFakeReason()
        当getSourceProvider返回FAKE时,该方法返回判断其作弊的原因,其他状态下,该方法无意义 该状态返回一个int类型,代表校验其作弊的原因,可能为多种。
        返回:
      • getFakeProbability

        float getFakeProbability()
        获取作弊可能性,范围0~1
        返回:
      • isMockGps

        int isMockGps()
        当使用GPS定位时,判断该GPS位置点是否为Mock数据
        返回:
        1为是,0为否,-1为无法判断,当且仅当Provider来源是GPS时有效!
      • getExtra

        android.os.Bundle getExtra()
        返回当前位置相关的某些其他信息, 某个特定的字符串为 key.

        当允许获取设备方向时可通过以下key访问额外信息:

        当 request level 为 5号接口时可通过以下 key 访问额外信息: