9

发布一款android版博客园官方app

 3 years ago
source link: https://zhuanlan.zhihu.com/p/146554953
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

发布一款android版博客园官方app

深圳it民工、全栈开发者

博客园创立于2004年1月,是一个面向开发者的知识分享社区。自创建以来,博客园一直致力并专注于为开发者打造一个纯净的技术交流社区,推动并帮助开发者通过互联网分享知识,从而让更多开发者从中受益。博客园的使命是帮助开发者用代码改变世界。

但是,博客园始终没有一款好用的android客户端!

v2-d6c54f341ae8135902103aaef937bb36_720w.jpg

实际上在18年的时候,我就已经做了一款博客园的app。

那是通过博客园官方提供的api做的,如果有兴趣的话可以通过审核密钥,使用他们的api自己开发博客园app。有两个非常严重的缺点:

1.功能不全面,很多功能无法实现,比如关注用户、分类获取个人博客列表、查看粉丝和关注、查看收藏......

2.个人原因bug有点多。

官方的api地址:

开发者中心_博客园​openapi.cnblogs.com

所以直接放弃使用官方提供的api的方式,使用爬虫的方式,抓取博客园内容,几乎需要的功能都实现了,如果你是一个博客园的铁粉,有更多功能也可以给我提提意见!

2.功能简介

录制了一个小视频!博客园app下载地址:

https://n802.com/file/26363582-447944781

博客园android客户端

1.博客模块

分类展示博客列表,可调整分类及排序。博客可以点赞、收藏、分享到第三方平台(目前仅支持微信朋友圈、微信好友、qq好友、qq空间、微信收藏)、评论博客、回复评论、查看评论。

博客园-分类展示博客博客园-编辑分类博客园app-查看博客详情

2.闪存模块

博主发表心情动态的一个功能,目前仅有三个分类,最新(ps:最新发布),精彩(ps:最新回复的),关注(个人关注的博主发表的闪存),支持发表闪存、回复闪存、分享到第三方平台。点击这个邮箱的图标还可查看回复他人的闪存、我发布的闪存、别人回复你的

博客园-闪存分类闪存详情

3.博问模块

主要功能是发布问题、回答问题的。有三个分类待解决、高奖励、已解决

博客园app-分类博问博客园app-博问详情

4.个人模块

主要包括以下功能:

  1. 我的消息,官方消息(ps:包括博客园团队发送的消息,系统消息);收件箱(ps:普通博主发送的消息);我的未读
  2. 阅读历史,历史浏览的博客,可删除,这里做的是一个本地的功能。
  3. 个人主页(ps:可直接去查看我的闪存、我的博问、我的博客(可分类查看、搜索),还有个人的相关信息。
  4. 我的收藏,个人收藏的博客、新闻、知识库....
  5. 我的动态,没发布一条博客、评论博客、发布闪存、发布博问、评论新闻都会产生一条动态。
  6. 粉丝和关注,可添加关注、取消关注。
博客园app-个人主页博客园app-个人主页博客园app-粉丝和关注

5.其他的一些功能

新闻、知识库、设置(退出登录、清除缓存、版本更新)、联系和反馈

3.使用的一些第三方库

Bugly:版本更新和异常收集

友盟分享:分享到第三方平台的集成库

Glide:Glide是一个非常成熟的图片加载库,他可以从多个源加载图片,如:网路,本地,Uri等,更重要的是他内部封装了非常好的缓存机制并且在处理图片的时候能保持一个低的内存消耗。

本地存储:sqlite-net-pcl

PhotoView.Android:图片放大查看

RestSharp:RestSharp是一个轻量的,不依赖任何第三方的组件或者类库的Http的组件。具体以下特性;

  1. 支持.NET3.5+,Silverlight 4, Windows Phone 7, Mono, MonoTouch, Mono for Android, Compact Framework 3.5等
  2. 通过NuGet方便引入到任何项目 ( Install-Package restsharp )
  3. 可以自动反序列化XML和JSON
  4. 支持自定义的序列化与反序列化
  5. 自动检测返回的内容类型
  6. 支持HTTP的GET, POST, PUT, HEAD, OPTIONS, DELETE等操作
  7. 可以上传多文件
  8. 支持oAuth 1, oAuth 2, Basic, NTLM and Parameter-based Authenticators等授权验证等
  9. 支持异步操作

Newtonsoft.Json:解析json

HtmlAgilityPack:是一个基于.Net的、第三方免费开源的微型类库,主要用于在服务器端解析html文档。

HtmlAgilityPack为网页提供了标准的DOM API和XPath导航。使用WebBrowser和HttpWebRequest下载的网页可以用Html Agility Pack来解析。

Xpath表达式的参考文档可见:http://www.w3school.com.cn/xpath/xpath_syntax.asp

FlyotabLayout:强大开源的第三方框架,美化TabLayout

4.上架app

博客园app apk下载地址:https://n802.com/file/26363582-447944781

上架的过程中,最快的三家是小米应用市场、魅族应用市场、华为应用市场。

https://appgallery1.huawei.com/#/app/C100207611​appgallery1.huawei.com

稍微慢一点就是阿里的分发平台,可以上架到豌豆荚和PP助手

倒闭的锤子应用市场也上架了,但是这个app很早就发布了2018年的时候,那时候我还在北京。时过境迁,签名文件掉了。目前锤子应用市场每天偶尔居然还有零星的1个下载量,签名文件掉了之后,其他的应用市场都可以更换签名,但是给锤子应用市场发邮件,了无音讯!

360手机助手,个人开发者其实可以上传app,但是这种类型的app需要公司资质,所以没有上传

另外还有一些应用市场也可以尝试,比如酷安,等等。

以上都是个人开发者可以上架的应用市场,不需要啥软著,如果上架的过程中有遇到问题,也可以和我交流!

还有一些个人开发者不允许上传app的

比如oppo、vivo、三星、中兴(这个不太清除)、百度的分发平台

最严格的就是应用宝,真是无语死了,审核的时候说这个博客园app属于社区类应用(ps:他们评判的标准是可以评论和回复评论),这一类应用需要一大堆证明材料,所以就没有上传。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK