####前言

  • 自从google将kotlin作为亲儿子后就想用它撸一管app玩玩,由于工作原因一直没时间下手,直到项目上线后才有了空余时间,期间又由于各种各样烦人的事断了一个月,现在终于开发完成
  • 项目分为服务器和客户端;服务器用Spring-boot+mysql+mybatis,客户端100%kotlin ####开发工具
  • 移动端:不用多说,下载一个AndroidStudio3.0 自带了kotlin编译,我用的是3.0 Canary8,现在好像已经更新到3.0Beta6了,下载地址:https://developer.android.google.cn/studio/preview/index.html

下载到的是离线包,打开后和你原来3.0一下版本共用一个sdk就行了,不用额外下载

  • 服务器端:当然是IDEA了,开发界面和AndroidStudio没什么区别,毕竟studio是基于IDEA做的,下载地址: https://www.jetbrains.com/idea/download/#section=windows

下载完成后破解下就可以用了

  • 服务器篇

参考这篇文章:http://www.jianshu.com/p/99fcead32d35 根据他这个种子项目的基础上搭建自己的开发环境。

  • 数据库表: 1、用户表(user):保存用户信息及请求数据的token 2、文章表(article):每日更新的文章数据 3、杂志期刊表(magazine):往期杂志

  • 接口说明 1、 user表接口

    接口 说明 参数 请求类型
    /user/register 注册新用户 username、email、password POST
    /user/login 用户登陆 username/email、password POST
    /user/update 修改用户信息 token、password/sign/sex POST
  • ######修改用户信息根据传递的参数来确定修改的字段,可以修改密码、用户展示在前端的个性签名、性别这三个字段,其中根据token去匹配用户 2、article表

| 接口 | 说明 |参数 |请求类型| | -------------| --------------|-----|-----| |article/list|获取文章列表|token、rand、page、size|POST/GET| |article/content/|获取文章内容|token、id|POST/GET|

  • 文章的获取需要user表中的token,如果token不存在,说明用户没注册,则不返回数据,rand表示是否随机rand=0:按顺序获取,这时候分页参数page和size有效,rand=1则随机返回十篇文章数据

3、magazine表

| 接口 | 说明 |参数 |请求类型| | -------------| --------------|-----|-----| |article/list|获取文章列表|token、name、period|POST/GET| |article/content/|获取文章内容|id|POST/GET|

  • 杂志列表获取 跟前面一样也需要token name表示杂志名称,目前数据库存的杂志有:读者、意林、意林少年版、意林原创版、故事会、轻小说、故事林,所以name只能是这几个中的其中一个;period表示期刊,格式为 xxxx年第xx期 比如2017年第04期,如果period不传的话返回当前杂志的所有期刊列表,如果不为空,则返回当前期刊的文章列表
  • 服务器我部署在自己家里的电脑上 地址是 http://limhgeek.vicp.io:31491

  • 下面用Postman测试接口 1、用户注册接口:

2、登陆接口:3、随机文章获取接口

效果不错,妥妥的。想练手的同学可以借用我这个数据源


  • ####移动端 细节就不多说了,自己看看代码 代码地址:https://git.oschina.net/Tdnr/Readers.git 最终实现效果图:

转载于:https://juejin.im/post/5a31dc4d5188254dd93668cd

从零开始撸一个Kotlin Demo相关推荐

  1. 从零开始撸一个Fresco之内存缓存

    转载请注明出处 Fresco源代码文档翻译项目请看这里:Fresco源代码翻译项目 这个项目会不断更新想学习Fresco源代码的同学一定不要错过. 之前文章的链接:从零开始撸一个Fresco之硬盘缓存 ...

  2. 用Kotlin撸一个图片压缩插件-插件基础篇(二)

    简述: 前两天写了篇用Kotlin撸一个图片压缩插件-导学篇,现在迎来了插件基础篇,没错这篇文章就是教你如何一步一步从零开始写一个插件,包括插件项目构建,运行,调试到最后的上线发布整个流程.如果你是插 ...

  3. 用Kotlin撸一个图片压缩插件-实战篇(三)

    简述: 由于个人原因,已经有很长一段时间没有写过文章,有句话是那么说的只要开始就不会太晚,所以我们开始<用Kotlin撸一个图片压缩插件>系列文章最后一篇实战篇.实际上我已经把源码发布到了 ...

  4. 用Kotlin撸一个图片压缩插件ImageSlimming-导学篇(一)

    简述: 很久没有发布Kotlin的实战相关的内容,这段时间在折腾Intellij IDEA的插件开发,折腾出了几个小插件,因为最近公司业务分离,原来堆在基础业务那边模块,都以模块的形式抽离出来,独立仓 ...

  5. 童年经典回忆 | 从零开始带大家用Python撸一个魔塔小游戏呀(2)

    导语 上一期我们带大家完成了魔塔游戏每一层的初始化画面的制作: 童年经典回忆 | 从零开始带大家用Python撸一个魔塔小游戏呀(1) 这一期我们会带大家进一步复现我们的魔塔小游戏,主要内容包括英雄类 ...

  6. 童年经典回忆 | 从零开始带大家用Python撸一个魔塔小游戏呀(3)

    导语 上一期我们主要带大家写了勇士类,以及勇士与一些简单的地图元素接触时所触发的事件: 童年经典回忆 | 从零开始带大家用Python撸一个魔塔小游戏呀(2) 这一期我们会带大家进一步复现我们的魔塔小 ...

  7. 从零开始撸音乐播放器(源码可下载)

    演示视频 哈哈,自己是真的弱.被生活狠狠打脸了. Java课设要搞音乐播放器.然而老师只讲了输入输出啥的,其他自学. 从零开始撸代码. 1 .从sound,到AppletPlayer又到Player. ...

  8. python写一个游戏多少代码-使用50行Python代码从零开始实现一个AI平衡小游戏

    集智导读: 本文会为大家展示机器学习专家 Mike Shi 如何用 50 行 Python 代码创建一个 AI,使用增强学习技术,玩耍一个保持杆子平衡的小游戏.所用环境为标准的 OpenAI Gym, ...

  9. 利用 Laravel 花 2 小时撸一个 RSS 生成器

    Wait no longer! Create RSS feeds for all websites you care about and read them from the comfort of y ...

最新文章

  1. python3 AES 加解密
  2. listview刷新,延迟加载,用单行刷新取代notifyDataSetChanged
  3. Linux系统中添加硬盘,并挂载到已有的目录,比如/home/user
  4. Android 基础 —— 活动的启动模式
  5. java中计算平均成绩_Java计算平均成绩
  6. python pip download_Python Pip 参考手册 - pip download 命令
  7. c语言-命令行选项_全国计算机等级考试二级C语言
  8. PHP教程 数据库和MySQL,PHP与MYSQL数据库连接教程分享
  9. 一起谈.NET技术,asp.net 页面转向 Response.Redirect, Server.Transfer, Server.Execute的区别...
  10. quartus仿真21:JK触发器和D触发器实现110序列探测器
  11. linux 取文件字节数,如何在Linux上的C中获取文件中的字符数(而不是字节数)
  12. 计算机二级第24套Excel解析,Excel | 操作题第 24 套
  13. 与时俱进的迅捷多功能转换器
  14. 常用优化六、时间换空间和空间换时间
  15. PS与CSS字间距转换
  16. MySQL高级SQL语句
  17. Mesh Baker的基本操作与功能演示
  18. 6-3 在一个数组中实现两个堆栈 (22分)
  19. 明尼苏达员工满意度量表包括哪些内容?
  20. 16nm粒径的规则球形纳米金粒AuNPs-CPE-香兰素/Tf-金纳米海胆的制备方法

热门文章

  1. N Queen(代码、分析、汇编)
  2. 打包mac应用_把网址链接打包成电脑软件的制作方法
  3. 3说明书_知行翻译:做化妆品说明书翻译时,这3点需要谨记
  4. met40如何升级成鸿蒙系统,再见了,EMUI11!你好,华为鸿蒙!
  5. linux孟庆昌第六章课后题_第六章课后练习题答案
  6. I/O复用之 epoll
  7. linux操作系统之线程
  8. C++单例模式简单实现
  9. 剑指offer面试题:替换空格
  10. C库函数与系统函数的关系