首页 技术 正文
技术 2022年11月23日
0 收藏 493 点赞 2,743 浏览 3458 个字

好丫小子之前发布过百度地图android SDK的mono for android绑定dll,许多朋友看过之后说想理解是怎么绑定的,现我把绑定的代码发出来。

针对2.1.2版本百度地图android sdk

Metadata.xml

<metadata>
<remove-node path="/api/package[@name='com.baidu.mapapi.cloud']/class[string-length (@name) = 1]" />
<remove-node path="/api/package[@name='com.baidu.mapapi.search']/class[@name = 'PlaceCaterActivity']" />
<remove-node path="/api/package[@name='com.baidu.platform.comapi.map']/class[string-length (@name) = 1 and @name!='u' and @name!='z']" />
<attr path="/api/package[@name='com.baidu.platform.comapi.map']/class[@name='u']" name="obfuscated">false</attr>
<attr path="/api/package[@name='com.baidu.platform.comapi.map']/class[@name='u']" name="managedName">Overlay</attr>
<attr path="/api/package[@name='com.baidu.platform.comapi.map']/class[@name='z']" name="obfuscated">false</attr>
<attr path="/api/package[@name='com.baidu.platform.comapi.map']/class[@name='z']" name="managedName">TransitOverlay</attr>
<attr path="/api/package[@name='com.baidu.platform.comapi.map']/class[@name='z']" name="extends">java.lang.Object</attr>
<attr path="/api/package[@name='com.baidu.vi']/class[@name='d']" name="obfuscated">false</attr> <attr path="/api/package[@name='com.baidu.platform.comjni.permissioncheck']" name="managedName">Com.Baidu.Platform.Comjni._PermissionCheck</attr>
</metadata>

在Additions目录中新增一个Fx.cs文件,文件内代码如下

using System;
using System.Collections.Generic;
using System.Text;
using Object = Java.Lang.Object;namespace Com.Baidu.Mapapi.Map
{
public partial class ItemizedOverlay
{
public int Compare(Object object1, Object object2)
{
return object1.GetHashCode() - object2.GetHashCode();
}
}
}

这部分代码主要是修正ItemizedOverlay类没实现基类的public int Compare(Object object1, Object object2)方法的错误

针对2.1.3版本百度地图android sdk

Metadata.xml

<metadata>
<!--
This sample removes the class: android.support.v4.content.AsyncTaskLoader.LoadTask:
<remove-node path="/api/package[@name='android.support.v4.content']/class[@name='AsyncTaskLoader.LoadTask']" /> This sample removes the method: android.support.v4.content.CursorLoader.loadInBackground:
<remove-node path="/api/package[@name='android.support.v4.content']/class[@name='CursorLoader']/method[@name='loadInBackground']" />
-->
<remove-node path="/api/package[@name='com.baidu.mapapi.cloud']/class[string-length (@name) = 1]" />
<remove-node path="/api/package[@name='com.baidu.mapapi.search']/class[@name = 'PlaceCaterActivity']" />
<remove-node path="/api/package[@name='com.baidu.vi']/class[@name = 'VDeviceAPI']" />
<remove-node path="/api/package[@name='com.baidu.platform.comapi.map']/class[@name = 'd']" />
<remove-node path="/api/package[@name='com.baidu.platform.comapi.map']/class[@name = 'y']" /> <attr path="/api/package[@name='com.baidu.platform.comapi.map']/class[@name='v']" name="obfuscated">false</attr>
<attr path="/api/package[@name='com.baidu.platform.comapi.map']/class[@name='v']" name="managedName">Overlay</attr> <attr path="/api/package[@name='com.baidu.platform.comapi.map']/class[@name='A']" name="obfuscated">false</attr>
<attr path="/api/package[@name='com.baidu.platform.comapi.map']/class[@name='A']" name="managedName">TransitOverlay</attr>
<attr path="/api/package[@name='com.baidu.platform.comapi.map']/class[@name='A']" name="extends">java.lang.Object</attr> <attr path="/api/package[@name='com.baidu.platform.comjni.permissioncheck']" name="managedName">Com.Baidu.Platform.Comjni._PermissionCheck</attr>
</metadata>

同样,在Additions增加以上Fx.cs文件及代码

具体代码请见
http://code.taobao.org/p/monodriodbindings/src/
用svn导出
使用方法见我之前的文章
Mono For Android中完美使用百度地图SDK(v2.1.2&v2.1.3)

转载自http://mdev.iquan.net/mono-for-android-baidumap-binding/

微信扫一扫

支付宝扫一扫

本文网址:https://www.zhankr.net/141550.html

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:7,142
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:4,476
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:567 阅读:5,291
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:5,163
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:6,335
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:3,875