当前位置: 首页 > news >正文

Unity之获取用户地理位置

1.直接利用三方API获取:

1.1 利用bilibili的api 【未知稳定性】

    public void Awake() {StartCoroutine(GetLocationInfoNew());}/// <summary>/// 利用bilibili的接口通过ip直接获取城市信息/// </summary>IEnumerator GetLocationInfoNew() {//UnityWebRequest publicIpReq = UnityWebRequest.Get(@"https://api.live.bilibili.com/client/v1/Ip/getInfoNew");var publicIpReq = new UnityWebRequest("https://api.live.bilibili.com/client/v1/Ip/getInfoNew", UnityWebRequest.kHttpVerbGET);publicIpReq.downloadHandler = new DownloadHandlerBuffer();yield return publicIpReq.SendWebRequest();if (!string.IsNullOrEmpty(publicIpReq.error)) {Debug.Log($"获取城市信息失败:{publicIpReq.error}");yield break;}var info = publicIpReq.downloadHandler.text;Debug.Log(info);//将json解析为objectvar resData = JsonUtility.FromJson<ResponseRootData>(info);Debug.Log($"address:{resData.data.addr}|province:{resData.data.province}|city:{resData.data.city}");}#region 用于接收返回值json的反序列化数据[System.Serializable]public class ResponseRootData {public int code;public string message;public ResponseData data;}[System.Serializable]public class ResponseData {public string addr;public string country;public string province;public string city;public string isp;public string latitude;public string longitude;}#endregion

lua代码

			    local info = request.downloadHandler.textlog:Info(info)local json_parser_ = RapidJsonParser.new()info = json_parser_:Decode(info)if IsNull(info) or IsNull(info.data) thenre
http://www.lryc.cn/news/114065.html

相关文章:

  • TC3XX - MCAL知识点(二十):CAN MCAL配置及代码实战(CAN/CANFD/extenen CAN)
  • QT生成Debug和Release发布版后,运行exe缺少dll问题
  • 企业进销存管理流程有哪些? 附进销存管理系统
  • RPC原理与Go RPC详解
  • JavaScript:异步编程的发展
  • 排序第二课【选择排序】直接选择排序 与 堆排序
  • 【chrome扩展开发】vue-i18n使用问题及解决方案
  • 【Vue3】localStorage读取数组并赋值的问题
  • 华为harmonyos4.0鸿蒙4.0安装谷歌服务框架Play商店,解决从服务器检索信息时出错
  • pcl 滤波
  • 前端js--旋转幻灯片
  • 解决mvn clean install遇到testng单元测试失败时打包也失败的问题
  • RISC-V基础之函数调用(二)栈与寄存器(包含实例)
  • 解析器模式(C++)
  • 电子元器件选型与实战应用—02 电容选型第1篇(8000字)
  • 试图将更改推送到 GitHub,但是远程仓库已经包含了您本地没有的工作(可能是其他人提交的修改)
  • Lamport向量时钟算法的C++实现:在分布式系统中生成事件的部分排序并检测因果关系违规
  • 多个excel的sheet合并到一个excel下
  • 【Fegin技术专题】「原生态」打开Fegin之RPC技术的开端,你会使用原生态的Fegin吗?(中)
  • leetcode--每日一题--822--344(使用异或来进行数据交换)
  • OpenStreetMap数据转3D场景【Python + PostgreSQL】
  • 动力节点|MyBatis入门实战到深入源码
  • 分布式规则引擎框架的设计
  • C#开发FFMPEG例子(API方式) FFmpeg推送udp组播流
  • nvm下载node导致npm报错无法使用
  • LeetCode 热题 100JavaScript--2. 两数相加
  • zookeeper总结
  • 【程序环境与预处理玩转指南】
  • 搭建简易syslog日志中转服务器
  • MongoDB文档-进阶使用-spring-boot整合使用MongoDB---MongoRepository完成增删改查