Xamarin.Android之使用百度地圖起始篇
一、前言
如今跨平臺開發層出不窮,而對於.NET而言時下最流行的當然還是Xamarin,不僅僅能夠讓我們在熟悉的Vs下利用C#開發,在對原生態類庫的支援方面也有著非常的好支援,今天我們將會以百度地圖類庫來介紹如何實用第三方原生態類庫。如果需要在Fragment中使用請跳轉到(由網友monosir提供)該篇文章:傳送門
二、正文
筆者採用的是3.0.0的版本,需要以下檔案:
baidumapapi_v3_0_0.jar
libBaiduMapSDK_v3_0_0.so
1.新建專案
2.將baidumapapi_v3_0_0.jar賦值到Jars資料夾下
3.修改其屬性
4.如果我們直接生成是會出錯的,所以我們在Metadata.xml中加上一個屬性
內容如下所示
1 <metadata> 2 <attr path="/api/package[@name='com.baidu.mapapi']/class[@name='VersionInfo']/field[@name='VERSION_INFO']" name="name">VersionInfos</attr> 3 </metadata>
如果讀者沒有加這個直接生成會出現一個屬性的名稱跟類的名稱相同,所以我們需要重新命名。更多的使用方式可以見如下網站(英文):
5.成功生成
現在我們就繫結好了,剩下我們就需要使用了。
6.建立一個Android應用
7.引用之前的內庫專案
如果出現引用了,但是無法實用其中的方法,可以嘗試直接引用生成的dll
8.開啟AssemblyInfo檔案將百度地圖的配置寫進去
內容如下所示:
9.將so格式的檔案放入專案中
在專案中新建libs資料夾以及armeabi資料夾
10.設定libBaiduMapSDK_v3_0_0.so的生成操作為AndroidNativeLibrary
11.最後在MainActivity.cs中寫入初始程式碼
12.最後我們就可以看到百度地圖了(必須是ARM虛擬機器,不可以是Intel Atom)
13.關於如何獲取SHA1值,我們可以先下載一個開發android的eclipse工具
開啟Window->Preferences後出現一個對話方塊,緊接著繼續選擇:
接著點選Browse選擇C:\Users\Administrator\AppData\Local\Xamarin\Mono for Android目錄下的debug.keystore檔案之後我們就可以看到SHA1值了,接著就可以去申請授權了。