基于android的rss新闻阅读器设计与实现内容摘要:
好,布局搭配合理,用户操作方便无碍。 (2)快速响应 操作响应及时,无拖拉, 对于耗时较长的操作,给予用户友好提示。 (3)无缝性 不影响用户的主观操作,不干扰其他应用程序。 安全需求分析 Android 系统默认情况下不会开放权限给应用程序对于其他应用程序或操作系统本身进行有害操作,包括访问网络,读取隐私数据,保持设备活动等。 3 开发环境及相关技术 Android 开发环境介绍 设计和开发应用于 Android 系统的软件程序需要使用到 Android 开发环境。 Android系统本身是开源的, Android相关开发工具具有跨平台的特点。 所以 Android开发环境支持在目前主流系统任意一种,比如 Windows、 Mac、 Linux 等上进行搭建。 Android 官方推出了 Android Studio 一体化开发工具,可以直接用于 Android 应用的开发。 另外使用较多的还有 Eclipse 集成 Android 开发环境,涉及到 JDK、 ADT、 Android SDK,以下依次对其进行简单介绍: JDK:用于开发、编译、和测试使用 Java 语言编写出的应用程序。 全称为 Java Development Kit。 ADT: ADT 是一款 Eclipse 工具插件,主要用于支持 Eclipse 进行 Android 快速入门和快捷开发,工具包括 Android DDMS( Android Dalvik Debug Moniter Server)和 Android Development Tools。 DDMS 可以对调试设备进行截屏、线程及内存信息查看、 Logcat、河池学院 2020 届本科生毕业论文(设计) 5 广播信息、模拟呼叫、 SMS 消息发送、文件浏览等功能。 Android SDK: AndroidSDK 包含着各种各样的定制工具, SDK Manager 是其主要部分。 提供了 Android 模拟器( Android Emulator)以及 Android 不同版本的 SDK 在线更新管理。 Android 开发环境搭建 Android 开发环境可使用 Android Studio 或者对 Eclipse 进行集成。 Android Studio:只需要访问 Google Android 开发者官方网站,下载对应本机操作系统版本完成安装即可。 访问地址: Eclipse: 主要有以下 4步: (1)安装 JDK 后,配置 PATH 以及 JAVA_HOME 环境变量。 (2)安装 SDK installer,下载地址: ools (3)在线更新 ADT: 安装 Eclipse 后,菜单栏 Window— Help— InstallNew Software — Add— name 填写“ ADT Plugin, URL 填写 “ — OK — 选择要下载的 DevelopTools — 依次点击 Next、 Next、 Finish、 OK — 重启 Eclipse。 (4)启动 Eclipse 后选择 SDK 路径,至此配置完成,进入 SDK Manager 完成 SDK 工具的更新即可。 4 程序设计与实现 主要 界面实现 主界面的实现 河池学院 2020 届本科生毕业论文(设计) 6 主界面主要工具条、图片展示区、新闻列表由三大部分组成(如图 1) 图 1: 程序主界面 工具条使用了相对布局 ( RelativeLayout) 放置了两个按钮 ( imageButton) ,中间为文本显示应用名。 图片展示区使用的是 卡片视图( CardView)包裹图片切换器( ImageSwitcher),通过为图片切换器设置图片资源并且使用子线程控制图片不断切换实现图片的轮播效果。 新闻列表使用了可回收视图( RecyclerView),默认是以列表形式将新闻频道逐一排列显示,而因为 RecyclerView 使用布局管理器管理子 view 的位置 ,所以还提供网格2列,网格 3 列的视图供用户进行切换选择,并且对其适配器应用了子 View 拖动处理,用户可以对每个新闻频道进行拖动,轻松实现排序。 河池学院 2020 届本科生毕业论文(设计) 7 新闻条目界面的实现 新闻条目界面主要由工具条和条目列表两个部分组成(如图 2)。 图 2:程序 新闻条目 界面 工具条提供了返回按钮操作以及显示出该新闻频道,条目列表视图使用的是RecyclerView 将所有关于该新闻频道的新闻条目标题 以列表的形式展现。 内容浏览界面的实现 河池学院 2020 届本科生毕业论文(设计) 8 内容浏览界面主要由工具条、内容浏览区、扩展条三个部分组成(如图 3)。 图 3: 程序内容浏览界面 工具条提供了返回按钮操作以及显示出该新闻频道。 内容浏览区主要使用了 可滑动切换视图( ViewPager)包裹 垂直滚动视图( ScrollView)再内包裹 线性布局( LinearLayout), 再根据内容数据读取过程中对内容进行判定,将文字内容以 TextView 或图片内容以 ImageView 的形式不断的进行动态创建出来后添加到线性布局中,完成内容的图文加 载,同时可以为用户提供方便的左右滑动切换浏览。 扩展条由查看原文、评论、分享三个按钮组成 ,分别实现查看原网页、对内容进行评论、分享该新闻的功能。 河池学院 2020 届本科生毕业论文(设计) 9 数据库设计 ER 图 图 4: 数据库 ER图 河池学院 2020 届本科生毕业论文(设计) 10 数据表 表 1:用户表 ( user) 字段名 类型 含义 objectId String 记录的唯一识别 ID username String 用户名 password String 用户密码 headShotURL String 头像图片网址 newsList Array 用户的新闻列表 表 2: 评论表( ment) 字段名 类型 含义 objectId String 记录的唯一识别 ID guid String 新闻链接,作为新闻的识别 content String 评论内容 usesrname String 用户名 replyto String 回复对象 表 3: 设置表( setting) 字段名 类型 含义 _id Integer 记录的唯一识别 ID user_id String 用户名 wifi Integer 是否 WiFi状态下自动加载 view Integer 视图模式 河池学院 2020 届本科生毕业论文(设计) 11 表 4: 频道表( news) 字段名 类型 含义 objectId String 记录的唯一识别 ID link String 频道链接 name String 频道名 show Integer 是否向用户推荐 表 5: 序表 字段名 类型 含义 _id Integer 记录的唯一识别 ID user_id String 用户 ID news_id String 新闻 ID number Integer 新闻排序所在位置 表 6: 条目表 字段名 类型 含义 _id Integer 记录的唯一识别 ID guid String 该条新闻的链接 title String 新闻标题 order_id String 来自新闻频道的序号 pubdate String 新闻发布时间 category String 新闻分类 status String 新闻状态(已读、未读) 河池学院 2020 届本科生毕业论文(设计) 12 表 7:详情表 字段名 类型 含义 _id Integer 记录的唯一识别 ID item_id Integer 新闻来源条目的 ID content String 新 闻详情内容 type Integer 内容类型(文字、图片) 主要 功能实现 程序 功能列表如图 5, 以下介绍几个 主要 功能的实现过程 : 图 5:程序功能图 资源的获取及解析 资源的获取主要通过 Volley 网络框架中自定义的数据字节流获取方法( ByteArrayRequest) 获取数据流,并 写入到以对应 URL 为名创建的文件夹中的 文件中。 河池学院 2020 届本科生毕业论文(设计) 13 资源的解析分为 4步: ( 1) 编码处理:通过 juniversalchardet 编码检测工具的方法 String getFileDecode(InputStream inputStream)将资源文件以文件流的形式传入,再通过 String ()获取到 识别后 资源的正确编码。 ( 2) 解析处理:使用 Pull 方式将资源文件进行解析,以文件流的形式及对应编码传入,之后通过 XmlPullParser 的开始解析文档 START_DOCUMENT、开始解析标签 START_TAG、解析标签完成 END_TAG、解析文档完成 END_DOCUMENT 几个重要方法将内容逐一解析。 具体代码 如下: public class RSSParser { // 传入参数,新闻文件的输入流、对应的编码 public static RSS getRssList(InputStream in, String encoding) { try { // rss 作为整体新闻频道的存储对象 // item 作为每一条新闻的存储对象 // items 作为多条新闻的存储集合 // image 作为一条新闻频道图标信息 RSS rss = null。 Item item = null。 ListItem items = null。 ChannelImage channelImage = null。 boolean imageReading = false。 // 获取 pull 解析对象。基于android的rss新闻阅读器设计与实现
相关推荐
基于 Android 平台的电子词典的设计与实现。 课题现在的研究现状 Android 自出现以后,许多的软件开发人员就试图在该平台上开发各种各样的应用程序。 随着时间的推移,许多的手机应用软件也是相继的出现。 当然在人们的正常生活中扮演英语导师作用的电子词典的应用更是十分的普遍。 许多的学生用它来进行学习,许多的成年人用它来进行随时随地的查询等等。 由于 Android 的开源性,现在网上基于
rbyFlaggedBlocks = 0。 for (int previousRow = 1。 previousRow 2。 previousRow++) { for (int previousColumn = 1。 previousColumn 2。 previousColumn++) { if (blocks[currentRow + previousRow][currentColumn +
牌照,并正式开始运营 3G 业务,至此,我国进入到了 3G 时代。 Android 操作系统 Android,字面释义是“机器人”,它是 google 公司和开放手机联盟领导及开发的一款 以 Linux 系统为底层构建的 自由及开放源代码的手机操作系统。 这种操作系统主要用于智能手机和平板电脑之类的移动设备。 Android 操作系统最初是 google 公司从 Andy Rubin
文原文 ................................................................................................................................. 63 中文翻译 .........................................................
李娜(西安电子科技大学) 翻译 机械工业出版社 Android 端 ijetty 服务器开发 百度文库 2. 文件传输系统详细设计 文件传输系统结构图 基 于 B / S 架 构 的手 持 机 传 输 功 能P C 端A n d r o i d 手 机客 户 端 服 务 器局 域 网 图 工程化综合训练报告书 16 文件传输系统结构 模块 具体功能定义如下: 模块二 Ijetty servlet
以选择是否打开背景音乐; (3)游戏音效设置,玩家可以选择是否打开背景音乐; (4)分享 app,点击可以调用第三方社交 app 分 享祖玛游戏。 为了方便玩家的选择关卡,当玩家进入游戏之前会先进入选择关卡界面,这个关卡界面共有 9 个关卡供选择,并且显示每一关的最高分数记录,方便用户对比选择关卡。 具体功能如下 : (1)显示关卡信息,当前关卡数以及当前关卡的最高分; (2)选择需要开启的关卡