基于Andro平台的软件开发若干关键技术研究(笔记)

基于Android平台的软件开发若干个关键技术研究

摘要:随着移动智能终端的飞速发展和广泛普及,移动GIS应用正迅速迅速成长,并且成为最有发展前景的热点之一。作为移动GIS应用的分支,基于Androi平台的软件开发得到了长足的发展。本编文章是《基于Andro平台的软件开发若干个关键技术研究》的笔记。

目录

  • 首先针对Android系统架构做了较为详尽的介绍
  • 然后分析了Android平台软件开发的具体流程
  • 最后深入探讨了Android平台开发中涉及的二次开发、数据存储、LBS服务等关键技术

关键字

移动GIS

Andriod

二次开发

LBS服务

数据存储

0、引言

移动式操作系统较传统的移动终端的优点:

  • 搭载开源应用平台
  • 具备高速计算能力
  • 实现多功能人机交互应用

1、Android系统架构

  • Android属于移动式操作系统,是一款开源的基于Linux内核的开放式、免费版的嵌入式开发平台
  • 其系统架构可划分为4层结构:

操作系统层(Linux内核)

中间件层(各种库和运行环境)

应用程序框架层

应用程序层

  • Android系统架构的4层结构之间处于良好的隔离状态,这种结构可以保证软件开发人员专注于应用需求。

2、Android软件开发流程

2.1 Android 平台环境搭建

基于Android平台的应用程序开发主要以Java语言作为主体(使用***C/C++语言属于特定需求下的要求,如图像加密算法、视频音频播放器、3D地图渲染引擎***等),这与Android系统基于Linux内核开发关系很大。Android平台具有可移植性、开源性、开放性和灵活性强等特点。其开发环境所包含的开发工具和软件开发包种类繁多。主要组成部分有:

在这里插入图片描述

在搭建Android平台开发环境的过程中,还涉及PC操作系统环境变量的设置(比如在系统变量中添加JAVA_HOME值、CLASSPATH值和Path值;在用户变量中添加PATH值等)。搭建完之后,应用程序开发人员就可以进行基于Android平台的软件开发工作。

在这里插入图片描述

2.2Android启动流程

Android系统启动——>

Init进程启动

第一个进程,载入内存。初始化所有设备驱动程序和数据结构。完成进程引导;初始化脚本文件init.rc和init.xxx.rc。启动服务机制servicemanager、zygote)

Native服务启动

建立Android运行空间。建立Java Runtime;建立虚拟机。运行ZygoteInit.main()函数;登记xx端口,进入Zygote服务框架;建立Socket通讯,接受ActivityManagerService的请求、Fork应用程序等

System Server Android服务启动

fork进程SystemServer,建立服务循环框架;建立init2线程;建立New Service和AddService等服务

Home启动

使用xxx_systemReady()通知各个服务;回调ActivityManagerService_systemReady等函数。启动HomeActivity

——>加载应用程序

3、关键技术分析

基于Android平台进行移动GIS应用软件开发所用到的关键技术设计很多方面

3.1二次开发技术

移动GIS的二次开发平台主要有以下几类:ESRI公司提供的ArcGIS for iOS/Android/Windows Phone开发平台、PB MapInfor 公司提供的MapInfor MapX mobile系列、超图公司推出的SuperMap iMobile 开发平台等等,上述移动GIS二次开发平台都面向嵌入式操作系统Android应用。

其主要围绕来那个方面进行:

  • 面向底层组建式开发技术

主要依托JNI机制实现,通过JNI机制的作用,利用谷歌公司推出的Android NDK二次开发工具进行技术上的具体实现。

  • 面向应用层开发技术

是当前Android终端应用开发的主流,这是因其周期短、技术成熟等优势所决定的,这类技术开发主要依托于Framework开发框架进行。谷歌公司提供了开源的Android Framework 开发框架。借助于Java通用类库,并结合Android特有类库,技术人员便能基于Android平台进行面向功能需求的应用程序二次开发。

面对的主要问题

对应权限的获取

构建Android UI界面

资源文件的取得及使用

3.2 数据存储技术

Android平台的数据存储方式主要分为5种:
在这里插入图片描述

在上述5类数据存储技术中,内部存储涉及的3类技术主要应用Andriod终端客户端应用,主要体现于终端内置存储器和扩展存储卡中;外部存储涉及的二类技术主要应用于移动GIS的分布式存储和云端存储机制。

3.3 LBS服务技术

基于位置服务技术,即Location Based Service 技术,其技术原理是通过获取移动终端的位置信息,借助于无线通信网络,依托于具备海量空间数据的GIS平台,为移动终端提供基于位置的海量信息服务和应用。在Android终端上实现LBS服务所涉及到的关键技术有很多,在这里主要谈论一下几类 ,LBS服务部分关键技术如图所示:

在这里插入图片描述

结束语

移动GIS的快速发展为便携式智能终端的应用带来了前所未有的发展机遇,层出不穷的移动GIS应用为人们的日常生活带来了极大的便利,面向移动终端的应用开发将迎来一个爆炸式的发展阶段。

基于Android平台的移动终端应用程序的开发是一项复杂的工程,它涉及Android平台的体系架构分析、应用需求分析、关键技术实现等难题。

猜你喜欢

转载自blog.csdn.net/qq_43656353/article/details/105443590