新版本flutter(3.32.7) android 端集成百度地圖sdk

新版本flutter(3.32.7) android 端集成百度地圖sdk

因為官方文檔有很多地方沒有說清楚,導致在適配過程中踩了很多坑,本文檔基于已經實現集成的flutter安卓端應用編寫。

官方文檔地址:https://lbs.baidu.com/faq/api?title=flutter/loc/create-project/configure

Flutter是谷歌的移動UI框架,可以快速在iOS和Android上構建高質量的原生用戶界面,因其毫秒級熱重載能夠實現快速開發、具備超強原生性能以及富有表現力和靈活的UI,越來越受開發者喜愛,因此推出百度定位Flutter插件供廣大開發者在開發Flutter Application的時候,可以集成本插件實現基本定位需求。

集成后地圖長這樣:

在這里插入圖片描述

第一步:打開/創建一個flutter application工程

根據開發者的實際使用情況,打開一個已有的flutter application工程,或新建一個flutter application工程。 這里不再贅述。

第二步申請Android端AK

在百度地圖開放平臺控制臺應用管理中創建Android端AK
如果之前沒有認證過需要先登錄,再認證開發者。
地址:https://lbs.baidu.com/apiconsole/key

創建這個需要兩個東西,一個是packageName,在這獲取:
在這里插入圖片描述

另一個是 SHA1碼,網上自行查找獲取方法。

創建完后長這樣:
在這里插入圖片描述

第三步:添加依賴

pubspec.yaml 文件添加flutter依賴

  # 百度地圖flutter_baidu_mapapi_base: ^3.9.5flutter_baidu_mapapi_map: ^3.9.5flutter_baidu_mapapi_utils: ^3.9.5flutter_baidu_mapapi_search: ^3.9.5permission_handler: ^12.0.1 # 動態申請權限插件geolocator: ^14.0.2 # 獲取當前定位插件

百度地圖使用只需要前四個即可,后面是我定位還有獲取權限使用。不需要的可以不加

dart run pub get 下載依賴

第四步:新建 MyApplication.kt 文件

MainActivity 同級目錄下創建 MyApplication.kt 文件,內容如下:

package xxx // 這個package要和 MainActivity 里面的一致import com.baidu.mapapi.base.BmfMapApplicationclass MyApplication : BmfMapApplication() {override fun onCreate() {super.onCreate()}
}

創建好了長這樣:
在這里插入圖片描述

第五步:調整 android AndroidManifest.xml 文件

調整 android/app/src/main/AndroidManifest.xml 文件,調整如下:
1、在 manifest 子節點新增如下內容,用于sdk的權限聲明

    <!-- 用于訪問wifi網絡信息,wifi信息會用于進行網絡定位 --><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><!-- 獲取網絡狀態,根據網絡狀態切換進行數據請求網絡轉換 --><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><!-- 寫外置存儲。如果開發者使用了離線地圖,并且數據寫在外置存儲區域,則需要申請該權限 --><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><!-- 讀取外置存儲。如果開發者使用了so動態加載功能并且把so文件放在了外置存儲區域,則需要申請該權限,否則不需要 --><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /><!-- 訪問網絡,進行地圖相關業務數據請求,包括地圖數據,路線規劃,POI檢索等 --><uses-permission android:name="android.permission.INTERNET" /><!-- 定位權限 --><uses-permission android:name

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/89390.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/89390.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/89390.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

FreeRTOS—列表和列表項

文章目錄一、列表與列表項1.1.列表與列表項的簡介1.2.列表與列表項相關結構體1.2.1.列表結構體1.2.2.列表項結構體1.2.3.迷你列表項二、列表相關API函數2.1.列表相關API函數介紹2.1.1.vListInitalise( )初始化列表函數2.1.2.vListInitaliseItem( )初始化列表項函數2.1.3.vListI…

超詳細 anji-captcha滑塊驗證uniapp微信小程序前端組件

由于步驟太多&#xff0c;字數太多&#xff0c;廢話也太多&#xff0c;所以前后端分開講了&#xff0c;后端文章請看&#xff1a; 超詳細 anji-captcha滑塊驗證springbootuniapp微信小程序前后端組合https://blog.csdn.net/new_public/article/details/149116742 anji-captcha…

面向對象編程篇

文章目錄一、思維導圖二、詳細內容第 6 章&#xff1a;面向對象編程基礎6.1 面向對象編程的概念和優勢6.2 類和對象的定義與創建6.3 類的屬性和方法6.4 構造函數&#xff08;__init__&#xff09;和析構函數&#xff08;__del__&#xff09;6.5 封裝、繼承和多態的實現第 7 章&…

虛擬商品自動化實踐:閑魚訂單防漏發與模板化管理的技術解析

最近阿燦發現了一款閑魚虛擬商品賣家必備神器&#xff01;告別手動發貨&#xff0c;訂單自動處理&#xff0c;防錯防漏&#xff0c;支持課程、激活碼、電子書等多種商品&#xff0c;預設模板更省心。文末獲取工具&#xff01;最厲害的是&#xff0c;你完全不用一直開著電腦。以…

【Zephyr開發實踐系列】08_NVS文件系統調試記錄

文章目錄前言一、NVS原理介紹&#xff1a;二、BUG-NO1&#xff1a;將NVS運用在NAND-Flash類大容量存儲設備2.1 情況描述&#xff1a;2.2 BUG復現&#xff1a;文件系統設備樹構建測試應用編寫&#xff08;導致錯誤部分&#xff09;&#xff1a;問題呈現&#xff1a;2.3 問題簡述…

網絡安全第二次作業

靶場闖關1~8 1. 在url后的name后輸入payload ?name<script>alert(1)</script> 2. 嘗試在框中輸入上一關的payload,發現并沒有通過&#xff0c;此時我們可以點開頁面的源代碼看看我們輸入的值被送到什么地方去了 從圖中可以看到&#xff0c;我們輸入的值被送到i…

LangChain 源碼剖析(七)RunnableBindingBase 深度剖析:給 Runnable“穿衣服“ 的裝飾器架構

每一篇文章都短小精悍&#xff0c;不啰嗦。一、功能定位&#xff1a;Runnable 的 "增強包裝器"RunnableBindingBase 是 LangChain 中實現裝飾器模式的核心組件。它就像給原有 Runnable 套上一件 "功能外套"—— 不改變原有 Runnable 的核心邏輯&#xff0c…

為 Git branch 命令添加描述功能

寫在最前面的使用方式 查看 所有分支的備注 git branch.notes創建分支并為分支添加備注 git co -b feat/oauth -m 第三方用戶登錄對分支描述的添加與清除 添加 git branch.note --add 清除 git branch.note --clear &#x1f4dd; 為 Git branch 命令添加描述功能 &#x…

LeetCode|Day18|20. 有效的括號|Python刷題筆記

LeetCode&#xff5c;Day18&#xff5c;20. 有效的括號&#xff5c;Python刷題筆記 &#x1f5d3;? 本文屬于【LeetCode 簡單題百日計劃】系列 &#x1f449; 點擊查看系列總目錄 >> &#x1f4cc; 題目簡介 題號&#xff1a;20. 有效的括號 難度&#xff1a;簡單 題目…

使?Pytorch構建?個神經?絡

關于torch.nn:使?Pytorch來構建神經?絡, 主要的?具都在torch.nn包中.nn依賴于autograd來定義模型, 并對其?動求導.構建神經?絡的典型流程:定義?個擁有可學習參數的神經?絡遍歷訓練數據集處理輸?數據使其流經神經?絡計算損失值將?絡參數的梯度進?反向傳播以?定的規則…

網絡爬蟲的詳細知識點

基本介紹 什么是網絡爬蟲 網絡爬蟲&#xff08;Web Crawler&#xff09;是一種自動化程序&#xff0c;用于從互聯網上抓取、解析和存儲網頁數據。其核心功能是模擬人類瀏覽行為&#xff0c;通過HTTP/HTTPS協議訪問目標網站&#xff0c;提取文本、鏈接、圖片或其他結構化信息&…

AndroidX中ComponentActivity與原生 Activity 的區別

一、AndroidX 與原生 Activity 的區別 1. 概念與背景 原生 Activity&#xff1a;指 Android 早期&#xff08;API 1 起&#xff09;就存在于 android.app 包下的 Activity 類&#xff08;如 android.app.Activity&#xff09;&#xff0c;是 Android 最初的 Activity 實現&…

Spring AI 使用 Elasticsearch 作為向量數據庫

前言 嗨&#xff0c;大家好&#xff0c;我是雪荷&#xff0c;最近在公司開發 AI 知識庫&#xff0c;同時學到了一些 AI 開發相關的技術&#xff0c;這期先與大家分享一下如何用 ES 當做向量數據庫。 安裝ES 第一步我們先安裝 Elasticsearch&#xff0c;這里建議 Elasticsear…

TypeScript 配置全解析:tsconfig.json、tsconfig.app.json 與 tsconfig.node.json 的深度指南

前言在現代前端和后端開發中&#xff0c;TypeScript 已經成為許多開發者的首選語言。然而&#xff0c;TypeScript 的配置文件&#xff08;特別是多個配置文件協同工作時&#xff09;常常讓開發者感到困惑。本文將深入探討 tsconfig.json、tsconfig.app.json 和 tsconfig.node.j…

讀書筆記(學會說話)

1、一個人只有會說話&#xff0c;才會有好人緣&#xff0c;做事才會順利。會說話的人容易成功。善于說話的人易成功&#xff0c;而不善說話的人往往寸步難行。我們要把話說得好聽&#xff0c;同時更要把事做得漂亮。或許一句話&#xff0c;一件事&#xff0c;就可能使人生的旅途…

私有服務器AI智能體搭建-大模型選擇優缺點、擴展性、可開發

以下是主流 AI 框架與模型的對比分析&#xff0c;涵蓋其優缺點、擴展性、可開發性等方面。 文章目錄一、AI 框架對比二、主流大模型對比三、擴展性對比總結四、可開發性對比總結五、選擇建議&#xff08;按場景&#xff09;六、未來趨勢一、AI 框架對比 框架優點缺點擴展性可開…

OpenCV直線段檢測算法類cv::line_descriptor::LSDDetector

操作系統&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 編程語言&#xff1a;C11 算法描述 該類用于實現 LSD (Line Segment Detector) 直線段檢測算法。LSD 是一種快速、準確的直線檢測方法&#xff0c;能夠在不依賴邊緣檢測的前提下直接從…

Go語言流程控制(if / for)

分支結構package mainimport ("fmt""strconv" )/* 1.順序結構 2.分支結構 3.循環結構 *//* if 條件1 {// 條件1為真時執行的代碼 } else if 條件2 {// 條件1為假但條件2為真時執行的代碼 } else {// 所有條件均為假時執行的代碼 }一種特殊的條件分支結構if…

wx小程序設置沉浸式導航文字高度問題

第一步&#xff1a;在app.json中設置"navigationStyle": "custom"第二步驟&#xff1a;文件的home.js中// pages/test/test.js Page({/*** 頁面的初始數據*/data: {statusBarHeight: 0,navBarHeight: 44 // 自定義導航內容區高度(單位px)},/*** 生命周期函…

C++算法競賽篇:DevC++ 如何進行debug調試

C算法競賽篇&#xff1a;DevC 如何進行debug調試前言一、準備工作&#xff1a;編譯生成可執行程序二、核心步驟&#xff1a;設置斷點與啟動調試1. 設置斷點2. 啟動調試模式三、調試操作&#xff1a;逐步執行與變量監控1. 逐步執行代碼2. 監控變量值變化四、調試結束前言 在算法…