基于Android平台的新闻客户端的设计与实现

合集下载

基于Android的旅游助手APP的设计与实现

基于Android的旅游助手APP的设计与实现

基于Android的旅游助手APP的设计与实现智慧旅游是当前移动互联领域研究的热点问题,以Android Studio为移动开发平台,以良好的用户体验为切入点,通过Java编程设计实现了集气象信息查询、地图定位导航、旅游生活服务为一体的旅游助手APP,给出了软件的设计方案、功能结构和详细的实现过程。

实现的旅游助手APP使用方便、可交互性强,能够实时为游客提供准确的旅游信息,有效提升游客的旅游体验,为智慧旅游提供了一种具体的参考解决方案,具有重要的应用价值和发展前景。

标签:智慧旅游;旅游助手;安卓系统;移动应用开发Abstract:Smart tourism is a hot topic in the field of mobile interconnection. Taking Android Studio as the mobile development platform and good user experience as the starting point,the tourism assistant APP,which integrates meteorological information query,map positioning and navigation,and tourism life service,is designed and implemented by Java programming. The design scheme,functional structure and detailed implementation process of the software are given. The realized tourism assistant APP is easy to use and interactive. It can provide accurate tourism information for tourists in real time,improve the tourism experience of tourists effectively,and provide a specific reference solution for intelligent tourism,and it has important application value and development prospect.Keywords:smart tourism;travel assistant;Android;mobile application development1 概述移動互联技术的飞速发展及移动终端设备的普及,使智慧旅游迅速成为旅游业发展的重要途径,基于移动设备的旅游相关APP成为实现智慧旅游的重要载体[1]。

基于Android的掌上校园系统的设计与实现

基于Android的掌上校园系统的设计与实现

中文题目:基于Android的掌上校园系统的设计与实现外文题目:THE DESIGN AND IMPLEMENTATION OF A HANDHELD CAMPUS SYSTEM BASED ON ANDROID毕业设计(论文)共 72页(其中:外文文献及译文9页)图纸共 0张完成日期 2016年6月答辩日期2016年6月摘要随着互联网的技术的快速发展和无线网络的更新迭代,使3G网络已成为过去式4G网络蓬勃发展。

技术的发展,硬件的提高使人们使用智能手机可以更加快速、便捷的浏览信息、获取信息。

本文首先介绍校园App系统开发的背景和选题的意义,阐述了选择Android作为开发平台的优势。

其次,对基于Android系统的校园APP的实现进行了需求分析和开发场景的设置。

对于整个校园App系统的数据表、功能模块做了详细的分析,并详细的介绍了各个功能模块的功能,绘制了重要的业务流程图。

对于高校现在使用的信息系统进行了分析,并增加了设和自己学院的功能模块,提出了无线网络和移动终端设备相结合的高校学生生活服务信息查询手段,设计出了一套完整的学生生活服务信息查询系统。

使学生登录进入到该款校园APP的主页面后,可以实现查询自己的课程信息、成绩信息、学校的教务公共、浏览本地新闻、浏览校园风采、校园咨询、登录学校资源网站、个人备忘录等功能。

关键词:校园App系统;Android;生活信息服务;开发环境。

ABSTRACTWith the rapid development of Internet technology and wireless network update to 3G network has become the past 4G network development. The development of technology, the improving of hardware make people use smart mobile phone can be more rapid and convenient browsing information, access to information. This paper first introduces the system development background and significance of campus App, discusses the selection of Android as the development platform.Secondly, for the realization of Android system based on campus APP analyses the demand and development of setting the scene. For the entire campus App system data table, function module to do a detailed analysis, and detailed introduction of each function module function, draw the important business flow chart. For colleges and universities now use the information system are analyzed, and increases the function module design and his school, put forward the combination of wireless network and mobile terminal equipment of college .students life service information inquiry method, designed a set of complete service life of students information query system. Enable students to log in to the campus app's home page can be achieved after the query their curriculum information, performance information, school educational public, browse local news, browse talent on campus, campus counseling, log on the website of the school of resources, personal memos function.Key words: campus App system;Android;life information service;developmentenvironment.目录摘要 (I)ABSTRACT (II)1项目概述 (1)1.1现系统的概述 (1)1.2组织机构及业务范围 (3)1.3业务流程描述 (4)2需求分析 (6)2.1总体目标 (6)2.2 具体目标 (6)2.3 系统功能建模 (7)2.3.1系统数据流图 (7)2.3.2数据字典 (14)2.4系统数据模型 (19)3概要设计 (24)3.1 体系结构设计 (24)3.2 接口设计 (24)3.2.1 外部接口 (24)3.2.2 内部接口 (26)3.3 代码设计 (26)3.4数据库设计 (26)3.4.1关系模式设计 (27)3.4.2数据库物理结构设计 (27)3.5输入输出设计 (29)3.5.1输入设计 (29)3.5.2输出设计 (30)3.6运行设计 (30)3.6.1环境 (30)3.6.2运行控制 (31)3.7出错处理设计 (31)3.7.1出错输出信息 (31)3.7.2出错处理对策 (32)3.8 安全保密设计 (32)3.8.1 数据安全性 (32)3.8.2 登录用户的安全性 (32)3.9维护设计 (32)4详细设计 (33)4.1详细设计概述 (33)4.2网站首页设计 (33)4.3教学信息咨询模块定义 (33)4.3.1模块定义 (33)4.3.2输入项目 (33)4.3.3输出项目 (33)4.3.4程序逻辑 (33)4.4本地资讯模块定义 (34)4.4.1模块定义 (34)4.4.2输入项目 (35)4.4.3输出项目 (35)4.4.4程序逻辑 (35)4.5校园风采模块定义 (35)4.5.1模块定义 (35)4.5.2输入项目 (36)4.5.3输出项目 (36)4.5.4程序逻辑 (36)4.6校园咨询模块定义 (37)4.6.1模块定义 (37)4.6.2输入项目 (37)4.6.3输出项目 (37)4.6.4程序逻辑 (37)4.7校园资源网模块定义 (38)4.7.1模块定义 (38)4.7.2输入项目 (39)4.7.3输出项目 (39)4.7.4程序逻辑 (39)4.8备忘录模块定义 (39)4.8.1模块定义 (39)4.8.2输入项目 (40)4.8.3输出项目 (40)4.8.4程序逻辑 (40)4.9计算器模块定义 (40)4.9.1模块定义 (40)4.9.2输入项目 (41)4.9.3输出项目 (41)4.9.4程序逻辑 (41)4.10出行指南模块定义 (41)4.10.1模块定义 (41)4.10.2输入项目 (42)4.10.3输出项目 (42)4.10.4程序逻辑 (42)4.11界面实现 (43)5编码 (46)5.1开发工具及编程语言概述 (46)5.1.1开发工具Microsoft Office Visio 2013 (46)5.1.2 SQL Server2005数据库管理系统简介 (46)5.1.3 Android简介 (47)5.1.4 Java语言简介 (48)5.1.5 Eclipse简介 (49)5.1.6 SQLite数据库 (49)5.2脚本习惯说明 (49)5.3程序 (50)6测试 (51)6.1测试原则及测试方法概述 (51)6.1.1测试原则 (51)6.1.2测试方法 (52)6.2测试项目测试用例 (53)6.3软件测试结论 (59)6.3.1软件能力 (59)6.3.2缺陷和限制 (59)6.3.3测试结论 (59)结束语 (60)致谢 (61)参考文献 (62)附录A 中文译文 (64)附录B 英文原文 (67)附录C主要程序清单 (71)1项目概述1.1现系统的概述高校生活服务信息系统如今已经普遍在各个高校中投入使用,极大程度上方便了用户及时获取信息以及生活更加便利,提高了工作效率以及校园服务。

腾讯新闻客户端的发展解析

腾讯新闻客户端的发展解析

腾讯新闻客户端的发展解析作者:于建华,赵宇来源:《科技传播》 2018年第13期摘要 2018 年1 月31 日,中国互联网络信息中心发布了第41 次《中国互联网络发展状况统计报告》,截至2017年12 月,我国网民人数达7.72 亿,手机网民规模达7.53 亿,占比高达97.5%。

智能手机的普及极大地改变了新闻传播的方式与受众的阅读习惯,移动新闻客户端就是在这轮移动互联网大发展时代下的产物,不论是传统媒体还是商业媒体纷纷创建自己新闻客户端,在这轮新闻客户端为争夺受众而逐鹿中原的过程中,老牌门户新闻网站腾讯网异军突起,在这轮争夺中率先拔得头筹。

本案例以腾讯新闻客户端为对象,分析其崛起背后成功的秘密。

关键词腾讯新闻;客户端;手机;案例中图分类号 G2 文献标识码 A 文章编号 1674-6708(2018)214-0143-021 案例简介科技的发展总能改变人们的信息获取方式,随着移动互联网时代的到来,人们获取新闻的方式已经不再局限于报纸、广播、电视等传统媒体,智能手机与4G 网络的发展让移动新闻客户端成为当下人们获取信息的新渠道。

根据艾媒咨询在2018 年3月22 日发布的《2017-2018 中国手机新闻客户端市场研究报告》显示,截止2017 年第四季度,中国手机新闻客户端用户规模增至6.36 亿人。

73.7% 的受访手机新闻客户用户每天都有使用手机新闻客户端,其中每天使用3 次以上的用户达24.0% ①。

新闻客户端日益成为生活中的一部分。

另据腾讯网报道,2018 年2 月26 日工业和信息化部电子科学技术情报研究所网络舆情研究中心发布的《2017年中国网络媒体公信力调查报告》显示,2017 年中国主流综合性网络媒体的公信力与综合影响力方面,已经形成了以人民网、新华网、腾讯网、人民日报客户端、腾讯新闻客户端等为主的第一梯队,腾讯新闻客户端则是位于第一梯队中的少数商业类媒体平台。

在媒体满意度方面,商业类媒体平台中只有少数媒体如腾讯新闻客户端、澎湃新闻客户端等跻身第一阵营②。

基于Android计算器功能的实现

基于Android计算器功能的实现

基于Android计算器功能的实现摘要随着移动通信技术和网络技术的迅速发展,手机系统发生了巨大的变化,从进行简单通话功能的非智能手机到现在集上网、聊天、收发邮件、视屏电话会议等各种服务于娱乐为一身的智能手机系统。

由Google公司牵头众多实力雄厚的软硬件厂商加盟成立了OMS联盟,并推出的Android平台手机系统。

作为时代的新生儿,Android手机操作平台有着得天独厚的优势广阔的发展前景。

本文正是基于Android平台开发的计算器。

论文主要阐述以面向对象的程序开发语言eclipse为开发工具, 设计并实现基于Android的计算器。

论文首先介绍了Android开发平台和环境以及Android 工程的重要部分,其次对计算器系统和程序进行了分析和设计,再次对计算器进行了系统的实现,并对系统进行了严格的验证,最后本文对所做工作进行了总结。

关键词:手机,Android,用户界面,计算器THE CALCULATOR FUNCTION REALIZATION BASEDON ANDROIDABSTRACTWith the development of mobile communication technology and network technology, great changes have taken place on the mobile phone system. The original mobile phone only has the functions of communication and Smartphone has the functions of internet, chat, video conferencing and other services and entertainment. Android mobile phone platform which was developed by Google Company and many equipment manufacturers of hardware and software vendors, as the era of neonatal has a unique advantage and prospects for development. This article is based on the Android platform calculator. The thesis describes object-oriented programming language eclipse development tools, design and implement a calculator based on the Android. The paper first introduces the Android development platform and environment as well as an important part of the Android project, followed by the calculator systems and procedures analysis and design, the realization of the system once again the calculator, and strict verification, Finally, a summary of the work done.Key words: mobile phone, Android, UI, calculator目录1 引言 (1)1.1 课题背景及意义 (1)1.1.1 课题背景 (1)1.1.2 课题意义 (1)1.2 智能手机平台系统 (2)1.3 课题来源 (3)2 基于Android平台计算器相关技术概述 (4)2.1 Android手机平台 (5)2.1.1 Android起源及优势 (5)2.1.2 Android体系结构 (5)2.1.3 Android平台功能特征 (7)2.2 Android SDK介绍 (9)2.3 XML技术 (10)2.4 JNI技术 (11)3 基于Android平台计算器设计 (12)3.1 系统的总体设计 (12)3.2 程序流程和系统功能设计 (13)3.2.1 程序流程设计 (13)3.2.2 系统功能设计 (14)3.3基于Android平台系统具体设计 (15)3.3.1 总体模块详细设计 (15)3.3.2 输入模块详细设计 (16)3.3.3 显示模块详细设计 (16)3.3.4 计算模块详细设计 (17)4 计算器系统实现 (18)4.1 Android应用程序构成 (18)4.2 Android应用系统文件结构 (19)4.3 构建Android应用程序用户界面 (21)4.3.1 Android应用程序界面组件 (21)4.3.2 Android应用系统界面组件 (22)4.3.3 Android用户界面的实现 (24)4.4 计算模块的实现 (28)4.5 计算器演示 (30)5 结论 (32)谢辞 (33)参考文献 (34)附录1: (36)附录2: (38)1 引言1.1 课题背景及意义1.1.1 课题背景随着社会的发展,经济水平的提高,手机越来越普及。

搜狐新闻简介

搜狐新闻简介

搜狐新闻是搜狐网为Android用户量身打造的免费新闻资讯类软件, 用户不仅每天可以享受到精编报纸的推送服务, 还可以随时随地了解最热的实时新闻, 集要闻、体育、娱乐、财经、IT、军事、汽车、星座、读书、组图等频道于一体, 真正体验到上搜狐, 知天下。

搜狐微博手机客户端、随时随地记录点滴瞬间;微博就是“一句话博客”。

你可以将每天生活中有趣的事情、突发的感想,通过一句话或者图片发布到互联网中与朋友们分享。

于此同时你还可以关注任何你感兴趣的人,随时了解他们的动态。

搜狐微博特色功能:丰富的产品功能:除写微博、评论、转发、查看图片外,还有位置、搜索、表情、本地图片分享等特色功能,基本上满足普通用户及高级用户的不同层次需求。

独特的信息架构:依照用户对不同功能模块的需求强度及功能之间的相互关联,在不同级别的界面中展示最合适的内容,结构清晰,操作流畅。

友好的交互方式:便捷刷新、新消息提醒、操作反馈、系统提示等,以最少的操作步骤高效完成任务;以友好、及时的提示化解使用困扰。

清新的视觉界面:深入挖掘年轻用户群的群体特征和当前流行趋势,整套皮肤凸显青春活力,也恰如其缝地表达了产品的品质。

版本特性:1、新增屏蔽拉黑功能;2、修复新消息即时提醒功能;3、新增客户端崩溃自动修复功能;4、优化GIF和视频的播放交互;5、修改了短信分享的文字内容;6、粉丝数改进了999+的不良体验,现在完全显示;7、其他:缓存问题,表情BUG,发布图片稳定性,大图优化更加清晰,修复其他BUG软件介绍搜狐新闻客户端是全国首个提出个性化订阅服务的新闻客户端,基于搜狐优质媒体资源和独家合作内容,并由搜狐专业的编辑团队精心制作成适合掌上阅读的报纸杂志。

全新为您打造最快,最全,最个性化的资讯平台。

【推荐个性订阅内容】:1、搜狐早晚报:为您早晚各提供一份客观、公正的中文新闻资讯;2、重磅速递:第一时间报道重大事件;3、搜狐旺财:投资方向、理财产品、市场分析;4、搜狐女人:感性、性感并重的女性手机杂志;5、搜狐车讯:提供最新汽车资讯、汽车周边产品权威测评、最前沿汽车用品行情等;6、欢乐快递:搞笑图文和段子,让您的生活变轻松;7、网上那点事:聚焦互联网上最热的事件和网络红人;8、八卦周刊:关注娱乐圈里的那些事儿,将绯闻、八卦进行到底;9、打折团购:省钱,省力,省时间,我们将提供最全的打折团购信息;10、意林杂志:小故事大智慧、小幽默大道理、小视角大意境;11、报纸刊物:聚合各省、市地方电子报纸资讯内容。

软件设计实践报告南邮(2篇)

软件设计实践报告南邮(2篇)

第1篇一、引言随着信息技术的飞速发展,软件设计在各个行业中的应用越来越广泛。

为了提高软件设计水平,南京邮电大学特此开展软件设计实践课程,旨在培养学生具备扎实的软件设计基础,提高实际动手能力。

本文将结合南邮软件设计实践课程,对软件设计过程中的关键环节进行总结和分析。

二、实践内容1. 项目背景本次实践项目是一款基于Android平台的校园信息查询系统。

该系统旨在为在校师生提供便捷的校园信息查询服务,包括课程表、校园新闻、失物招领、图书馆信息等。

2. 需求分析在项目开始前,我们对目标用户进行了调研,了解了用户对校园信息查询系统的需求。

经过分析,我们确定了以下需求:(1)用户可以通过系统查询课程表,了解自己的上课时间和地点;(2)用户可以浏览校园新闻,了解校园动态;(3)用户可以发布和查询失物招领信息;(4)用户可以查询图书馆的借阅信息、座位信息等。

3. 系统设计3.1 系统架构根据需求分析,我们采用了分层架构,将系统分为以下几个层次:(1)表示层:负责用户界面展示,包括Android客户端和Web端;(2)业务逻辑层:负责处理业务逻辑,包括数据访问、业务规则等;(3)数据访问层:负责与数据库进行交互,实现数据的增删改查;(4)数据层:存储系统数据,包括课程表、新闻、失物招领、图书馆信息等。

3.2 技术选型(1)开发语言:Java;(2)开发工具:Android Studio;(3)数据库:MySQL;(4)前端框架:Material Design;(5)后端框架:Spring Boot。

4. 关键技术4.1 数据库设计根据需求分析,我们设计了以下数据库表:(1)用户表:存储用户信息;(2)课程表:存储课程信息;(3)新闻表:存储校园新闻信息;(4)失物招领表:存储失物招领信息;(5)图书馆信息表:存储图书馆信息。

4.2 Android客户端设计(1)主界面:展示课程表、校园新闻、失物招领、图书馆信息等模块;(2)课程表模块:展示用户课程表,支持查询、筛选等功能;(3)校园新闻模块:展示校园新闻,支持查看详情、评论等功能;(4)失物招领模块:展示失物招领信息,支持发布、查询等功能;(5)图书馆信息模块:展示图书馆信息,支持查询、借阅等功能。

Android的架构与应用开发探讨

Android的架构与应用开发探讨

Android的架构与应用开发探讨作者:朱云娜宋巍来源:《消费电子·理论版》2013年第01期摘要:随着人类科学技术的发展,手机的更新频率非常高。

智能手机是现在生活中的主角,其系统为Android,是智能手机的平台。

针对Android系统智能手机的功能、构架以及原理等进行全方位的研究和探讨。

关键词:Android;架构;应用开发中图分类号:TN929.53;TP311.52 文献标识码:A 文章编号:1674-7712 (2013) 02-0081-01Android系统的智能手机是一个真正意义上的开放性移动设备综合平台,其中包括:用户界面、应用程序、操作系统和中间件,拥有了一定电话的所需的全部软件,Android系统的开发性保证了该平台不存在任何阻碍移动产业创新发展的空间。

一、Android系统的构架Android系统平台由Linux内核层、应用框、Android运行时库和其他库层、应用程序四个层次构成。

第一层Linux内核层,主要是通过添加Android运行时所需要的特定驱动代码和一个Goldfish的虚拟CPU来实现。

是基于Linux version2.6.23内核进行的开发。

其主要作用在于,能够提供系统底层的服务,如,内存管理、网络堆积、进程管理和安全机制等,该层在硬件和其他软件之间属于中间层。

由于该内核操作系统和Linux/GNU并属于一类,因此,它的系统初始化、编程接口和系统库等都不同于标准的Linux系统。

其采用的不是内存文件系统而是YAFFS2文件系统。

第二层Android运行时库和其他库层,Android系统运行时库中包含了一组Dalvik虚拟机和核心库,并提供了丰富的库类支持,而且这些库类大多数都是开源代码,如采用AQLite数据库。

Android系统在选择该数据时不需要安装和管理,该数据库是一个完整的数据库,储存在单一磁盘文件中,占有内存只有250KB。

但是支持数据库的大小为2TB,能够支持和处理并发事务的功能,运行速度比其他大多数数据库快。

新京报APP特点分析

新京报APP特点分析

新京报APP特点分析作者:宁春铃鲍伟国来源:《科学导报·学术》2019年第35期摘 ;要:在传统媒体行业格局与舆论生态环境的大变动下,多家传统纸媒紧随媒介融合的大潮,纷纷开通了自己的新闻客户端。

手机、平板等移动新闻客户端逐渐成为信息交流传播的重要途径。

本文通过对时政类城市日报《新京报》的手机客户端分析,从板块结构、新闻选择以及内容特点三个方面观察该手机客户端的特点,分析了在移动互联网背景下传统媒体通过手机客户端实现新闻多维度传播的情况,为手机新闻客户端的发展方向提供有益借鉴,为传统新闻媒体的媒介融合之路发展提出新参考。

关键词:新京报;APP;新闻编辑;深度阅读引言据中国互联网络信息中心(CNNIC)最新数据显示,截止至2018年1月,我国使用手机上网的人数达7.72亿,相较于2016年底增加了5734万人。

时至今日,越来越多的用户开始频繁使用手机新闻客户端获取新闻资讯。

从2000年到2010年,这十年内中国互联网一直在高速发展,包括报纸杂志、广播电视等所谓的传统媒体也在2010年后纷纷走上了媒介融合之路。

面对多变的市场环境,传统媒体需要具有拥抱媒介环境变化的应变能力,手机客户端就是一个很好地体现。

同时手机客户端在页面呈现方式、展示内容等方面与传统纸媒存在着不小的差异,这就意味着新闻编辑们要面对新一轮的新闻选择和版式设计理念的转变。

一、手机新闻客户端现状新媒体客户端是借助数字、移动技术,安装在客户机上的服务程序,即在网络、移动终端上使用的不同程序。

手机APP客户端则属于智能手机发展后的第三方应用程序客户端,是媒体利用手机APP应用推送新闻的载体,具有和新媒体客户端一样的特征属性。

1、国内新闻客户端发展现状市面上的新闻端根据其运营主体的不同,大致可以分为三大类。

第一类是以腾讯新闻、凤凰网、搜狐新闻等为代表的门户网站类新闻客户端,门户网站类新闻客户端也是新闻客户端市场占有率最高的类别,在短期内具有不可撼动的地位。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实习项目四、 基于Android平台的新闻客户端的 设计与实现

专 业:计算机技术 学 号: 姓 名:ls 辅导老师:

2015年7月7日 目 录 第1章 诸论 ................................................... 3 1.1 开发背景 .................................................. 3 1.2 开发工具的选用及介绍 ...................................... 3 1.3 开发环境介绍 .............................................. 4

第2章 系统分析与设计流程 .................................... 5 2.1 服务器和数据库的搭建 ...................................... 5 2.2 使用 PHP 生成新闻 JSON 数据 ................................ 6 2.3 实现新闻列表界面的布局 .................................... 8 2.4 实现新闻列表界面的 JSON 数据解析和填充 .................... 9 2.5 实现新闻列表界面的跳转并展示详情 ......................... 11

结束语 ....................................................... 12 附录 ......................................................... 13 第1章 诸论 1.1 开发背景 移动互联网背景下,手机凭借其随时随地、移动与便携等优势发展成为重要的大众传播媒体,成为媒介融合的新平台。移动新闻客户端凭借其丰富的资讯资源、实时的信息推送被越来越多的用户认可。对于各行各业来说,为了展示企业良好形象,新闻客户端是面向用户中必不可少的一部分。

1.2 开发工具的选用及介绍 1. PHP 生成 JSON 数据:PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序。本文利用PHP文件解析数据库表,生成JSON数据。 2.HBuilder:HBuilder是DCloud(数字天堂)推出一款支持html5的Web开发ide。快,是HBuilder的最大优势,通过完整的语法提示和代码输入法、代码块及很多配套,HBuilder能大幅提升html、js、css的开发效率。本文利用HBuilder来编写PHP文件。 3.XAMPP:XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建 XAMPP 软件站集成软件包。许多人通过他们自己的经验认识到安装 Apache 服务器是件不容易的事儿。如果想添加 MySQL、PHP 和 Perl,那就更难了。XAMPP 是一个易于安装且包含 MySQL、PHP 和 Perl 的 Apache 发行版。XAMPP 的确非常容易安装和使用:只需下载,解压缩,启动即可。本文通过XAMPP搭建 Apache服务器和MySQL数据库。 4.Eclipse:Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。本文以Eclipse为工具,以Android为平台,开发一个简单的新闻客户端应用,实现新闻列表界面的布局、JSON数据解析和填充、以及新闻列表界面的跳转并显示详情。

1.3 开发环境介绍 基于Android平台的新闻客户端项目所用数据库为MySQL,服务器为Apache,主要开发工具为eclipse,在Android平台实现,程序运行环境为windows 8,内存4G,源码详见附录。 第2章 系统分析与设计流程 本章主要利用Apache+MyAQL+Android,采用边开发边分析的方法,搭建了一个简单的、可运行的Android新闻客户端服务系统,实现了从服务器端获取数据并显示在应用界面,点击时跳转到新闻详情页面的功能。

2.1 服务器和数据库的搭建

图2-1 用XAMPP启动Apache和MySQL 服务器的架设是在本机上完成,装上XAMPP软件包后打开,如图2-1,启动Apache服务器和MySQL数据库,点击Admin进入管理界面,新建一个名为newsdemo的数据库,排序规则为utf8,然后建立一个名为news的数据库表,创建六个字段,然后插入两条相应的新闻数据,如图2-2。 图2-2 数据库界面 2.2 使用 PHP 生成新闻 JSON 数据

图2-3 数据库表news 如图2-3,数据库中的表news,有六个字段,第一个字段叫做id,是新闻的序号,序号作为新闻的主键,使每条新闻不重复,与新闻内容有关的是另外五个字段:title(标题),desc(新闻简要概述),time(新闻时间),content_url(新闻内容链接),pic_url(新闻图片链接)。最终实现的效果是通过一个PHP网 页,即http://xxx/getNewsJSON.php,将表中的所有数据转换为JSON数据的格式,就可以得到图下方的JSON字符串,即一个数组包裹的JSON对象,其中包含了5个键值对,分别为新闻的5个元素。

图2-4 用Hbuilder编写PHP文件 如图2-4,通过HBuider编辑器编写PHP网页,连接数据库,并把当前的数据输出为JSON格式,新建一个getNewsJSON.php文件用来获得JSON数据,和一个mysql_connect.php文件用来连接数据库,代码详见附录。 因为服务器搭建在本机,在浏览器中访问地址http://127.0.0.1/NewsDemo/getNewsJSON.php,可以看到这时生成了格式为utf-8的JSON数据,如图2-5,证明数据解析成功。

图2-5 本机测试浏览JSON数据 2.3 实现新闻列表界面的布局 本节主要完成了在Android界面中实现新闻列表界面的布局,主界面采用垂直线性布局,完成新闻列表项listview,声明一个NewsAdapter的类使其继承自BaseAdapter,并实现图2-6的四个方法。

图2-6 adapter实现的四个方法 其中第四个方法getView()是非常重要的,如图2-7,在News2程序界面的最外层是一个listview,它里面有两项,对应了两条新闻,getView是指的其中某一项的布局,也就是右边的view,包括了新闻缩略图,新闻标题,新闻梗概,和布局右上侧的新闻时间,用NewsAdapter将新闻与布局适配起来。

图2-7 getView方法的使用 2.4 实现新闻列表界面的 JSON 数据解析和填充 首先要有一个获取JSON字符串的网络地址,即public static final String GET_NEWS_URL="http://192.168.191.1/NewsDemo/getNewsJSON.php";因为服务器软件是在本机运行的,所以192.168.191.1为本机的IP地址,打开浏览器,输入http://192.168.191.1/NewsDemo/getNewsJSON.php,如图2-8,可以看到,确实从外网访问到了我本机的IP,并且取到了getNewsJSON所生成的这个字符串。

图2-8 利用IP测试浏览JSON数据 因为我们要访问网络,所以要写一个HttpUtils的工具类,实现getNewsJSON()方法,用来传入获取到JSON数据的url并解析JSON数据,首先用new Thread()方法开启一个线程,开启输入流,一行一行的读取数据,每读完一行就要进行拼接,因为在字符串拼接方面StringBuilder要比单纯的String的那种“+”的方式要高效很多,所以这里使用StringBuilder方法拼接。获取到JSON数据后,调用handler.sendmessage()方法通知主线程。然后再在MainActivity当中实现Handler()方法,调用其中的handlerMessage()回调方法获取到JSON数据,下一步就是对其进行解析。 因为JSON数据格式为数组,它里面有若干个JSON的对象,对于JSON数据的解析,可以看下下面的代码,首先将获取到的jsonData传递进来, jsonArray.length()获取到JSON对象的个数,然后写一个循环来获取到JSON里的每一个对象。 JSONArray jsonArray = new JSONArray(jsonData); for (int i=0;iJSONObject object = jsonArray.getJSONObject(i); String title = object.getString("title"); String desc = object.getString("desc"); …… } 这样解析出来了还远远不够,得到的数据现在还是分散的,在组织上看起来比较杂乱无章,为了能让这些数据更好的组织起来,就是每个新闻对应5个元素,另一个新闻也对应5个元素,那么这时候我们在新建一个javabean的类,比如说它叫News,那么这个News对象它里面就有5个属性,分别对应了新闻的5个元组,通过这种方式就可以很好地把获取到的数据有序的组织起来,方便后面的使用,方法里的成员属性和构造方法如下,并实现get()和set()方法。 public class News { private String title; private String desc; private String time; private String content_url; private String pic_url; public News(String title ,String desc,String time,String content_url,String, pic_url){ setTitle(title); setDesc(desc); setTime(time); setContent_url(content_url); setPic_url(pic_url); } }

相关文档
最新文档