在日常开发中,列表是一个非常常用的一个东西,可以用listview和recyclerview实现。当然,由于recyclerview更为实用且强大,它也是更好的方案。

而我以前为了方便,习惯直接拿网上代码改来用,自己就只写个okhttp获取数据,然后解析、适配等等却没有去搞清楚具体到底怎么用,导致难以满足个人开发的某些需求。因此昨天临时起意从listview开始从头学习。于是还是按照个人学习的老方法,从实践入手、根据需求学习技术,这就有了本文的标题——《从零开发一款txt小说下载器》。

昨晚,从几十个“笔趣阁”、“书包网”······选好了要取数据的网站,写好了demo,今早修好了bug,正准备进一步优化功能和开始写博客。结果就在20:23,就在刚才,我打开app,结果发现测试出错了。我在反复打开了好几遍测试了好几次后,觉得应该不是软件本身问题,认定应该是网站服务器出问题了(这种网站经常出问题然后维护、也经常被查封然后换服务器),一般短则半小时,长则几天。但是,没有经过查看又怎么能确定呢?

于是,这一查看,直接导致了这篇教程博客“流产”了,变成了一篇“水”博客。打不开是预料之中的,但是一百度“笔趣阁”、“书包网”。GG,搜索结果一片和谐,这就很难受了,本来还想换个网站的,核心代码也不怎么改,结果这把我后路都切断了,离谱!

再一回想今年五月份的时候,在开发一款下载付费歌曲的app时。当时是才新发布了新版本,结果不出几天QQ音乐就换链接了,换成了dl.stream.qqmusic.qq.com。当然,这不是很难受,因为需要拼接的音质、songid和vkey等等都还是换汤不换药,而vkey虽然麻烦一点,但之前核心已经写好了,改也不用改什么。QQ音乐之前的尿性一直是只换链接了事,感觉加密很水,网易云的接口是真的难扒,而QQ音乐,从普通品质到无损品质就像直接摆在你面前一样。

几个月前,我就是上面的那种想法。我也随之马上重新扒然后发布了更新,虽然当时已经临近高考了。

就在六月份,高考前的两周左右,我开始陆陆续续收到用户的反馈说不能用了,我还在学校里(住校)就一看,果然GG,然后上网去试别人开发的api,也不行。然后又找别人的扒接口教程(以前就是这么学的),发现依然无果。这就原地裂开!

后来,到现在,我选择用别人开发好的api。毕竟能力有限,且个人兴趣也不在扒东西上。六月份QQ音乐不仅换链接、还重新进一步加密,而且普通品质和其他品质分开了,这就导致了直到现在都还没有一个api能再解析出QQ音乐的高品质、无损品质的歌曲了。

有一说一,现成的api是真的香。一般都整合了主流平台,方便且统一。统一是真的香!!!就像github上的一些懒人专属库一样香。

但是,在用现成的东西之前,你需要考虑,这个东西是否属于你主要深入的方向,如果属于,那就自己搞吧(长篇大论不说了)。但这话并不是一定要用自己的轮子,你自己的轮子也没有别人那几个主流轮子效率高(那就不重复造轮子了),主要需要理解的是原理,是能够深入,能够提高自己的东西。深入着深入着、借鉴着学习着,说不定哪天你就也成为造轮子大佬了。至于不属于自己研究的方向的,凭你兴趣咯。

那么这篇水文就到这里了,等我再找到网站再重开真正的《从零开发一款txt小说下载器》。

从零开发一款txt小说下载器的更多相关文章

  1. 从零开发一款自己的小程序UI组件库(一)

    写在前面:有开发过小程序的朋友肯定知道组件化开发的特性,高内聚与低耦合.使用已有的UI组件库,诸如:vantUI-weapp.minUI-weapp等UI组件库的诞生使我们的开发速度大大的加快,丰富的 ...

  2. 手牵手,使用uni-app从零开发一款视频小程序 (系列上 准备工作篇)

    系列文章 手牵手,使用uni-app从零开发一款视频小程序 (系列上 准备工作篇) 手牵手,使用uni-app从零开发一款视频小程序 (系列下 开发实战篇) 前言 好久不见,很久没更新博客了,前段时间 ...

  3. 从零开发一款自己的小程序UI组件库(二)

    写在前面:从零开发一款自己的小程序UI组件库(一) 上节我们讲到初始化组件库模板.模板文件概述.模板上传npm以及npm包文件下载至本地并运用到项目.这节我们继续,内容主要有基础UI组件库的搭建(bu ...

  4. 手牵手,使用uni-app从零开发一款视频小程序 (系列下 开发实战篇)

    系列文章 手牵手,使用uni-app从零开发一款视频小程序 (系列上 准备工作篇) 手牵手,使用uni-app从零开发一款视频小程序 (系列下 开发实战篇) 扫码体验,先睹为快 可以扫描下微信小程序的 ...

  5. 星之小说下载器Android版

    原本是想在酷安上架的,然而审核不通过..只能通过网页方式宣传了 一款使用Jsoup开源库网络爬虫的APP,将在线阅读的小说解析,把小说全本下载为txt文件 由于使用爬虫技术,所以下载的速度不是很理想, ...

  6. 使用tkinter打造一个小说下载器,想看什么小说,就下什么

    前言 今天教大家用户Python GUI编程--tkinter 打造一个小说下载器,想看什么小说,就下载什么小说 先看下效果图 Tkinter 是使用 python 进行窗口视窗设计的模块.Tkint ...

  7. JavaFx应用 星之小说下载器

    星之小说下载器 说明: 需要jdk环境 目前只支持铅笔小说网,后续添加更多书源,还有安卓版,敬请期待. 喜欢的话,不妨打赏一波! 软件交流QQ群:690380139 断点下载暂未实现,小说下载途中,一 ...

  8. stars-one的原创工具——星之小说下载器(JavaFx应用 )

    星之小说下载器Kotlin版 基于星之小说下载器Java版重构的Kotlin版本 github地址 使用说明 确保电脑有jdk8+以上的环境,双击即可运行(win10系统),win7则需要输入命令ja ...

  9. 手把手教你5分钟从零开发一款简易的IDEA插件!项目经验/毕设不愁了!

    我这个人没事就喜欢推荐一些好用的 IDEA 插件给大家.这些插件极大程度上提高了我们的生产效率以及编码舒适度. 不知道大家有没有想过自己开发一款 IDEA 插件呢? 我自己想过,但是没去尝试过.刚好有 ...

随机推荐

  1. java什么是跨平台性?原理是什么?

    所谓跨平台性,是指java语言编写的程序,一次编译后,可以在多个系统平台上运行. 实现原理:Java程序是通过java虚拟机在系统平台上运行的,只要该系统可以安装相应的java虚拟机,该系统就可以运行 ...

  2. TP5单例模式操作Model

    tp5单例模式的代码实现 为什么要使用单例模式 使用单例模式实现逻辑处理与数据库操作分离能很大提升mysql的sql处理能力,并且易于维护 ArticleModel.php <?php name ...

  3. js常见错误类型及chrome常见报错(更新中)

    ECMA-262 定义了下列 7 种错误类型: 1.Error 错误 2.EvalError 全局错误 eval函数没有正确执行 3.RangeError 范围错误 4.ReferenceError ...

  4. Codeforces Round #179 (Div. 1 + Div. 2)

    A. Yaroslav and Permutations 值相同的个数不能超过\(\lfloor \frac{n + 1}{2} \rfloor\). B. Yaroslav and Two Stri ...

  5. dotnet 设计规范 · 抽象定义

    严格来说,只有一个类被其他的类继承,那么这个类就是基类.在很多时候,基类的定义是提供足够的抽象和通用方法和属性.默认实现.在继承关系中,基类定义在上层抽象和底层自定义之间. 他们充当抽象实现的实现帮助 ...

  6. Java中的元注解

    注解为我们在代码中添加信息提供了一种形式化的方法,使我们可以在稍后某个时刻非常方便地使用这些数据. 通过使用注解,我们可以将这些元数据保存在Java源代码中,并利用annotation API为自己的 ...

  7. H3C 传递信息(续)

  8. Laravel Form-builder使用

    添加formbuilder插件: Composer应用 composer require kris/laravel-form-builder 下载成功 修改配置文件 在config/app.php ‘ ...

  9. Vue 设置style属性

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. Python--day38--JoinableQueue解决生产者消费者模型

    ############################# # 在消费者这一端: #每次获取一个数据 #处理一个数据 #发送一个记号:标志一个数据被处理成功 #在生产者这一端: #每一次生成一个数据 ...