鹤山市公安局地铁分局巡逻防控APP解决方案全解.docx
《鹤山市公安局地铁分局巡逻防控APP解决方案全解.docx》由会员分享,可在线阅读,更多相关《鹤山市公安局地铁分局巡逻防控APP解决方案全解.docx(20页珍藏版)》请在冰豆网上搜索。
鹤山市公安局地铁分局巡逻防控APP解决方案全解
鹤山市公安局地铁分局
巡逻防控APP解决方案
2015年12月29日
修订记录
版本
章节名称
修订内容
修订日期
修订人
批准人
V1.0
全部
初稿
12-29
张三
1、背景
1.1建设原则
●安全性
移动应用应能提供有效的安全保障,具备完善的身份认证、访问控制、数据加密等安全保密机制,保证网络系统、主机系统和应用系统的安全,为移动应用提供完整的安全机制。
●先进性
在保证方案可靠性和技术成熟性的基础上,采用先进的系统体系结构、先进的系统软硬件平台、先进的应用软件设计思想和实现技术,确保本系统起点高、技术领先,为移动办公的实现提供最佳的技术平台支持。
●易操作性
移动应用系统应保证在功能和人机交互界面上贴近用户日常使用习惯,手机模块和功能按钮的说明应定义清晰、命名直观,达到简单易用、提高工作效率的目的。
●可靠扩充性
采用符合国际标准和适应国际发展潮流的移动化信息系统技术、可平滑扩展的系统硬件体系结构、开放式的系统软件平台、模块化的应用软件结构,确保系统在处理能力和业务功能方面可灵活扩充,并可与其它系统进行无缝集成。
1.2建设目标
为了提升佛山市公安局地铁分局信息化管理水平,提高各级部门的办公效率,加强单位内部的执行力、凝聚力、自上而下高度重视信息化系统的建设工作,实现对地铁内巡逻防控执勤人员的警力分布查询、收发图片文件、工作安排、公告通知等日常办公的统一管理,在当前信息化管理平台的基础上,引入移动信息化技术,为相关执勤人员提供手机移动办公服务,实现随时、随地办公,以便推动各级部门的精确化、高效化管理。
2、方案概述
为进一步完善我市地铁系统治安防控体系,不断提升新形势下巡逻防控水平,全面推进社会治安持续稳定,为实现跨越式发展和长治久安创造和谐稳定的社会环境,结合我市工作实际,制定如下实施方案。
2.1指导思想
以各级关于加强社会管理工作创新的指示精神为指导,坚持“打防结合、预防为主,专群结合、依靠群众”的方针和“属地管辖、统一指挥、快速反应”的原则,以整合治安防控力量和职能为重点,以落实防控工作责任制为内容,以信息化手段为支撑,健全和完善巡逻防控网格体系,建立起“快速发现问题、快速处置问题、有效解决问题”的工作架构和运行机制,努力实现发案少、秩序好、社会稳定、群众满意的工作目标,为我市经济社会跨越式发展和人民安全出行提供良好的交通环境。
2.2工作目标
通过构建“网格化”防控体系,形成“网格化布控,精细化防控,信息化支撑,社会化参与”的防控工作新机制,实现对人、地、物、事、组织等各类工作对象底数清、情况明、责任到位、管理有效,对辖区实施无缝隙、精细化管理,全面提升社会治安整体防控能力和加速处置能力,坚决防止发生重大政治性事件,重大非法聚集事件、大规模群体性事件、严重暴力恐怖事件和恶性刑事犯罪案件。
2.3工作机制
一是要建立防控任务精细化管理机制。
以网格为单位,围绕防控点位、线路、部位和重点人、重点矛盾纠纷以及发现和处理等巡逻防控任务,逐人、逐地、逐时段明确防控责任人员和主要措施。
通过落实防控实名制管理措施,统一防控标准、工作流程、落实防控责任,确保各种防控力量人员到位、标准到位、措施到位、责任到位。
二是要建立多种形式互动的巡逻机制。
既要坚持24小时的常态化巡逻,又要坚持时段性的加强性巡逻;既要坚持常规的地铁内巡逻,又要坚持犯罪高峰期重点区域、时段的针对性巡逻。
三是要建立应急响应机制。
要根据治安状况和网格、巡区划分,确定必巡线和必到点。
实行弹性或错时工作制,真正把巡控力量摆在地铁内,投入到案件高发、防范薄弱、群众需要时段。
要按照5分钟内巡控力量到达本级网格、巡区内任何位置的要求,强化巡逻防控中心应急处突能力训练,确保对巡逻中发现的各类突发事件现场快速处置,对巡逻网络指挥中心调度及有关部门通报的突发性事件快速反应、及时妥善处置。
3、移动端总体技术方案
2.2Android端
2.2.1架构图直观
下面这张图展示了Android系统的主要组成部分:
图1、Android系统架构(来源于:
androidsdk)
可以很明显看出,Android系统架构由5部分组成,分别是:
LinuxKernel、AndroidRuntime、Libraries、ApplicationFramework、Applications。
第二部分将详细介绍这5个部分。
2.2.2架构详解
现在我们拿起手术刀来剖析各个部分。
其实这部分SDK文档已经帮我们做得很好了,我们要做的就是拿来主义,然后再加上自己理解。
下面自底向上分析各层。
2.2.2.1LinuxKernel
Android基于Linux2.6提供核心系统服务,例如:
安全、内存管理、进程管理、网络堆栈、驱动模型。
LinuxKernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务。
如果你学过计算机网络知道OSI/RM,就会知道分层的好处就是使用下层提供的服务而为上层提供统一的服务,屏蔽本层及以下层的差异,当本层及以下层发生了变化不会影响到上层。
也就是说各层各司其职,各层提供固定的SAP(ServiceAccessPoint),专业点可以说是高内聚、低耦合。
如果你只是做应用开发,就不需要深入了解LinuxKernel层。
2.2.2.2AndroidRuntime
Android包含一个核心库的集合,提供大部分在Java编程语言核心类库中可用的功能。
每一个Android应用程序是Dalvik虚拟机中的实例,运行在他们自己的进程中。
Dalvik虚拟机设计成,在一个设备可以高效地运行多个虚拟机。
Dalvik虚拟机可执行文件格式是.dex,dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。
大多数虚拟机包括JVM都是基于栈的,而Dalvik虚拟机则是基于寄存器的。
两种架构各有优劣,一般而言,基于栈的机器需要更多指令,而基于寄存器的机器指令更大。
dx是一套工具,可以將Java.class转换成.dex格式。
一个dex文件通常会有多个.class。
由于dex有時必须进行最佳化,会使文件大小增加1-4倍,以ODEX结尾。
Dalvik虚拟机依赖于Linux内核提供基本功能,如线程和底层内存管理。
2.2.2.3Libraries
Android包含一个C/C++库的集合,供Android系统的各个组件使用。
这些功能通过Android的应用程序框架(applicationframework)暴露给开发者。
下面列出一些核心库:
∙系统C库——标准C系统库(libc)的BSD衍生,调整为基于嵌入式Linux设备
∙媒体库——基于PacketVideo的OpenCORE。
这些库支持播放和录制许多流行的音频和视频格式,以及静态图像文件,包括MPEG4、H.264、MP3、AAC、AMR、JPG、PNG
∙界面管理——管理访问显示子系统和无缝组合多个应用程序的二维和三维图形层
∙LibWebCore——新式的Web浏览器引擎,驱动Android浏览器和内嵌的web视图
∙SGL——基本的2D图形引擎
∙3D库——基于OpenGLES1.0APIs的实现。
库使用硬件3D加速或包含高度优化的3D软件光栅
∙FreeType——位图和矢量字体渲染
∙SQLite——所有应用程序都可以使用的强大而轻量级的关系数据库引擎
2.2.2.4ApplicationFramework
通过提供开放的开发平台,Android使开发者能够编制极其丰富和新颖的应用程序。
开发者可以自由地利用设备硬件优势、访问位置信息、运行后台服务、设置闹钟、向状态栏添加通知等等,很多很多。
开发者可以完全使用核心应用程序所使用的框架APIs。
应用程序的体系结构旨在简化组件的重用,任何应用程序都能发布他的功能且任何其他应用程序可以使用这些功能(需要服从框架执行的安全限制)。
这一机制允许用户替换组件。
所有的应用程序其实是一组服务和系统,包括:
∙视图(View)——丰富的、可扩展的视图集合,可用于构建一个应用程序。
包括包括列表、网格、文本框、按钮,甚至是内嵌的网页浏览器
∙内容提供者(ContentProviders)——使应用程序能访问其他应用程序(如通讯录)的数据,或共享自己的数据
∙资源管理器(ResourceManager)——提供访问非代码资源,如本地化字符串、图形和布局文件
∙通知管理器(NotificationManager)——使所有的应用程序能够在状态栏显示自定义警告
∙活动管理器(ActivityManager)——管理应用程序生命周期,提供通用的导航回退功能
2.2.2.5Applications
Android装配一个核心应用程序集合,包括电子邮件客户端、SMS程序、日历、地图、浏览器、联系人和其他设置。
所有应用程序都是用Java编程语言写的。
更加丰富的应用程序有待我们去开发!
2.3IOS端
2.3.1IOS主要框架介绍
框架是一个目录,这个目录包含了共享库,访问共享库里代码的头文件,和其它的图片和声音的资源文件。
一个共享库定义的方法或函数可以被应用程序调用。
IOS提供了很多你可以在应用程序里调用的框架。
要使用一个框架,需要将它添加到你的项目中,你的项目才可以使用它。
许多应用程序都使用了如Foundation、UIKit、和CoreGraphics这些框架。
根据你为应用程序选择的模版,相关的框架就已经被自动引入了。
如果默认加入的框架不能满足你的应用程序的需求,你也可以加入需要的框架。
看看HelloWorld.xcodeproj项目里都包含了哪些框架(注:
HelloWorld.xcodeproj是《YourFirstiOSApp tutorial 》这篇教程里的一个项目)
1.在XCode里打开HelloWorld.xcodeproj项目(如果还没有打开)
2.在projectnavigator窗口里点击,点击Frameworks目录前面的三角形图标。
你会看到:
UIKit.framework,Foundation.framework,和CoreGraphics.framework
3.点击任意一个framework前面的三角,然后再点击Headers前面的三角,可以看到框架里的头文件。
每个框架对应IOS系统里的一层,每层建立在它下面层的上面。
应该尽量使用上层的框架来代替下面的框架。
更高层次的框架是对底层框架基于对象的抽象。
iOS应用程序基于Foundation和UIKit框架
在你开发程序时,主要使用框架就是Foundation和UIKit,因为它们包含了你需要的大部分东西。
Foundation框架为所有的应用程序提供基本系统服务
你的应用程序,UIKit和其它的框架都是建立在Foundation框架上面的。
Foundation框架是用Object-C对CoreFoundation框架里许多特性的封装。
使用Foundation可以:
创建和管理集合,比如数组和字典
访问存储在应用程序里的图片和其它资源
创建和管理字符串
提交和接收通知
创建日期和时间对象
自动发现IP网络上的设备
操作URL流
执行异步代码
你已经在《YourFirstiOSApp》里使用到了Foundation框架。
比如,你使用一个NSString类的实例存储用户输入的userName。
你还使用了Foundation框架的initWithFormat方法创建了一个字符串。
UIKit框架提供创建基于触摸用户界面的类
所有的iOS应用程序都基于UIKit,你不能是应用程序脱离这个框架。
UIKit提供了在屏幕上绘制的机制,捕获事件,和创建通用用户界面元素。
UIKit也通过管理显示在屏幕上的组件来组织复杂的项目。
使用UIKit可以:
构建和管理你的用户界面
捕获触摸和基于移动的事件
呈现文字和web内容
优化你的多任务程序
创建定制的用户界面元素
在《YouFirstiOSAppTutorial》里,你也使用到了UIKit。
当你仔细查看程序是怎么运行起来的时候,你会看到UIApplicationMain函数创建一个UIApplication类的实例,这个实例会捕获进来的用户事件。
你实现UITextFieldDelegate协议,然后在用户按下Done时隐藏键盘。
实际上,你是在使用UIKit创建用户界面上的UITextField,UILabel,和UIButton类。
你需要知道的其它重要的框架
CoreData,CoreGraphics,CoreAnimation,和OpenGLES框架都是高级的技术。
所以这些框架对于你开发应用程序也是很重要的,它们都需要时间去学习和掌握。
CoreData框架管着理应用程序数据模型
CoreData提供对象的管理,使用CoreData,你可以创建模型对象,并管理这些对象。
你管理这这些对象间的联系并修改数据。
CoreData提供的内建SQLlite技术可以高效的管理数据。
使用CoreData可以:
在库里存储和接收对象
提供基本的undo/redo
自动验证属性值
过滤、分组和优化内存中的数据
用[NSFetchedResultsController]管理表视图中的结果
支持基于文档的应用程序
CoreGraphics框架帮助你创建图形
高质量的图形对于所有的iOS应用程序都是很重要的。
在iOS中最简单且最快捷的创建图形的方式是使用UIKit框架提供的基于预渲染图形的视图和控件,然后让UIKit和iOS完成绘制。
但是当你需要创建复杂的图形时,CoreGraphics则提供了更底层的库来帮助你。
使用CoreGraphics可以:
创建基于路径的绘图
抗锯齿渲染
添加梯度、图片和颜色
Usecoordinate-spacetransformations.
创建、显示和分析PDF文档
CoreAnimation允许你创建高级的动画和虚拟效果
UIKit提供建立在CoreAnimation之上的动画。
如果你需要比UIKit能力更高级的功能,可以直接使用CoreAnimation。
CoreAnimation接口包含在QuartzCore框架里。
使用CoreAnimation可以创建嵌套的对象,并且可以对它们操作、旋转、缩放和转换。
使用Coreanimation,你可以创建动态的用户界面而不用使用更底层的图形API,如OpenGLES。
使用CoreAnimation可以:
创建定制动画
添加定时函数和图形
支持帧动画
Specifygraphicallayoutconstraints.
Groupmultiple-layerchangesintoanatomicupdate.
OpenGLES框架提供2D和3D绘图工具
OpenGLES支持2D和3D绘图,Apple的OpenGLES实现通过硬件提供了高速的全屏游戏式的应用程序。
使用OpenGLES可以:
创建2D和3D图形
创建更复杂的图形,比如数据虚拟化、模拟飞行,或者视频游戏
访问底层图形设备
根据需要向项目中添加其它框架
还有许多框架可以添加到你的程序里。
当你决定使用一个框架但项目里却没有引入这个框架时,你就需要将它加入到你的项目里。
将别的框架添加到工程里
1打开工程
2点击项目名,显示projecteditor
3在TARGETS列表中选中要添加框架的工程
4点击projecteditor顶部的BuildPhases
5点击LinkBinaryWithLibraries前面的三角形打开这个分组
6通过点击添加(+)来添加一个框架
7在列表中选择一个框架,然后点击Add按钮
2.3.2IOS证书申请
IOS证书申请需要2个月的时间
4、移动端软件概要设计
3.1概述
“网格化”巡逻防控工作主要任务是:
(1).预防、制止违法犯罪行为,维护辖区治安秩序;
(2).发现、堵控、查缉违法犯罪嫌疑人和负案在逃人员;
(3).巡查辖区安全防范情况,检查、消除安全隐患;
(4).接受群众报警和公安机关指挥中心,先期处置案件、事件、事故、纠纷等各类警情;
(5).收集治安信息和社情民意;
(6).对巡区内重点目标、要害部位周边进行巡逻控制,保护公共财产和群众生命财产的安全;
(7).根据公安指挥中心的指令,堵截和抓捕违法犯罪分子;
(8).对重大治安和灾害事故进行先期处置,对群体性事件进行先期处置,掌握现场情况;
(9).对打、砸、抢、烧、爆炸、枪击、冲撞等暴力袭击活动进行先期处置;
(10).救助人身财产受到侵犯或者处于其他危险情形的公民,帮助遇到困难的老人、儿童、残疾人等;对遇危群众进行紧急救助;
(11).上级赋予的其他任务。
3.2登录
服务器系统根据警员号码为每个地铁巡逻防控执勤人员分配登录权限并初始化密码,警员将自己的警员号码作为登录账号进行登录,登录成功后必须签到才能进行下一步操作。
3.3用户签到
警员进入签到界面,登记位置信息,然后可选择进入修改密码界面、修改个人信息界面或者主界面。
3.4地图定位
2.3.1三大手机地图软件对比分析
●谷歌地图
googlemaps经过多年发展,已经成一个耳熟能详的地图产品。
谷歌手机地图专为手机设计,可以像在台式机中使用Google地图一样,您也可以使用谷歌手机地图中的地图图像和周边地理信息探索您身边的世界。
功能包括地址和本地商户搜索、卫星图像和街景视图、公交线路和驾车路线、我的位置(可以使用此功能确定您在地图上的位置)以及谷歌纵横。
通过地图+搜索+分享的产品设计思想,将移动互联网改变生活的产品理念发挥到极致,依托google地图和google卫星强大地图数据,为用户提供更多更好的地图与搜索服务。
●XX地图
一直以来,XX的移动互联网战略即是“将XX从电脑搬到手机上”,XX手机地图也秉承了这一原则,通过创新的平台移植技术,将PC平台上的XX地图绝大多数服务应用到了移动终端,在保持用户体验一致性的同时,提供了最全面、便捷、实用的信息查询服务。
随着以3G技术为代表的移动互联网的爆发,已成为PC平台网民信息获取第一通道的XX,通过整合已有强势技术和资源,以自己的核心搜索技术为中心向外扩展,依托XX手机地图,给用户提供更加便捷方便的移动互联网体验。
●高德地图
“迷你地图”是高德软件有限公司自主研发的手机LBS客户端软件,它提供诸如兴趣点搜索、出行路线规划、GPS或手机基站定位、实时路况等丰富的功能,是广大手机用户必备的随身生活软件。
“迷你地图”软件产品定位已经超越地图功能本身,提供更多更加丰富的生活配套服务应用。
诸如机票预订,天气预报等功能,均是迷你地图吸引用户的特色服务。
2.3.2地图选型
根据以上对比,我们选择XX地图作为我们的地图模块。
2.3.3实时报警
当发生以下情况时,现场执勤人员可通过一键报警按钮发送当前定位,请求附近巡逻防控人员迅速赶往定位地点协助处理。
(1).发现、堵控、查缉违法犯罪嫌疑人和负案在逃人员;
(2).接受群众报警和公安机关指挥中心,在现场处置案件、事件、事故、纠纷等各类警情需要协助;
(3).根据公安指挥中心的指令,堵截和抓捕违法犯罪分子;
(4).对打、砸、抢、烧、爆炸、枪击、冲撞等暴力袭击活动进行现场处置;
(5).救助人身财产受到侵犯或者处于其他危险情形的公民,帮助遇到困难的老人、儿童、残疾人等;对遇危群众进行紧急救助;
3.5执勤状态以及人力分布图
后台监控人员通过服务器对各巡逻防控人员的定位信息分析统计,可查看到在线情况以及人力分布情况,根据实际情况,可重新调度人力资源。
3.6消息推送
APP端定时连接到服务器,拉取服务器发布的最新突发消息。
3.7上传图片、文件
遇到突发事件时,警员可直接通过手机上传事件现场图片或文件。
3.7下载图片、文件
APP端定时连接到服务器,拉取服务器发布的最新通告消息。
包括以下内容:
(1).最新的巡控任务;
(2).培训计划;
(3).发布的最新安全隐患点;
(4).节假日工作调度安排;
(5).由于客流高峰,上级制定的分流计划;
(6).其他公告消息;
5、报价
6、项目人员安排
姓名
年龄
学历
资质
职务
拟在本项目任职
参加过的类似项目
张盛亨
31
本科
软件工程师
软件工程师
软件开发
从业经验8年
7、进度计划
模块名称
子模块
功能名称
功能说明
开始时间
完成时间
设计与确认
2015-8-17
2015-8-29
需求分析
2015-8-17
2015-8-19
方案确认
2015-8-22
2015-8-22
UI设计
2015-8-23
2015-8-24
安卓端
首页
2015-8-25
2015-8-26
登录
2015-8-25
2015-8-25
签到
2015-8-26
2015-8-26
消息推送
2015-8-26
2015-8-30
消息推送
2015-8-26
2015-8-26
未读消息推送
2015-8-29
2015-8-29
已读消息推送
2015-8-29
2015-8-29
主页
2015-8-26
2015-8-31
密码修改
2015-8-26
2015-8-26
个人信息
2015-8-29
2015-8-29
个人信息修改
已读通告消息
2015-8-30
2015-8-30
未读通告消息
2015-8-30
2015-8-30
通告信息搜索
下载通告附件
通告里的文件
2015-8-30
2015-8-30
一键报警
2015-8-31
2015-8-31
地图定位
2015-8-31
2015-82
发起报警
2015-8-31
2015-9-1
填写发起报警信息
2015-8-31
2015-8-31
定位
拍照
2015-9-1
2015-9-1
上传图片
2015-9-2
2015-9-2
IOS端