1, 基于百度地图API开发,用于实现地理位置选取,发送,展示,与消息编辑界面切入点有两处,代码如下:
case R.id.menuitem_location_share: // Begin : add by qiang.liu 2013-12-9 for multi send from contact if (ensureMultiRecipient()) { Toast.makeText(getApplicationContext(), R.string.confirm_send_multi_audio, Toast.LENGTH_SHORT).show(); return; } // End : add by qiang.liu 2013-12-9 for multi send from contact //Begin: add by liuxue 2013-11-26 if (mNetWorkStatus) { if (!rcsIsConnected()) { Toast.makeText(ComposeMessageActivity.this, strNetworkUnavailable, Toast.LENGTH_SHORT).show(); return; } } //End: add by liuxue 2013-11-26 if (isRecipientsEditorVisible() && TextUtils.isEmpty(mRecipientsEditor.getText())) { showToastNoContacts(); return; } //yexiaoyan 20131224 change begin if(!isRcs){ Toast.makeText(getApplicationContext(), R.string.msg_tost_notRcs, Toast.LENGTH_SHORT).show(); return; } //yexiaoyan 20131224 change end // zhangmeie 20131224 change begin Intent intent = new Intent(ComposeMessageActivity.this,LocationActivity.class); intent.putExtra(LocationActivity.MESSAGE_TYPE,LocationActivity.LOCATION_EDITOR); startActivityForResult(intent, REQUEST_CODE_LOCATION_MESSAGE); |
获得经,纬度,地理位置后返回到消息编辑界面切入点如下:
caseREQUEST_CODE_LOCATION_MESSAGE: { if (sendByRCS && mConversation != null && aService != null && ensureCapabilityRcs(formatNumber(mConversation.getRecipients().get(0).getNumber())) && rcsIsConnected()) { if (mNetWorkStatus) { Bundle bundle = (Bundle)data.getExtras(); double lat =bundle.getDouble(LocationActivity.MESSAGE_LAT); double lng =bundle.getDouble(LocationActivity.MESSAGE_LNG); String mAddress =bundle.getString(LocationActivity.MESSAGE_ADDRESS); try { aService.sendLocation(getSingleRecipientNumber(), lat,lng, mAddress, ""); } catch (Exception ex) { ex.printStackTrace(); }
mConversation.ensureThreadId(); onMessageSent(); } else { String message = getString(R.string.network_not_ready); Toast.makeText(ComposeMessageActivity.this, message, Toast.LENGTH_SHORT) .show(); } } break; |
2, 主要类文件有:
com.android.mms.ui.LocationActivity.java
com.android.mms.ui.LocationMapView.java
com.android.mms.ui.MyBaiduLotion.java
LocationActivity是地理位置选择或详情,若处于选择状态,地图中心位置为手机持有者地理位置,可拖动地图选择目标位置,点击发送按钮,发送位置给接收端;若处于详情状态,中心位置通过选择位置消息经纬度位置,拖动不可再选择位置,发送按钮不可见.
LocationMapView继承百度地图MapView类,新增OnMapViewChangedListener借口,拖动地图调用重写onTouchEvent方法触发OnMapViewChangedListener监听,在 LocationActivity类实现的OnMapViewChangedListener中,获得经纬度,及时更新选中地理位置
MyBaiduLotion主要是通过经纬度逆解析出地理位置
3, 然后必须在配置文件注册百度服务
<service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote"> <intent-filter> <actionandroid:name="com.baidu.location.service_v3.3" > </action> </intent-filter> </service>
|
4, 独立的百度地图 privatestaticfinal String key = "xxxxxxxxxxxxxxxxxxxx";
5,关于jar与so,在Mms/src/libs文件夹下,导入baidumapapi_v2_3_1.jar,locSDK_3.3.jar,armeabi文件夹(包括libBaiduMapSDK_v2_3_1.so和liblocSDK3.so),若要在源码里面编译必须在Mms/Android.mk加入jar配置信息
….................... LOCAL_STATIC_JAVA_LIBRARIES += liblocsdk
LOCAL_STATIC_JAVA_LIBRARIES += liblocbaidusdk …........................ include $(CLEAR_VARS)
................ LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := liblocsdk:libs/locSDK_3.3.jar
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := liblocbaidusdk:libs/baidumapapi_v2_3_1.jar
.................. include $(BUILD_MULTI_PREBUILT) …................... |
注意若要在源码编译必须在Mms/proguard.flags文件中导入百度架包,如下:
-keep class com.baidu.** { *;
}
-keep class vi.com.gdi.bgl.android.**{
*;
} |
相关推荐
Vue + Vite + iClient3D for Cesium 实现限高分析
CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
数据集格式:VOC格式+YOLO格式 压缩包内含:3个文件夹,分别存储图片、xml、txt文件 JPEGImages文件夹中jpg图片总计:1551 Annotations文件夹中xml文件总计:1551 labels文件夹中txt文件总计:1551 标签种类数:8 标签名称:["bark","default","eat","lyingDown","lyingProne","sit","sleep","stand"] 每个标签的框数: bark 框数 = 168 default 框数 = 211 eat 框数 = 208 lyingDown 框数 = 240 lyingProne 框数 = 148 sit 框数 = 154 sleep 框数 = 253 stand 框数 = 231 总框数:1613 图片清晰度(分辨率:像素):清晰 图片是否增强:否 标签形状:矩形框,用于目标检测识别 重要说明:暂无 特别声明:本数据集不对训练的模型或者权重文件精度作任何保证,数据集只提供准确且合理标注
Arista Networks:Arista 7000系列交换机操作与维护.docx
CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
CentOS7升级openssh9.9最新生产可用shell自动升级
深圳混泥土搅拌站环境安全管理制度
整体风格与设计理念 整体设计风格简约而不失优雅,采用了简洁的线条元素作为主要装饰,营造出一种现代、专业的视觉感受。配色上以柔和的色调为主,搭配少量鲜明的强调色,既保证了视觉上的舒适感,又能突出重点内容,使整个演示文稿在视觉上具有较强的吸引力和辨识度。 页面布局与内容结构 封面:封面设计简洁大方,“MORIMOTO” 和 “SENYAN” 字样增添了独特的标识性,可根据实际需求替换为汇报人姓名或公司名称等信息,让演示文稿从一开始就展现出专业与个性。 目录页:清晰列出 “工作内容回顾”“工作难点分析”“市场状况概述”“工作目标计划” 四个主要板块,方便观众快速了解演示文稿的整体架构和主要内容,为后续的详细展示做好铺垫。 工作内容回顾页(PART.01):提供了充足的空间用于详细阐述工作内容,可通过复制粘贴文本并选择只保留文字的方式,方便快捷地填充内容,建议使用微软雅黑字体以保证整体风格的一致性。无论是列举日常工作任务、项目执行细节还是工作成果总结,都能清晰呈现,让观众对工作内容有全面而深入的了解。 工作难点分析页(PART.02):这部分页面设计注重实用性,文本框可自由拉伸,方便根据工作难
本介质包包含离线部署openEBS/lvm-localpv 所需要的1.6.0版本镜像以及charts包,以及运行部署的脚本。
(1)注册登录功能:用户可以填写基本信息注册成为校园通讯录系统的会员,已经注册的会员可以输入正确的用户名以及密码来登录系统。 (2)个人管理功能:登录系统的会员可以对个人信息进行修改操作,并可以对自己的登录密码进行修改操作。 (3)心情管理功能:可发表新的心情信息,并可对已经发表的心情进行列表查看,并选择指定的心情进行修改以及删除的操作。同时用户还可以查看到所有的好友心情信息。 (4)日志管理功能:可发表新的个人日志,并可对已经发表的日志进行列表查看,并选择指定的日志进行修改以及删除的操作。同时用户还可以查看所有好友的日志信息,并可以对指定的日志进行转载以及分享的操作。 (5)相册管理功能:用户可以设置管理自己的相册,并可以对指定的相册进行上传照片的操作,所有已经删除的照片信息都可以进行修改以及删除的操作,并可以设置为相册的封面。同时用户还可以查看所有好友的相册信息。 (6)好友管理功能:用户可以输入指定的条件来查询其他的用户并进行列表显示,对于指定的用户可以进行详细信息查看以及添加好友的操作。可以查看到其他用户要添加自己为好友的申请记录并进行处理,同时还可以对已经...
学生选排课系统可以分为登录、排课和选课3个子系统。登录子系统区分排课者(也即系统的管理者)、教师和学生这三者的不同身份,给出不同的权限,在页面中根据身份判断其相应具有的功能来使用这套系统。排课子系统主要供排课者使用,排课者可以在这里进行一切与排课有关的活动。选课系统主要供学生选课使用,在这里可以进行与选课有关的活动;教师可在教师反馈系统中对排课者提出反馈意见,供排课者在排课时可参考使用。 环境说明: 开发语言:Java,jsp JDK版本:JDK1.8 数据库:mysql 5.7 数据库工具:Navicat11 开发软件:eclipse/idea 部署容器:tomcat
Linux面试试题.docx
CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
Arista Networks:Arista网络流量分析与优化.docx
AIX (IBM):AIXJava开发环境搭建.docx
CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
IP数据包解析实验报告计算机网络课程设计.doc