Xamarin.Android之使用百度地图起始篇

时间:2022-09-18 19:55:52

一、前言

如今跨平台开发层出不穷,而对于.NET而言时下最流行的当然还是Xamarin,不仅仅能够让我们在熟悉的Vs下利用C#开发,在对原生态类库的支持方面也有着非常的好支持,今天我们将会以百度地图类库来介绍如何实用第三方原生态类库。如果需要在Fragment中使用请跳转到(由网友monosir提供)该篇文章:传送门

二、正文

笔者采用的是3.0.0的版本,需要以下文件:

baidumapapi_v3_0_0.jar

libBaiduMapSDK_v3_0_0.so

1.新建项目

Xamarin.Android之使用百度地图起始篇

2.将baidumapapi_v3_0_0.jar赋值到Jars文件夹下

Xamarin.Android之使用百度地图起始篇

3.修改其属性

Xamarin.Android之使用百度地图起始篇

4.如果我们直接生成是会出错的,所以我们在Metadata.xml中加上一个属性

Xamarin.Android之使用百度地图起始篇

内容如下所示

 <metadata>
<attr path="/api/package[@name='com.baidu.mapapi']/class[@name='VersionInfo']/field[@name='VERSION_INFO']" name="name">VersionInfos</attr>
</metadata>

如果读者没有加这个直接生成会出现一个属性的名称跟类的名称相同,所以我们需要重命名。更多的使用方式可以见如下网站(英文):

http://www.mono-project.com/GAPI#Metadata

5.成功生成

现在我们就绑定好了,剩下我们就需要使用了。

6.创建一个Android应用

Xamarin.Android之使用百度地图起始篇

7.引用之前的内库项目

如果出现引用了,但是无法实用其中的方法,可以尝试直接引用生成的dll

8.打开AssemblyInfo文件将百度地图的配置写进去

Xamarin.Android之使用百度地图起始篇

内容如下所示:

Xamarin.Android之使用百度地图起始篇

9.将so格式的文件放入项目中

在项目中新建libs文件夹以及armeabi文件夹

Xamarin.Android之使用百度地图起始篇

10.设置libBaiduMapSDK_v3_0_0.so的生成操作为AndroidNativeLibrary

Xamarin.Android之使用百度地图起始篇

11.最后在MainActivity.cs中写入初始代码

Xamarin.Android之使用百度地图起始篇

12.最后我们就可以看到百度地图了(必须是ARM虚拟机,不可以是Intel Atom)

Xamarin.Android之使用百度地图起始篇

13.关于如何获取SHA1值,我们可以先下载一个开发android的eclipse工具

打开Window->Preferences后出现一个对话框,紧接着继续选择:

Xamarin.Android之使用百度地图起始篇

接着点击Browse选择C:\Users\Administrator\AppData\Local\Xamarin\Mono for Android目录下的debug.keystore文件之后我们就可以看到SHA1值了,接着就可以去申请授权了。

Xamarin.Android之使用百度地图起始篇的更多相关文章

  1. &lbrack;置顶&rsqb;&NewLine; Xamarin android如何调用百度地图入门示例(一)

    在Xamarin android如何调用百度地图呢? 首先我们要区分清楚,百度地图这是一个广泛的概念,很多刚刚接触这个名词"百度地图api",的确是泛泛而谈,我们来看一下百度地图的 ...

  2. Android Studio使用百度地图示例BaiduMapsApiASDemo

    Android Studio使用百度地图示例BaiduMapsApiASDemo 用自己AVD下的debug.keystore替换掉项目中的debug.keystore 生成自己的签名 同样的方法生成 ...

  3. Android开发之百度地图--环境搭建

    这篇文章总结自极客学院张浩老师的android教学课程,在此对张浩老师和崔爽老师表示非常感谢. (一)基础知识 在申请百度地图开发密钥的时候需要用到数字签名证书的内容,所以这里先对此做一下介绍. (1 ...

  4. Android开发之百度地图的简单使用

    越来越多的App运用到了定位,导航的这些功能,其实实现一个自己的百度地图也是非常的简单,这篇博客将会教你简单的实现一个百度地图.看一下效果图: 第一步:要使用百度地图,必须要有百度地图的Key,要获得 ...

  5. Android探索之百度地图开发

    目录 前言 地图图层介绍 地图覆盖物介绍 地图事件 POI检索 公交线路查询 线路规划 地理编码 @ 前言 之前自己在做一个小项目时涉及到了百度地图的一些内容,当时因为对百度地图的开发流程不是很了解, ...

  6. 【月入41万】Mono For Android中使用百度地图SDK

    借助于Mono For Android技术,.Net开发者也可以使用自己熟悉的C#语言以及.Net来开发Android应用.由于Mono For Android把Android SDK中绝大部分类库都 ...

  7. Android Studio 导入百度地图jar和so的正确方式

    //这部分内容在百度地图的官方文档中写的比较模糊 //感觉在这种事情上浪费实际很不好,遂记录如下 //以下仅是方法之一 step1 下载sdk后解压,并把libs中的全部内容拷贝到app/libs目录 ...

  8. android 开发之 百度地图的使用

    好久没写博客了,最近遇到个新需求 需要用到百度地图的基础地图,定位,理论上应该还会用到鹰眼的功能吧.具体还很难说.我现在 刚动工,就从头开始记录吧. 首先是先申请一个百度地图api的key 流程官网很 ...

  9. Android Studio集成百度地图SDK

    1.建议先阅读百度地图官方的继承指南,针对了Eclipse和Android Studio. 百度官方集成指南 2.下载百度地图SDK Android SDK v4.1.1 下载有两种: 1.一键下载( ...

随机推荐

  1. CentOS系统Kernel panic - not syncing&colon; Attempted to kill init

    结果启动虚拟机出现如下问题: Kernel panic - not syncing: Attempted to kill init     解决方法: 系统启动的时候,按下'e'键进入grub编辑界面 ...

  2. javascript优化--03高质量编码

    使用Object的直接量实例构造轻量级的字典: 使用for/in循环,使用对象字面量来构建,并确保不增加Object.prototype属性来导致for/in循环:(考虑到兼容性,如Array.pro ...

  3. 浅析tornado web框架

    tornado简介 1.tornado概述 Tornado就是我们在 FriendFeed 的 Web 服务器及其常用工具的开源版本.Tornado 和现在的主流 Web 服务器框架(包括大多数 Py ...

  4. stack smashing detect错误修正

    运行./a.out程序时候出现如下: *** stack smashing detected ***: ./a.out terminated段错误 (核心已转储) 一般这个错误是由于堆栈错误,很可能是 ...

  5. java中iofile的路径问题,确定一个未知方法所需要的文件路径

    今天遇到一个极其烦躁的问题,一个jar包中的一个方法,要求函数中要求传入一个String类型的参数,用于指示文件所在的路径.但是对于我们来说完全不知道他需要的路径是绝对路径还是相对路径,所以我尝试了很 ...

  6. 二十五、过滤器Filter,监听器Listener,拦截器Interceptor的区别

    1.Servlet:运行在服务器上可以动态生成web页面.servlet的声明周期从被装入到web服务器内存,到服务器关闭结束.一般启动web服务器时会加载servelt的实例进行装入,然后初始化工作 ...

  7. k近邻算法&lpar;KNN&rpar;

    k近邻算法(KNN) 定义:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别. from sklearn.model_selection ...

  8. 使用R内置函数操作数据框

    我们已经学习了数据框的基础,这里回顾一下用于筛选数据框的内置函数.尽管数据框本质上是一个由向量构成的列表,由于各列长度相同,所以可以将其看作矩阵进行访问和操作.选择满足特定条件的行,需要为 [ ] 的 ...

  9. abc sort

    c: #include<stdio.h>//从大到小 int main(){ int a, b, c; int x = 0; printf("input message:\n&q ...

  10. iOS:quartz2D绘图&lpar;画一些简单的图形&comma;如直线、三角形、圆、矩形、文字等&rpar;

    前一篇几乎已经详细介绍了Quartz2D的所有知识,这一篇以及后面就不废话了,主要是用具体的实例来演示绘图效果. 这里我们先来绘制一些简单的图形(如直线.三角形.圆.矩形.文字.图像),它有两种方式可 ...