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

维智物联定位SDK Flutter 插件

开发指南维智定位SDK Flutter 插件在Android / iOS / HarmonyOS上调用原生 Wayz 定位SDK 完成持续定位、正/逆地理编码、场所搜索等功能。SDK与Flutter插件Flutter插件源码不附带Android/ iOS / HarmonyOS SDK需由开发者自行导入SDK按平台提供集成文档对接。安装wz_location_plugin在应用pubspec.yaml中依赖本插件本地 pathdependencies: wz_location_plugin: path: ../wz_location_plugin # 改为相对你工程的实际路径然后执行flutter pub getAndroid 集成下载 SDK将官网下载的sdk示例wayz-sdk-android-7.1.0.jar放在android/app/libs/下。在android/app/build.gradle中导入sdk。示例dependencies { implementation files(libs/wayz-sdk-android-7.1.0.jar) }在../wz_location_plugin/android/build.gradle中导入sdk。示例dependencies { // 这里sdk路径需配置为实际路径 compileOnly files(../../../android/app/libs/wayz-sdk-android-7.1.0.jar) }添加权限AndroidManifest.xmluses-permission android:nameandroid.permission.INTERNET/ !--用于进行网络定位-- uses-permission android:nameandroid.permission.ACCESS_COARSE_LOCATION/uses-permission !--用于访问GPS定位-- uses-permission android:nameandroid.permission.ACCESS_FINE_LOCATION/uses-permission !--用于读取手机当前的状态获取基站信息-- uses-permission android:nameandroid.permission.READ_PHONE_STATE/uses-permission !--用于获取运营商信息用于支持提供运营商信息相关的接口-- uses-permission android:nameandroid.permission.ACCESS_NETWORK_STATE/uses-permission !--用于访问wifi网络信息wifi信息会用于进行网络定位-- uses-permission android:nameandroid.permission.ACCESS_WIFI_STATE/uses-permission !--用于获取wifi的获取权限wifi信息会用来进行网络定位-- uses-permission android:nameandroid.permission.CHANGE_WIFI_STATE/uses-permission !--用于访问网络网络定位需要上网-- uses-permission android:nameandroid.permission.INTERNET/uses-permission !--用于申请调用A-GPS模块-- uses-permission android:nameandroid.permission.ACCESS_LOCATION_EXTRA_COMMANDS/uses-permission !-- 基础前台服务权限兼容 Android 8.0-11 -- uses-permission android:nameandroid.permission.FOREGROUND_SERVICE/ !-- Android 12 定位类前台服务专用权限 -- uses-permission android:nameandroid.permission.FOREGROUND_SERVICE_LOCATION/ !-- 后台定位核心权限Android 10 -- uses-permission android:nameandroid.permission.ACCESS_BACKGROUND_LOCATION/添加定位服务application service android:namecom.wayz.location.WzService/service /applicationiOS 集成下载 SDK从 Wayz 获取官方的wzLib.xcframework。将wzLib.xcframework放在ios目录下即/ios/WayzLocal/wzLib.xcframework。在 App 的ios/Podfile的target Runner中flutter_install_all_ios_pods之前加入pod WayzLocal, :path WayzLocaltarget Runner do # Wayz wzLib.xcframework 为静态产物时需配置静态 linkage # 否则 CocoaPods 报 transitive static binary 错误 use_frameworks! :linkage :static use_modular_headers! # 导入wzLib.xcframework pod WayzLocal, :path WayzLocal flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) target RunnerTests do inherit! :search_paths end end执行pod install后再编译。最低 iOS 版本与示例一致为13.0platform :ios, 13.0。隐私与权限Info.plist至少配置「使用期间」定位用途说明若需后台定位再配置「始终」相关键例如keyNSLocationWhenInUseUsageDescription/key string是否允许使用您的定位/string keyNSLocationAlwaysAndWhenInUseUsageDescription/key string是否允许后台一直使用定位/string需要后台定位时在Info.plist中配置UIBackgroundModes含location。keyUIBackgroundModes/key array stringlocation/string /arrayHarmonyOS 集成下载 SDK从 Wayz 获取官方的wayz-sdk-hmos-next_3.0.0.har放到应用鸿蒙工程ohos/libs/在应用ohos/oh-package.json5中声明依赖。例如wzlocation: file:./libs/wayz-sdk-hmos-next_3.0.0.har在../wz_location_plugin/ohos/oh-package.json5中导入sdk。示例dependencies: { wzlocation: file:../../../ohos/libs/wayz-sdk-hmos-next_3.0.0.har }隐私与权限在/ohos/entry/src/main/module.json5添加权限{ requestPermissions: [ { name: ohos.permission.INTERNET }, { name: ohos.permission.LOCATION, reason: $string:permission_reason_location, usedScene: { abilities: [ EntryAbility ], when: inuse } }, { name: ohos.permission.LOCATION_IN_BACKGROUND, reason: $string:permission_reason_location_in_background, usedScene: { abilities: [ EntryAbility ], when: always } }, { name: ohos.permission.APPROXIMATELY_LOCATION, reason: $string:permission_reason_approx_location, usedScene: { abilities: [ EntryAbility ], when: inuse } }, { name: ohos.permission.APP_TRACKING_CONSENT, reason: $string:permission_reason_app_tracking_consent, usedScene: { abilities: [ EntryAbility ], when: inuse } }, { name: ohos.permission.GET_WIFI_INFO, reason: $string:permission_reason_get_wifi_info, usedScene: { abilities: [ EntryAbility ], when: inuse } }, { name: ohos.permission.GET_NETWORK_INFO, reason: $string:permission_reason_get_network_info, usedScene: { abilities: [ EntryAbility ], when: inuse } }, { name: ohos.permission.KEEP_BACKGROUND_RUNNING, reason: $string:permission_reason_keep_background_running, usedScene: { abilities: [ EntryAbility ], when: always } } ] } }在/ohos/entry/src/main/resources/base/element/string.json添加权限说明{ string: [ { name: permission_reason_location, value: 允许应用在前台运行时获取位置信息 }, { name: permission_reason_location_in_background, value: 允许应用在后台运行时获取位置信息 }, { name: permission_reason_approx_location, value: 允许应用获取设备模糊位置信息 }, { name: permission_reason_app_tracking_consent, value: 允许应用获取设备唯一标识符 }, { name: permission_reason_get_wifi_info, value: 允许应用获取连接wifi信息 }, { name: permission_reason_get_network_info, value: 允许应用获取网络信息 }, { name: permission_reason_keep_background_running, value: 允许应用进行长时任务 } ] }Dart 集成与使用1. 引用import package:wz_location_plugin/wz_location_plugin.dart;2. 隐私合规在使用定位功能之前调用以下方法标识用户已同意隐私政策WzLocationPlugin.updatePrivacyShow(true, false); WzLocationPlugin.updatePrivacyAgree(true);3. 配置 KeyWzLocationPlugin().setApiKey(你的 apiKey);//官网获取4.单次定位WzLocationPlugin().setLocationOption( WzLocationOption( apiKey: 你的 apiKey, //官网获取 interval: 5000,//定位时间间隔单位毫秒 isLocateOnce: true,//是否是单次定位 ), ); StreamSubscriptionMapString, Object?? onLocationChangedSub WzLocationPlugin().onLocationChanged().listen( (event) log(onLocationChanged: $event), onError: (Object e, StackTrace st) log(onLocationChangederror: $e), ); }; // 调用前需判断是否授权定位相关权限 WzLocationPlugin().startLocation();5.连续定位WzLocationPlugin().setLocationOption( WzLocationOption( apiKey: 你的 apiKey, //官网获取 interval: 5000,//定位时间间隔单位毫秒 isLocateOnce: false,//是否是单次定位 ), ); StreamSubscriptionMapString, Object?? onLocationChangedSub WzLocationPlugin().onLocationChanged().listen( (event) log(onLocationChanged: $event), onError: (Object e, StackTrace st) log(onLocationChangederror: $e), ); }; // 调用前需判断是否授权定位相关权限 WzLocationPlugin().startLocation();Flutter定SDK下载https://lothub.newayz.com/download/flutter-download/Flutter定位SDK示例代码下载https://lothub.newayz.com/download/flutter-download-sample/

相关文章:

维智物联定位SDK Flutter 插件

开发指南 维智定位SDK Flutter 插件:在 Android / iOS / HarmonyOS 上调用原生 Wayz 定位SDK 完成持续定位、正/逆地理编码、场所搜索等功能。 SDK与Flutter插件:Flutter插件源码不附带 Android/ iOS / HarmonyOS SDK,需由开发者自行导入SDK…...

在骁龙 X2 Elite 上安装 Hermes Agent(1): 硬件规格和安装准备

系列导读 为什么 骁龙Snapdragon X2 Elite 是 Hermes Agent 的最佳搭档?本文是《在骁龙 X2 Elite 上安装 Hermes Agent》系列的第一篇。你将了解 骁龙 X2 Elite 的强大硬件规格、Hermes Agent 的核心能力,以及安装前的准备工作。 一、为什么选择骁龙 X2 …...

从零开始学大模型Agent:收藏这份反向学习路线,助你避开99%小白踩坑!

本文揭示当前大模型Agent学习路线普遍顺序错误,建议反向学习:先理解底层机制(动手写最小Agent),再掌握LangGraph流程建模(重点StateGraph、条件边、Checkpointer),深入核心模块工程&…...

0 基础转码学 AI:Java+Python 双语言入门,3 个月可落地实战项目

如今 AI 应用开发岗位需求持续上涨,不少零基础上班族、应届生、跨行业人群都想走转码路线入局技术行业。但很多人纠结不知道先学哪门语言,也不清楚零基础该以怎样的节奏入门,更担心学习周期太长,迟迟做不出能用于求职的实战项目。 结合当下企业真实用人需求来看,单纯只学…...

收藏! Harness 让你轻松驾驭大模型,小白也能写出高效代码

本文探讨了 AI 编程 Agent 的核心要素,强调 Harness(工具、流程和反馈系统)的重要性远超单纯依赖模型。通过实例说明,优化编辑格式等 Harness 设计可显著提升 Agent 成功率。文章提出,为 AI 准备更好的工作台&#xff…...

Android FLAG_SECURE限制突破:如何让所有应用都能自由截屏?

Android FLAG_SECURE限制突破:如何让所有应用都能自由截屏? 【免费下载链接】DisableFlagSecure 项目地址: https://gitcode.com/gh_mirrors/dis/DisableFlagSecure 在Android应用开发中,FLAG_SECURE标志常常让用户感到困扰——当你需…...

PPTist:零基础打造专业级在线演示文稿的完整指南

PPTist:零基础打造专业级在线演示文稿的完整指南 【免费下载链接】PPTist PowerPoint-ist(/pauəpɔintist/), An online presentation application that replicates most of the commonly used features of MS PowerPoint, allowing for the…...

6.6k Star 这个内网穿透神器,一行命令开通公网域名,前后端联调神器!

👉 这是一个或许对你有用的社群🐱 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料: 《项目实战(视频)》:从书中学,往事中…...

2026上海楼宇自控系统 / DDC 自控系统/能耗监测系统厂家知名厂家推荐 品牌选型指南!

根据 2026 年最新行业调研数据,楼宇自控市场已迎来深刻变革。在 “双碳” 战略深入推进与国产替代进程加速的双重驱动下,国产品牌已正式跻身行业第一梯队,与霍尼韦尔、江森自控、西门子等国际巨头同台竞技。在此行业格局重组的浪潮中&#xf…...

45k Star 的 AI 编程神器:Claude Code / Codex / Cursor Token 一律打 2 折

👉 这是一个或许对你有用的社群🐱 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料: 《项目实战(视频)》:从书中学,往事中…...

安捷伦E8257D/E8267D信号源不开机、输出不正常故障排查

安捷伦E8257D/E8267D信号源作为射频微波测试领域的常用设备,广泛应用于通信、半导体等行业,长期高负荷运行后,不开机、输出不正常等故障十分常见,给测试工作带来诸多困扰。常见故障一:安捷伦E8257D/E8267D不开机不开机…...

Multiverse 引擎3.0:大屏、移动、AR三端覆盖,AR交互功能详解

在Multiverse 3.0版本中,我们首次实现了移动端、大屏端与AR端的全覆盖。基于“一模双擎”架构,用户在Web端可视化编辑器(支持“拖、拉、拽”搭建场景)中创建的数字孪生场景,可在像素流中直接加载,自动适配到…...

在Node.js服务中集成Taotoken实现统一的多模型调用网关

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在Node.js服务中集成Taotoken实现统一的多模型调用网关 对于构建在Node.js上的后端服务,直接对接多个大模型供应商的AP…...

如何彻底释放华硕笔记本性能:G-Helper轻量控制工具终极指南

如何彻底释放华硕笔记本性能:G-Helper轻量控制工具终极指南 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops with nearly the same functionality. Works with ROG Zephyrus, Flow, TUF, Strix, Scar, ProArt, Vivobook, Zenboo…...

Sunshine游戏串流服务器架构深度解析:5个高级性能调优技巧与源码设计实战

Sunshine游戏串流服务器架构深度解析:5个高级性能调优技巧与源码设计实战 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine Sunshine作为一款开源的自托管游戏串流服务器…...

B站视频下载终极指南:如何一键获取无水印高清视频

B站视频下载终极指南:如何一键获取无水印高清视频 【免费下载链接】BiliDownload B站视频下载工具 项目地址: https://gitcode.com/gh_mirrors/bil/BiliDownload 你是否曾为下载B站视频而烦恼?想要保存喜欢的视频却找不到合适的工具?B…...

cmder设置默认打开路径

从你发的截图来看,目前没有任何一项被选中(右侧的代码框是空的,而且右下角的 Startup dir... 按钮也是灰色不可点击的状态),并且确实没有带 * 号的项。没关系,如果没有带 * 号,按照下面的步骤操…...

专科英语A级和B级考试历年真题试卷及答案PDF电子版

高等学校英语应用能力考试(PRETCO)A 级、B 级历年真题试卷及答案 PDF 电子版,专为高职高专、大专在校生备考整理。内容涵盖2022年、2023年、2024年、2025年 6 月、12 月全套真题,含听力原文、答案解析、写作范文,题型覆…...

IDM试用期总在倒计时?这个开源脚本让你告别30天限制的烦恼

IDM试用期总在倒计时?这个开源脚本让你告别30天限制的烦恼 【免费下载链接】IDM-Activation-Script IDM Activation & Trail Reset Script 项目地址: https://gitcode.com/gh_mirrors/id/IDM-Activation-Script 想象一下这样的场景:你刚刚找到…...

在 Hermes Agent 项目中集成 Taotoken 实现自定义模型调用

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在 Hermes Agent 项目中集成 Taotoken 实现自定义模型调用 对于正在使用 Hermes Agent 框架构建智能体应用的开发者而言&#xff0…...

长期使用Taotoken Token Plan套餐在项目开发中的成本优势体会

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 长期使用Taotoken Token Plan套餐在项目开发中的成本优势体会 在项目开发中,尤其是涉及大模型API调用的场景&#xff0…...

如何让普通PC也能运行macOS?OpCore-Simplify的智能解决方案

如何让普通PC也能运行macOS?OpCore-Simplify的智能解决方案 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 你是否曾经梦想过在自己的Wind…...

Win11Debloat:让你的Windows系统告别臃肿,重获极速体验的完整指南

Win11Debloat:让你的Windows系统告别臃肿,重获极速体验的完整指南 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other chang…...

中年以后,真正有效的抗衰老运动,其实就这 4 种

过了 30 岁,肌肉每年流失 1%-2%,基础代谢下降,精力大不如前——这不是错觉,是生理规律。 但运动的选择,决定了你是「老得快」还是「逆生长」。分享 4 种被科学验证的抗衰老运动,中年人越早开始越好。 1️⃣…...

SVN 报错 Previous operation has not finished,提示需要 clean up

SVN报错"Previous operation has not finished"通常是由于操作中断导致工作副本被锁定。 解决方法按优先级推荐: 1)首选执行Cleanup操作,勾选"Cleanup working copy status"和"Break write locks";…...

拟态设计革命来了,你还在用老版MJ?2024Q2官方未披露的3类新拟态纹理权重算法首度解密

更多请点击: https://kaifayun.com 第一章:拟态设计革命的底层逻辑与时代必然性 拟态设计并非视觉层面的风格迁移,而是一场由安全范式迁移、计算环境异构化与攻击面指数级扩张共同驱动的系统性重构。其底层逻辑根植于“动态异构冗余”&…...

拆解昇腾 CANN 五层架构:一个 MatMul 请求的完整旅程

适合人群:想从全局视角理解 CANN 架构的开发者 核心仓库:https://atomgit.com/cann 阅读时长:6 分钟 目录 一、为什么需要五层架构?二、第1层:昇腾计算语言层 AscendCL三、第2层:昇腾计算服务层四、第3层&…...

如何快速找回被遗忘的压缩包密码?ArchivePasswordTestTool终极指南

如何快速找回被遗忘的压缩包密码?ArchivePasswordTestTool终极指南 【免费下载链接】ArchivePasswordTestTool 利用7zip测试压缩包的功能 对加密压缩包进行自动化测试密码 项目地址: https://gitcode.com/gh_mirrors/ar/ArchivePasswordTestTool 你是否曾经面…...

python代码编译成库

一、项目结构如下:your_project/ ├── match/ │ ├── __init__.py # 空文件,声明为包 │ └── matcher.py # 包含 compete_image 类 ├── stitch/ │ ├── __init__.py # 空文件,声明为包 │ └── total…...

【Midjourney双色调风格终极指南】:20年视觉算法专家亲授3步精准复刻电影级Duotone效果

更多请点击: https://kaifayun.com 第一章:双色调美学的视觉起源与Midjourney适配性解析 双色调(Duotone)并非现代数字设计的发明,其视觉基因可追溯至19世纪的凹版印刷工艺——通过两块独立印版叠加单色油墨&#xf…...