當前位置:編程學習大全網 - 源碼下載 - 飄動的音符——調用原生IOS的sdk高德

飄動的音符——調用原生IOS的sdk高德

2017年末,由於公司業務合並部門調整,新團隊維護的部分項目采用React原生技術開發。為了適應環境的變化,開始瘋狂的RN學習之旅,晚上回來啃資料,看視頻。可能是因為對RN技術體驗不感興趣或者對環境中的強迫學習有點不滿。開始尋找替代品,Fluter像壹束曙光壹樣引起了我的註意,從那以後就壹直關註著它,並在業余時間開始探索。2018我壹直在學習用Flutter寫項目。從0.2.0到1.5版本發布,終於開始爬出坑了。但是因為有些控件還是感覺不如原生控件,所以Flutter提供了PlatformView組件。最近,由於在項目中大量使用依賴地圖,對Fluterr RR使用原生IOS高德地圖的情況進行了調查。因為我自己是安卓開發者,所以我是IOS初學者,記錄壹下。

Platformview是flutter提供的壹個小部件,可以嵌入到Android和iOS平臺的原生視圖中。

在我們的實際開發中,遇到了壹些flutter官方沒有提供的插件,我們可以創建並編寫插件來實現壹些功能。但是原生視圖會屏蔽flutter中的widgets,比如妳要使用高德地圖sdk、視頻播放器、直播等原生控件,就不能很好的與flutter項目集成。

1,info.plist文件設置

2.原生組件Platformview在ios端實現,提供原生視圖。

3.在ios端創建PlatformViewFactory,生成PlatformView。

4.ios創建FlutterPlugin來註冊原生組件。

5.顫振平臺嵌入原生視圖。

目前iOS端的UiKitView只是預覽狀態,默認不支持。需要手動打開開關,在info.plist文件中添加壹行io . flute . embedded _ views _ preview為true。

創建FlutterMapView類並實現FlutterPlatformView協議

FlutterMapView.h

FlutterMapView.m

FlutterMapFactory.h

FlutterMapFactory.m

FlutterMapPlugin.h

FlutterMapPlugin.m

請在高德開放平臺控制臺申請IOSKY。

註意:捆綁包標識符需要與申請時填寫的標識符相同。

映射所依賴的庫如下所示:

基本SDK mapfoundationkit。結構

第壹步:將解壓後的MAMapKit.framework文件復制或拖拽到項目文件夾中,在左側目錄中選擇項目名稱,點擊“Targets-> ”;構建階段->;在Link Binary With Libaries中點擊“+”按鈕,在彈出窗口中點擊“Add Other”按鈕,在項目目錄中選擇MAMapKit.framework文件添加到項目中。

不要忘記將AMapFoundationKit添加到項目中。

三維地圖的正確配置如下圖所示:

需要導入的資源文件有:AMap.bundle,其中:AMap.bundle在MAMapKit.framework包中,AMap.bundle資源文件中存儲了定位、默認pin註釋視圖等圖片,可以用於開發。

在左側目錄中選擇項目名稱,在右鍵菜單中選擇“將文件添加到項目名稱”,從MAMapKit.framework中選擇AMap.bundle文件,選中“如果需要,復制項目”復選框,然後單擊“添加”按鈕將資源文件添加到項目中。

運行成功。。。

  • 上一篇:Web實戰案例源代碼
  • 下一篇:2022春節海報背景-2022年春節檔,電影《長津湖之水門橋》的背景是什麽?
  • copyright 2024編程學習大全網