信息系统集成项目经理继续教育课程11学习笔记.docx
- 文档编号:4470974
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:26
- 大小:51.55KB
信息系统集成项目经理继续教育课程11学习笔记.docx
《信息系统集成项目经理继续教育课程11学习笔记.docx》由会员分享,可在线阅读,更多相关《信息系统集成项目经理继续教育课程11学习笔记.docx(26页珍藏版)》请在冰豆网上搜索。
信息系统集成项目经理继续教育课程11学习笔记
Android应用实践开发第十六节ContentProvider
(一)
什么是ContentProvider
由于android是基于Linux系统,每个用户有比较的进程,这些进程之间是不能互相访问的,如果有需要在各个用户之间共享数据,需要使用ContentProvider
Android平台共享数据技术,能够实现不同的应用之间数据的共享。
Android数据存储可以是文件系统,数据库。
CP可以提供一个统一的接口使上层调用者不用关心数据存储的细节问题。
Activity
ContentProvider
FileDBXML
ContentURI
URI通用资源标识符,通过它可以指定一个CP
在android的ContentURI就是android平台的内容资源定位符号
Content:
//com.example.transportationprovider/trains/122
ABCD
A标准前缀表明这个数据被一个内容提供器所控制,不会被修改
BURI的权限部分,标识这个内容提供器对于第三方应用程序,这应该是一个全称类民以确保唯一性,权限在
name=”DataProvider” Android: authorities=”com.example.transportationprovider” > B(可以采用a.b.c形式的声明) C数据库的表名或者文件名,索引为0。 用来判断请求数据类型的路径,这可以是0或多个段长,这个分段可以没有 D字段,索引为1。 被请求的特定记录的ID,如果没有,这段可以省略,类似于HTTPURI的logo.gif 1、ContactsContract.Contacts.DISPLAY_NAME是指什么? A公司名字 B联系人名字 C组织名称 D职位名称 Android应用实践开发第十七节ContentProvider (二)上 内置的ContentURI Android平台提供了丰富的ContentURI,使用这些ContentURI获取系统资源: 有关联系人(姓名、电话、Email)、音频文件、视频文件、电话记录和短信记录 权限 访问联系人URI需要开通权限 - android: name=”android.permission.READ_CONTACTS”/>读取 - android: name=”android.permission.WRITE_CONTACTS”/>写入 ContactsContact.Contacts._ID联系人ID ContactsContact.Contacts.DISPLAY_NAME联系人名字 managedQuery方法: (查找全部联系人) CursormanagedQuery(Uriuri,String[]projection,StringSelection,String[]selectionArgs,StringsortOrder); 第二个参数projection是查询字段名的string数组,如果这个参数制定为null,则查询出所有字段,第三个参数Selection是查询条件,第四个参数是查询条件中的参数,第五个参数sortOrder是排序字段 按照联系人姓名筛选可以使用(按条件查询) ContactsContact.Contacts.CONTENT_FILTER_URI 查询条件放在了D部分 查询联系人的电话 ContactsContact.CommonDatakinds.Phone.CONTENT_URI可以查询出联系人的电话 ContactsContact.CommonDatakinds.Phone.CONTENT_ID电话联系人的ID ContactsContact.CommonDatakinds.Phone.NUMBER电话号码 电话号码的游标对象一定要关闭 查询出联系人的电话的URI是哪个? AContactsContract.CommonDataKinds.CONTENT_URI BContactsContract.CONTENT_URI CCommonDataKinds.Phone.CONTENT_URI DContactsContract.CommonDataKinds.Phone.CONTENT_URI Android应用实践开发第十八节ContentProvider (二)下 查询联系人的Email ContactsContact.CommonDatakinds.Email.CONTENT_URI联系人的Email ContactsContact.CommonDatakinds.Email.CONTACT_ID联系人的ID ContactsContact.CommonDatakinds.Email.DATA邮箱 查询email可以有两种方式 1、以联系人名字为条件查询 2、输入email中的任一字母 Uri.encode(txtSearch.getText().toString())查询条件输入框 1、按照过滤条件查询联系人的URI是下面的哪个? AContactsContract.CommonDataKinds.Email BContactsContract.Contacts.CONTENT_FILTER_URI CContactsContract.CommonDataKinds.URI DContactsContract.URI Android应用实践开发第十九节ContentProvider(三) 自定义ContentProvider 首先要继承ContentProvider类 必须实现以下方法: -publicbooleanonCreate() -publicStringgetType(Uriarg0) -publicintdelete(Uriarg0,Stringarg1,String[]arg2) AndroidMainfest.xml authorities=”com.work.contentprovider.custom” Android: name=”.DataProvider”> 1、自己定义ContentProvider时,继承的类是哪个? AContent类 BProvider类 CContentProvider类 DContentProvidered类 Android应用实践开发第二十一节BroadcastReceiver和Notification (一) Broadcastreceiver是一个除了接收和响应广播之外其它什么事也不干的组件。 许多的广播起源于系统级别,例如: 时区改变、电池电量低、照片已经被拍、改变语言习惯等。 广播器并没有用户界面。 Broadcastreceiver可以通过sendBroadcast时间触发,并且Intent(意图)实现触发,Intent可以带参。 生命周期: 当一个广播消息到达接收者时,android调用它的onReceive()方法,并传递给它包含信息的Intent对象。 Broadcastreceiver被认为仅当它执行这个方法时是活跃的,当onReceiver()返回后,它是不活跃的。 活跃的broadcastReceiver的进程是受保护的不会被杀死,但是系统可以在任何时候杀死有不活跃组件的进程。 注册: 当使用时,在注册broadcastReceiver,当接收完广播可以取消注册。 区别: 动态注册较静态注册灵活 当静态注册一个broadcastreceiver时,不论应用程序是否启动,都可以接受对应的广播,动态注册伴有撤销操作。 接收系统广播: 在android中广播是普遍应用的,那如何判断是谁发出广播呢? 就是通过Intent。 Intent中的action可以看出是哪个广播。 常用的Intent的Action如下所示: ACTION_TIME_TICK时间已经改变 ACTION_TIME_CHANGED时间被设置 ACTION_TIMEZONE_CHANGED时区被改变 ACTION_BOOT_COMPLETED启动完成 ACTION_PACKAGE_ADDED新程序被安装 ACTION_PACKAGE_CHANGED程序被改变 ACTION_PACKAGE_REMOVED程序被卸载 ACTION_PACKAGE_RESTARTED程序重启 ACTION_PACKAGE_DATA_CLEARED程序数据被清空 ACTION_UID_REMOVED用户ID删除 ACTION_BATTERY_CHANGED电量信息改变 ACTION_POWER_CONNECTED外接电源被联通 ACTION_POWER_DISCONNECTED外接电源被断开 ACTION_SHUTDOWN系统关闭 1、当一个广播消息到达接收者时,Android调用BroadcastReceiver的什么方法? AonReceive() BBroadcastReceiver CBroadcast() Dreceive Android应用实践开发第二十二节BroadcastReceiver和Notification (二) Notification提醒用户,这些提醒可以通过很多途径去引起用户的注意 如闪烁的背景灯、震动、播放背景音乐,一个典型方法是在状态栏上放一个图标。 用户可以打开它获取信息。 Notification是一些不可见组件(broadcastreceivers,service)通知用户的优先选择。 Notification实现,获取notificationmanager对象,初始化notification对象,设置通知的显示参数,发送通知,取消通知。 使用setLatestEventInfo方法配置notification在扩展的状态窗口中的外观。 扩展的状态窗口将显示标题和一个详细的字符串,notification一般表示为对一个动作的请求或引起用户的注意。 所以,当用户点击notification项目时可以制定一个PendingIntent来触发 Notificationmanager是一个系统服务用于处理notification可以通过getSystemService方法获得。 PendingIntent和Intent方法区别 Intent通常用于马上处理的事情 Pendingintent通常使用于未来处理的事情,常常与notification和alarmmanager Pendingintent就是一个intent的描述 发送通知 为了触发一个notification,使用notify方法 注意: 为了更新一个已经触发的notification,传入相同的ID,mgr.notify(1337,note) 取消通知 通过调用notificationmanager的cancel方法,如mgr.cancel(1337) 注意: 取消一个notification时将移除它的状态条图标以及清除在扩展状态窗口中的信息 Notification定义了一些属性来设置LED的颜色和闪烁频率 LedARGB设置颜色 LedOffMS灯灭的毫秒时间 LedOnMS灯亮的毫秒时间 LedOnMS=1,LedOffMS=0常亮 LedOnMS=0,LedOffMS=0关闭 一旦设置了LED,必须为notification的flag属性添加FLAG_SHOW_LIGHTS标志位 1、在通知中setLatestEventInfo()方法是配置Notification的什么的? A配置Activity窗口外观 B配置Dialog外观 C配置Activity状态窗口 D配置Notification在扩展的状态窗口中的外观 Android应用实践开发第二十三节云端应用 (一) HTTP协议通信 HTTP通信技术是云端应用中最为常用的技术之一 客户端向服务器发出HTTP请求,服务器接收到请求后,处理请求,处理完成后再通过HTTP应答回客户端 HTTP请求方法POST/GET方法 Android中HTTP协议通信 可以使用.URL类,该类只能发出GET请求,可以使用Apache提供的Httpclient类库 背景知识 JAVAIO技术、JAVA网络通信、HTTP/HTML/XML/JSON/PHP/JSP JavaURL实现方式 Java的URL类用于请求web服务器上的资源,采用HTTP、请求方法是GET方法,一般是请求静态的、少量的服务器端数据 使用httpclient 支持HTTPS协议,自动处理cookie,支持多线程 1、android关于HttpClient说法正确的是? AHttpClient是Apache组织提供,已经集成在Android环境中 BHttpClient不支持HTTPS协议 C需要手动处理Cookie、支持多线程 D包已经提供了一些基本的HTTP功能 Android应用实践开发第二十四节云端应用 (二) 数据交换格式 Web应用程序可以实现下面格式实现数据交换: -Plaintext纯文本 -XML -JSON XML一种类似于HTML的语言,没有预先定义的标签,使用DTD文档类型定义来组织数据,格式统一,跨平台和语言,自描述的数据格式 解析XML文档-DOM接口对象 Document: 树状结果表示整个XML文档 Node: 节点对象,新增,删除和修改节点的对象 Nodelist: 节点对象列表,就是指定节点的子节点整个树状结构 Element: XML元素对象,也是节点对象 Attr: XML元素属性对象,也是节点对象 JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成,JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯。 JSON结构 JSON建构于两种结构: -名称/值对的集合。 不同的语言中,它被理解为对象、记录、结构、字典、哈希表、有键列表或关联数组 -值的有序列表,在大部分语言中,它被理解为数组 JSON结构-对象 对象是一个无序的名称/值集合,一个对象以{开始,}结束,每个名称后跟一个: ,名称/值对之间使用,分隔。 JSON结构-数组 数组是值的有序组合,一个数组以[开始,]结束,值之间使用,分隔 JSON结构-值 值可以是双引号括起来的字符串、数值、true、false、null,对象或者数组,这些结构可以嵌套。 1、关于JSON数据交换格式描述正确的是? AJSON元素 B是一种轻量级的数据交换格式 CJSON采用与XML相同的文本格式 DJSON是指整个树状结构 信息安全管理体系第一节: 信息安全概述 (一) 信息安全事件产生的原因 攻击 故障 信息安全事件失误 不可抗力 1、下列哪些地方曾遭受到DDoS攻击? A江苏 B爱沙尼亚 C潍坊 D济南 信息安全管理体系第二节: 信息安全概述 (二) 攻击手段: 收集信息、暴力破解、利用协议缺陷(Ddos、ARP)、溢出、IPC$、后门、应用层攻击(sql注入、跨站脚本、cookie注入)、病毒入侵、社会工程学 入侵流程: 踩点、扫描、漏洞利用、提权、安装后门、清除痕迹 1、下述哪些方法属于黑客攻击手段? AIP B社会工程学 CTCP DUDP 信息安全管理体系第三节: 信息安全概述(三)上 信息: 财务数据、源代码、项目管理文档、产品文档、用户信息、员工资料。 信息是有价值的数据集合 信息安全: 机密性、完整性、可用性(狭义) 真实性、可核查性、不可否认性和可靠性(广义) 信息本身的安全、信息环境安全、信息系统安全。 安全属性: 机密性、完整性、可用性CIA 机密性: 信息不能被未授权的个人、实体或者过程利用或知悉的特性。 完整性: 保护资产的准确和完整的特性。 -防止非授权用户的信息修改 -防止授权用户的非授权或无意修改 -保护内外的一致性、内部数据一致性,外部与realworld一致 可用性: 根据授权实体的要求可访问和利用的特性 D.A.D泄露: 信息泄露给非授权的用户和过程 修改: 信息修改 破坏: 访问受限(DDOS) 1、信息是有价值的()集合。 A数据 B数字 C文字9000 D图片 2、()是指信息不能被未授权的个人、实体或者过程利用或知悉的特性。 A真实性 B可用性 C完整性 D机密性 信息安全管理体系第四节: 信息安全概述(三)下 其它安全属性: 真实性: 确保主体或资源与它们声称相一致的特性,真实性可应用于诸如用户、进程、系统以及信息实体。 可核查性: 确保实体的活动可以唯一追溯到该实体的特性。 不可否认性: 确信实体活动发生或未发生的特性。 可靠性: 预期的行为和结果的一致性。 安全控制: 管理控制: 策略、标准、过程、指南。 技术控制: 访问控制机制、密码、标识、认证、安全设备、安全配置 物理控制: 物理隔离、锁、移出软盘及CD-ROM,保护设施周边环境、物理进入监控 信息安全管理 三分技术、七分管理: 人、制度、流程、规范 管理体系: 利用策略、规程、指南以及相关资源达到组织目标的框架 信息安全管理体系: 基于业务风险方法、建立、实施、运行、监视、评审、保持和改进信息安全的体系,是一个组织整个管理体系的一部分。 组织结构、方针策略、规划活动、职责、实践、规程、过程、资源 区分: 过程: 组织层面,不同职责的人协同工作,比如变更管理 规程: 事情层面,强调步骤,比如打补丁 如何做好信息安全: 公司: 体系化建设 个人: 增强安全意识 1、()是指确保主体或资源与它们声称相一致的特性? A主体 B客体 C真实性 D角色 2、()是指确保实体的活动可以唯一追溯到该实体的特性? A真实性 B可核查性 C鉴别 D标识 信息安全管理体系第五节: 信息信息探测及获取 (一) 信息收集与探测 网站、whois、ping、traceroute、nslookup、扫描、社会工程学 攻击者需要的信息 域名、机构所在位置、与其关系紧密的公司或实体、电话号码、联系人姓名和电子邮件地址、经过网络可以到达的IP地址、每个主机上运行的TCP和UDP服务、系统体系结构、访问控制机制、系统信息(用户名和用户组名、系统标识、路由表、SNMP信息等)、其它信息,如模拟/数字电话号码/认证机制等、指示所用安全机制的类型的私密或安全策略、与其相关联的Web服务器链接。 怎样收集信息 公开域信息(whois)、ping/traceroute、DNS 扫描信息-端口扫描(TCP/UDP/RPC) -bannergrabbing -漏洞扫描 -Osfingerprint 搜索引擎、社会工程 信息收集Whois Whois -为internet提供目录服务,包括名字、通讯地址、电话号码、电子邮箱、IP地址信息 Client/Server结构 -Client端 发出请求、接受结果,并按格式显示到客户屏幕上 -Server端 建立数据库,接受注册请求;提供在线查询服务 各种whois数据来源 Nsamspade.org 多数Unix提供了Whois,fwhois有Chriscappuccio创建 Ping工具 发送ICMPEcho消息,等待EchoReply消息 -可以确定网络和外部主机的状态 -可以用来调试网络的软件和硬件 每秒发送一个包,显示响应的输出,计算网络来回的时间 最后显示统计结果-丢包率。 关于ping 有许多命令行参数,可以改变缺省行为 可以用来发现一台主机是否active 为什么不能ping成功 没有路由、网关设置 网卡没有配置正确 增大timeout值 被防火墙阻止 Traceroute -发送一系列UDP包(缺省大小为38字节),其TTL字段从1开始递增,然后监听来自路径网关上发回来的ICMPExceeded应到消息 -UDP包的端口设置为一个不太可能用到的值(缺省为33434)因此,目标会送回一个ICMP消息,指示端口不可达。 DNS查询 是一个全球分布式数据库,对于每一个DNS节点,包含有该节点所在的机器的信息、邮件服务器信息、主机CPU和操作系统等信息 Nslookup是一个功能强大的客户程序,熟悉nslookup就可以把DNS数据库中的信息挖掘出来,---分两种运行模式 非交互式,通过命令行提交命令 交互式,可以访问DNS数据库中所有开放的信息 Unix/Linux环境下的host命令有类似的功能 1、下述哪种方法属于黑客攻击时的信息搜集手段? APing B机密性 C标准 D策略 2、为Internet提供目录服务,包括名字、通讯地址、电话号码、电子邮箱、IP地址等信息的是()。 ASMTP BPPP CWhois DFTP 信息安全管理体系第六节: 信息信息探测及获取 (二) 扫描系统扫描、数据库扫描、网络设备扫描、端口扫描、漏洞扫描、WEB扫描 扫描器的重要性 发现系统存活情况、以及那些服务在运行 用已知的漏洞测试这些系统 对一批机器进行测试,简单迭代过程 有进一步的功能,包括操作系统辨识、应用系统辨识 扫描技术 主机扫描: 确定在目标网络上的主机是否可达,同时尽可能多映射目标网络的拓扑结构,主要利用ICMP数据包 端口扫描: 发现远程主机开放的端口及服务 操作系统指纹扫描: 根据协议栈判断操作系统 扫描分类 开放扫描: TCP全连接、TCP反向ident扫描 半开放扫描: SYN扫描、IP头信息dump扫描 隐藏扫描: FIN扫描、ACK扫描、空扫描、XWAS扫描、TCP分段、SYN/ACK扫描 扫射扫描: ping扫射、UDP扫射、ACK扫射、SYN扫射、ICMP扫射 其它扫描: FTP弹跳、UDP/ICMP不可达、UDPrecvfrom/write扫描 常见扫描工具 Nmap: 对主机进行存活判断操作系统识别以及端口扫描等 #NampIP#Nampurl#NampIP范围 X-scan: 操作系统识别、端口扫描、漏洞检测 Nessus: 使用最多,可同时在本机或远端上遥控,进行系统的漏洞分析扫描 ShaowDataScanner数据库漏洞扫描工具 WEB扫描器 1.watchfireAppScan 2.WebInspect 社会工程学: 一种通过对受害者心理弱点、本能反应、好奇心,信任,贪
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息系统 集成 项目经理 继续教育 课程 11 学习 笔记