2014年9月8日 八月十五 祝各位中秋节快乐

小巫断断续续花了几个星期的时间开发了这么一款应用——小巫CSDN博客,属于私人定制的这样的一款应用,整个客户端的数据全部来自本人博客,是通过爬取本人博客地址html页面,然后解析html把数据提取出来,整个客户端的技术难点主要是如何对html界面进行分析和使用Jsoup对html代码进行解析。目前本人的这款应用已经开发出来了,近段时间会提交应用商店进行审核,不久大家就可以看到这么一款逼格满满的客户端上线了。

本篇博客是关于这款应用的开发的起始篇,主要简单介绍一下整个项目的概况,整体大纲如下:

1. 项目起因

2. 项目效果展示

3. 项目文档结构和依赖库说明

4. 项目功能简介

5. 系列博客分享后期计划

一、项目起因

笔者开发这么一款客户端也是兴趣使然,因为CSDN官方并没有一款可供笔者实用的客户端,笔者就想着如何来开发一款客户端让自己方便在手机上查看博文,寻找了一圈,后来在CSDN博客上发现了一位大神所开发的CSDN资讯的客户端,并研究了其里面的实现。本人博客的主界面效果跟资讯客户端类似,只是进行了相关的调整,使其适应笔者所需要的效果。这里还得感谢那位大神的开源,我才有机会去开发关于博客的客户端,因为通过研究它的使用技术,让我有了思路去分析博客html代码,这样才有了这款应用的诞生。开源能促使人进步,所以小巫最后会把整个项目无私开源出来,让大家有一个很好的参考去开发这样的客户端。

这里要说一下CSDN开放平台,因为这个客户端属于私人定制的,所有的数据只来自本人博客,如果想开发适合大众使用的,唯有通过调用CSDN为开发者提供的接口,这里很遗憾的告诉大家,笔者尝试过与CSDN技术沟通,但并未得到满意的答复,CSDN开放平台目前暂时不能提供接口让我们使用,所以只能等待了。

二、项目效果展示

没图没真相,大家自然是当我凭口说空话,下面是小巫CSDN博客的界面效果截图:

主界面

侧边栏

博文详细内容

博文评论列表

三、项目文档结构与依赖库介绍

 
com.xiaowu.blogclient ——项目包名,存放界面相关代码
com.xiaowu.blogclient.adapter——存放内容适配器代码
com.xiaowu.blogclient.model——存放数据模型定义代码
com.xiaowu.blogclient.net——存放网络操作代码
com.xiaowu.blogclient.umeng——存放友盟组件相关代码
com.xiaowu.blogclient.util——存放工具类代码
com.xiaowu.blogclient.view——存放自定义控件代码
 
依赖库
 
这个截图展示的是,笔者项目使用的SDK版本和所有依赖库项目,这里分别介绍一下
 
gesture-imageview——可以手势操作的ImageView
imageloadlibrary——异步加载网络图片的库
viewPagerlibrary——视图页面切换的库
XListView——下拉刷新和上拉刷新的库
slidingmenu_library——侧滑菜单的库
 
这些库都是需要事先Import到工作空间,然后通过addLibrary关联到项目中去。
 
 
 

四、项目功能简介

本人这个客户端主要包含以下几个功能:
1. 分类获取博主博文列表
2. 查看博文详细内容
3. 查看博文评论列表
4. 软件自动更新
5. 社会化组件分享
6. 广告条、插屏广告
 
自然最重要的还是最后那一项功能,各位开发者幸幸苦苦开发一款应用自然想获取一定回报,笔者后面会以博文形式详细给大家介绍如何集成广告,然后获取一定的收益。
 
 

五、系列博客分享后期计划

笔者为了让初学者或者想更加清晰的了解整个客户端的开发细节,会发布一系列博文来介绍相关内容,比如如何分析和解析html代码,如何集成第三方组件,发布广告获取收益等等。一系列的干活,我想都是开发者比较想要看到的内容,笔者牺牲自己空余时间来做这样一件事情,是很高兴得到大家的关注和支持,为了不愧对大家的关注,为了传播真诚、分享、共赢的信念,做这些事情就是值得的,价值的体现才是创造的原动力。
 
 
最后项目已经开源,各位可以到笔者的github下载:https://github.com/devilWwj/CSDN-Blog-Client
由于本人的能力有限,项目可能有很多没有完善的地方,或者存在bug,后期笔者会继续完善和更新版本,谢谢大家。

Android应用开发-小巫CSDN博客客户端开发开篇的更多相关文章

  1. Android应用开发-小巫CSDN博客client之显示博文具体内容

    Android应用开发-小巫CSDN博客客户端之显示博文具体内容 上篇博文给大家介绍的是怎样嵌入有米广告而且获取收益,本篇博客打算讲讲关于怎样在一个ListView里显示博文的具体信息.这个可能是童鞋 ...

  2. Android应用开发-小巫CSDN博客client之获取评论列表

    Android应用开发-小巫CSDN博客客户端之获取评论列表 上一篇博客介绍了博文具体内容的业务逻辑实现,本篇博客介绍小巫CSDN博客客户端的最后一项功能.获取评论列表,这个功能的实现跟前面获取文章列 ...

  3. Android应用开发-小巫CSDN博客client之嵌入有米广告

    Android应用开发-小巫CSDN博客client之嵌入有米广告 上一篇博客给大家介绍怎样集成友盟社会化组件,本篇继续带来干货,教大家怎样嵌入广告到应用中去.小巫自称专业对接30年,熟悉各大渠道SD ...

  4. Android应用开发-小巫CSDN博客clientJsoup篇

    Android应用开发-小巫CSDN博客clientJsoup篇 距上一篇博客已经过去了两个星期,小巫也认为很抱歉,由于在忙着做另外一个项目,差点儿抽不出空来,这不小巫会把剩下的博文全部在国庆补上.本 ...

  5. 基于Netbeans的安卓Android开发环境配置 - CSDN博客

    原文:基于Netbeans的安卓Android开发环境配置 - CSDN博客 基于Netbeans的安卓Android开发环境配置 一.准备工作 NetBeans 勾选网页中的Accept-选择对应系 ...

  6. iOS开发的知名大牛博客小汇

    王巍的博客:王巍目前在日本横滨任职于LINE.工作内容主要进行Unity3D开发,8小时之外经常进行iOS/Mac开发.他的陈列柜中已有多款应用,其中番茄工作法工具非常棒.http://onevcat ...

  7. 小议common lisp程序开发流程 - Ever 17 - 博客频道 - CSDN.NET

    小议common lisp程序开发流程 - Ever 17 - 博客频道 - CSDN.NET 小议common lisp程序开发流程 分类: lisp 2011-04-17 20:59 1316人阅 ...

  8. 敏捷开发用户故事系列之十一:CSDN博客用户故事分析

    这是敏捷开发用户故事系列的第十一篇.(栏目目录) 经常有人问起有没有完整的用户故事案例.本人在网上找了一下,大约能找到两三篇,但多数只是为了描述用户故事的语法而已,都不涉及用户故事的颗粒度.大量故事的 ...

  9. 安卓开发:简单的登陆跳转_APK实现直接跳转到本CSDN博客

    最近在开始接触Android APP开发,有了一点java基础之后,安卓代码确实看起来就没有那么难了,可以跟着书上把例程敲一遍,然后熟能生巧可以应用起来,现在写了一个简单的APP,实现的是Edit编辑 ...

随机推荐

  1. POJ 3469 最小割 Dual Core CPU

    题意: 一个双核CPU上运行N个模块,每个模块在两个核上运行的费用分别为Ai和Bi. 同时,有M对模块需要进行数据交换,如果这两个模块不在同一个核上运行需要额外花费. 求运行N个模块的最小费用. 分析 ...

  2. P1627 中位数

    P1627 中位数 题目描述 给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b.中位数是指把所有元素从小到大排列后,位于中间的数. 输入输出格式 输入格式: 第一行为两个正整 ...

  3. 浅谈CSS中的百分比

    结论: 标准流中的元素,看其属性有没有继承性.对于width和margin-left,它是可以继承的,它会参照父元素或者祖先元素(其实是包含块):对于height,它没有继承性,父元素或者祖先元素会自 ...

  4. 解决子线程操作UI的方法

  5. luogu3193 [HNOI2008]GT考试

    there #include <iostream> #include <cstdio> using namespace std; int n, m, mod, nxt[25], ...

  6. hdoj--1045<dfs&二分图最大匹配>(这里是dfs解法)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1045 题目描述: 在矩阵中放车,车可四面攻击,矩阵中有墙,可以防止攻击,给出墙的位置,输出最多可以放多 ...

  7. oracle中查询BLOB

    1. 2.

  8. DataSet中的表动态设置主键外键的方法

    原文发布时间为:2008-08-01 -- 来源于本人的百度文章 [由搬家工具导入] protected void pk_Click(object sender, EventArgs e)    {  ...

  9. 35深入理解C指针之---结构体基础

    一.结构体基础 1.定义:结构体大大加强了C的数据聚合能力,可以使得不同类型的数据进行结合 2.特征: 1).结构体可以使得不同类型的数据进行结合 2).结构体可以使用内置的数据类型,包括指针 3). ...

  10. docker mysql 导入导出数据

    导出数据 1.导出mysql单张表结构和数据: docker exec -it my-mysql mysqldump dbname -uroot -p123456 --tables tname > ...