# Android课设报告-Android博客阅读App
## 1.选题的目的与意义
### 1.1 面临的问题
随着CSDN,掘金,开源中国,知乎,简书,微信公众号,博客园等多个博客平台的发展,以及部分有名有水平的开发者的个人微信公众号与个人博客网站的发展,博客平台的发展可谓是百花齐放,这使得Android开发人员与程序设计初学者有十分丰富的渠道与途径去了解或学习相关技术知识。但从另一个方面来说,平台很多,文章和博客也很多,也带来了以下问题:
* 需要花费大量时间与精力去寻找优质博客文章与优质开源项目
* 大部分的文章都是零零散散,个人难以构成知识体系的整理博客
* 各个平台收藏的文章难以统一整理
* 对于个人技术层面的拓展与深入难以开展,缺乏知识扩散与小方面专攻的文章收集
### 1.2 开发目的与意义
Android博客阅读App就是为了解决上述一系列由于博客平台很多的问题所开发,集成上述的所有博客平台的优质博客与开源项目的资源,并将资源分门别类的整理。此外还可以收藏自己喜欢的博客,达到一个账号,收集所有平台的文章与开源项目的效果。
### 1.3 需完成的功能
通过使用 玩安卓网站官方开放的部分API,实现如下功能:
* 实现与自行搭建后端交互,包括登录,注册,获取指定用户的所有收藏的文章,删除一篇指定用户所收藏的文章。
* 首页实现每日文章推荐与常用导航Tab轮播图
* 导向页面实现知识体系,实现按照知识体系查找文章,比如开发环境,四大组件,常用控件,网络访问,图片加载,数据存储等44类博客文章。
* 导向页面实现拓维导航,收集了安卓开发学习中的常用网站,比如公司博客,开发社区,常用工具等28类网页。
* 项目页面实现按照项目类别分别推荐不同的博客及其开源项目,比如完整项目,资源聚合类,动画,RV列表动效,二维码等26种开源项目。
* 我的界面实现团队图片轮播,6个网站跳转链接:个人博客网站,个人码云首页,个人CSDN博客首页等
* 在首页/导向/项目页面中的博客均可查看与收藏,并在我的界面实现对收藏的博客进行查看与取消收藏处理。
## 2.技术方案论证
### 2.1 开发环境简介
#### 2.1.1移动端
Android博客阅读App使用Android Studio作为开发工具,使用Java作为开发语言。
#### 2.1.2服务器后端
Android博客阅读App后端使用IDEA作为开发工具,使用Java作为开发语言。
后端数据库使用常用的关系型数据库MySQL。
### 2.2 开发技术简介
#### 2.2.1 网络与解析相关相关技术:
* Retrofit:一个基于okHttp封装的网络请求库,在该Android博客阅读App中用于用户登录,注册和获取收藏的文章信息,获取app中的首页文章首推,导向页面中的所有分类标签信息,项目页面中的所有项目分类信息及其每个分类下对应的文章信息,我的页面中收藏的文章信息。
* Glide:一个源自Google的网络图片加载库,在该Android博客阅读App中用于加载项目图片,首页轮播图的加载。
* agentweb: 一个基于 Android WebView 高度封装的功能强大的web组件库 ,在该Android博客阅读App中用于加载每一篇博客或者开源项目对应的网页
* GSON:源自google的json解析库,在该Android博客阅读App中用于解析后端响应的JSON格式的字符串。
#### 2.2.2 UI界面相关技术:
* tabviewlibrary:一个开源的底部导航栏与fragment碎片适配方案。
* banner:图片轮播库,在该Android博客阅读App中用于加载首页轮播图。
* SmartRefreshLayout:一个开源下拉刷新特效布局,具有多种可自定义的刷新UI效果。
* flowlayout:流式布局,在该Android博客阅读App中用于加载导向页面中的所有标签
* butterknife:控件绑定框架,在该Android博客阅读App中用于绑定绝大部分的UI控件,简化代码。
* design库:安卓原生material design库,使用其中的cardView,recycleView,FloatingActionButton等
* cardView: 安卓原生material design库中的UI组件,适用于实现卡片式布局效果的重要控件
* recycleView:安卓原生material design库中的UI组件,Android 5.0推出的,是support-v7包中的新组件,它被用来代替ListView和GridView,并且能够实现瀑布流的布局,更加高级并且更加灵活,提供更为高效的回收复用机制,同时实现管理与视图的解耦合。在该Android博客阅读App中用于展示首页中每日文章首推的文章,导向页面的标签分类,项目页面中项目等
* listView:安卓原生的UI组件,以列表形式展示其具体数据内容的UI组件,在该Android博客阅读App中用于加载收藏的文章。
#### 2.2.3 移动端数据存储相关技术
SQlite:Android移动设备集成的一种轻量级数据库,在该Android博客阅读App中用于存储用户收藏的博客信息,包括收藏博客的网址,收藏博客的标题。
#### 2.2.4 后端相关技术
* SpringBoot: 简化Spring开发的,当下最流行的基于Java的web开发框架。
* MyBatis:一种支持定制化SQL,存储过程以及高级映射的持久层框架。
* MySQL: 一个开源的关系型数据库管理系统。
* Maven: 项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具。
## 3.App所使用API接口
### 3.1 自行搭建的后端提供的API接口
在使用SpringBoot+MyBatis+MySQL所编写的后端,运行至阿里云学生服务器中,提供了如下的接口:
| 接口名称 | 接口地址(含参数的为接口举例) | 请求方法 | 参数说明 |
| -------------------------------------- | ----------------------------------------------- | -------- | ------------------------------------------------------------ |
| 用户登录接口 | http://101.201.238.193:8081/user/login | POST | String类型账号userNumber;String类型密码password |
| 用户注册接口 | http://101.201.238.193:8081/user/register | POST | String类型帐号userNumber;String类型密码password |
| 添加指定用户对应的一条收藏文章数据接口 | http://101.201.238.193:8081/user/addArticle | POST | String类型账号userNumber;String类型收藏文章网址collectUrl;String类型收藏文章标题collectTitles |
| 获取指定用户对应的所有收藏文章数据接口 | http://101.201.238.193:8081/user/findAllArticle | POST | String类型账号userNumber |
| 删除指定用户对应的一条收藏文章数据接口 | http://101.201.238.193:8081/user/deleteArticle | POST | String类型账号userNumber;String类型收藏文章网址collectUrl |
### 3.2 所使用的开放API接口
在玩安卓官方网站:https://www.wanandroid.com/) 所使用的部分开放API如下:
| 接口名称 | 接口地址(含参数的为接口举例) | 请求方法 | 参数说明 |
| -------------------------------------- | ------------------------------------------------------ | -------------- | ------------------- |
| 首页轮播图banner接口 | https://www.wanandroid.com/banner/json | GET | 无 |
| 置顶文章接口 | https://www.wanandroid.com/article/top/json | GET | 无
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
通过使用 玩安卓网站官方开放的部分API,实现如下功能: 实现与自行搭建后端交互,包括登录,注册,获取指定用户的所有收藏的文章,删除一篇指定用户所收藏的文章。 首页实现每日文章推荐与常用导航Tab轮播图 导向页面实现知识体系,实现按照知识体系查找文章,比如开发环境,四大组件,常用控件,网络访问,图片加载,数据存储等44类博客文章。 导向页面实现拓维导航,收集了安卓开发学习中的常用网站,比如公司博客,开发社区,常用工具等28类网页。 项目页面实现按照项目类别分别推荐不同的博客及其开源项目,比如完整项目,资源聚合类,动画,RV列表动效,二维码等26种开源项目。 我的界面实现团队图片轮播,6个网站跳转链接:个人博客网站,个人码云首页,个人CSDN博客首页等 在首页/导向/项目页面中的博客均可查看与收藏,并在我的界面实现对收藏的博客进行查看与取消收藏处理。
资源推荐
资源详情
资源评论
收起资源包目录
基于Android实现博客阅读App【100012468】 (142个子文件)
gradlew.bat 2KB
.gitignore 203B
.gitignore 7B
build.gradle 3KB
build.gradle 632B
settings.gradle 15B
gradlew 5KB
gradle-wrapper.jar 53KB
NavigationDataBean.java 84KB
SystemBean.java 50KB
ProjectContentBean.java 33KB
HomePageArticleBean.java 30KB
SystemArticleBean.java 28KB
UserFragment.java 14KB
MainFragment.java 11KB
LeadFragment.java 10KB
WebFragment.java 10KB
ProjectCategoryFragment.java 8KB
TagsFragment.java 8KB
TopArticleBean.java 7KB
HotWebsitesBean.java 6KB
ProjectCategoryBean.java 6KB
ProjectArticleAdapter.java 4KB
LoginActivity.java 4KB
MainActivity.java 4KB
TagsAdapter.java 4KB
BannerBean.java 4KB
SqliteUtils.java 3KB
TopArticleAdapter.java 3KB
AboutAdapter.java 3KB
RegisterActivity.java 3KB
HotwordsBean.java 2KB
WanAndroidService.java 2KB
HttpUtil.java 2KB
LazyLoadFragment.java 2KB
FragmentFactoryUtil.java 2KB
ProjectArticleBean.java 2KB
WebActivity.java 2KB
CollectArticleAdapter.java 2KB
UserCollectArticleBean.java 1KB
TabPagerAdapter.java 1KB
UserService.java 1KB
ArticleBean.java 1KB
SaveAccount.java 1KB
LogUtil.java 1KB
MyHelper.java 1KB
TagsSimpleBean.java 1KB
DateUtil.java 1KB
RvAboutBean.java 1024B
CollectArticleBean.java 831B
NoScrollListView.java 783B
ExampleInstrumentedTest.java 730B
BannerSimpleBean.java 725B
GlideImageLoader.java 517B
ExampleUnitTest.java 384B
MessageBean.java 337B
iot.jpg 58KB
LICENSE 1KB
README.md 25KB
Android课设报告.pdf 2.26MB
makerlogo.png 513KB
me.png 140KB
ic_launcher_round.png 15KB
ic_launcher_round.png 10KB
ic_launcher.png 9KB
ic_launcher_round.png 7KB
ic_launcher.png 6KB
mayun.png 6KB
ic_launcher_round.png 5KB
ic_launcher.png 4KB
android.png 3KB
huawei.png 3KB
ic_launcher.png 3KB
ic_launcher_round.png 3KB
lead.png 3KB
collect.png 3KB
system.png 3KB
collect_normal.png 2KB
lead_no.png 2KB
system_no.png 2KB
user.png 2KB
ic_launcher.png 2KB
user_no.png 2KB
main.png 2KB
main_no.png 2KB
csdn.png 2KB
tree.png 2KB
navi.png 1KB
search.png 1KB
project.png 1KB
project_no.png 1KB
account_number.png 884B
password.png 736B
close.png 712B
right.png 698B
back.png 628B
cha.png 601B
more.png 480B
register.png 295B
login.png 293B
共 142 条
- 1
- 2
资源评论
神仙别闹
- 粉丝: 2672
- 资源: 7640
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功