從零開始擼一個Kotlin Demo

####前言

  • 自從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、passwordPOST
    /user/login用戶登陸username/email、passwordPOST
    /user/update修改用戶信息token、password/sign/sexPOST
  • ######修改用戶信息根據傳遞的參數來確定修改的字段,可以修改密碼、用戶展示在前端的個性簽名、性別這三個字段,其中根據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

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/391862.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/391862.shtml
英文地址,請注明出處:http://en.pswp.cn/news/391862.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

移動平均線ma分析_使用動態移動平均線構建交互式庫存量和價格分析圖

移動平均線ma分析I decided to code out my own stock tracking chart despite a wide array of freely available tools that serve the same purpose. Why? Knowledge gain, it’s fun, and because I recognize that a simple project can generate many new ideas. Even t…

敏捷開發創始人_開發人員和技術創始人如何將他們的想法轉化為UI設計

敏捷開發創始人by Simon McCade西蒙麥卡德(Simon McCade) 開發人員和技術創始人如何將他們的想法轉化為UI設計 (How developers and tech founders can turn their ideas into UI design) Discover how to turn a great idea for a product or service into a beautiful UI de…

在ubuntu怎樣修改默認的編碼格式

ubuntu修改系統默認編碼的方法是:1. 參考 /usr/share/i18n/SUPPORTED 編輯/var/lib/locales/supported.d/* gedit /var/lib/locales/supported.d/localgedit /var/lib/locales/supported.d/zh-hans如:more /var/lib/locales/supported.d/localzh_CN GB18…

JAVA中PO,BO,VO,DTO,POJO,Entity

https://my.oschina.net/liaodo/blog/2988512轉載于:https://www.cnblogs.com/dianzan/p/11311217.html

【Lolttery】項目開發日志 (三)維護好一個項目好難

項目的各種配置開始出現混亂的現象了 在只有一個人開發的情況下也開始感受到維護一個項目的難度。 之前明明還好用的東西,轉眼就各種莫名其妙的報錯,完全不知道為什么。 今天一天的工作基本上就是整理各種配置。 再加上之前數據庫設計出現了問題&#xf…

leetcode 567. 字符串的排列(滑動窗口)

給定兩個字符串 s1 和 s2,寫一個函數來判斷 s2 是否包含 s1 的排列。 換句話說,第一個字符串的排列之一是第二個字符串的子串。 示例1: 輸入: s1 “ab” s2 “eidbaooo” 輸出: True 解釋: s2 包含 s1 的排列之一 (“ba”). 解題思路 和s1每個字符…

靜態變數和非靜態變數_統計資料:了解變數

靜態變數和非靜態變數Statistics 101: Understanding the different type of variables.統計101:了解變量的不同類型。 As we enter the latter part of the year 2020, it is safe to say that companies utilize data to assist in making business decisions. F…

代碼走查和代碼審查_如何避免代碼審查陷阱降低生產率

代碼走查和代碼審查Code reviewing is an engineering practice used by many high performing teams. And even though this software practice has many advantages, teams doing code reviews also encounter quite a few code review pitfalls.代碼審查是許多高性能團隊使用…

Zabbix3.2安裝

一、環境 OS: CentOS7.0.1406 Zabbix版本: Zabbix-3.2 下載地址: http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm MySQL版本: 5.6.37 MySQL: http://repo.mysql.com/mysql-community-release-el7-5.noarch.r…

Warensoft Unity3D通信庫使用向導4-SQL SERVER訪問組件使用說明

Warensoft Unity3D通信庫使用向導4-SQL SERVER訪問組件使用說明 (作者:warensoft,有問題請聯系warensoft163.com) 在前一節《warensoft unity3d通信庫使用向導3-建立WarensoftDataService》中已經說明如何配置Warensoft Data Service,從本節開始,將說明…

01-gt;選中UITableViewCell后,Cell中的UILabel的背景顏色變成透明色

解決方案有兩種方法一 -> 新建一個UILabel類, 繼承UILabel, 然后重寫 setBackgroundColor: 方法, 在這個方法里不做任何操作, 讓UILabel的backgroundColor不發生改變.寫在最后, 感謝參考的出處:不是謝志偉StackOverflow: UITableViewCell makes labels background clear whe…

leetcode 703. 數據流中的第 K 大元素(堆)

設計一個找到數據流中第 k 大元素的類(class)。注意是排序后的第 k 大元素,不是第 k 個不同的元素。 請實現 KthLargest 類: KthLargest(int k, int[] nums) 使用整數 k 和整數流 nums 初始化對象。 int add(int val) 將 val 插…

不知道輸入何時停止_知道何時停止

不知道輸入何時停止In predictive analytics, it can be a tricky thing to know when to stop.在預測分析中,知道何時停止可能是一件棘手的事情。 Unlike many of life’s activities, there’s no definitive finishing line, after which you can say “tick, I…

移動認證_如何在移動設備上實施安全的生物特征認證

移動認證by Kathy Dinh凱西丁(Kathy Dinh) 如何在移動設備上實施安全的生物特征認證 (How to implement secure Biometric Authentication on mobile devices) A quick search for React Native biometric authentication would give you several tutorials. That was the fir…

[Luogu1890]gcd區間

原題鏈接https://www.luogu.org/problem/show?pid1890 暴力中的暴力。 對于每一組詢問l..r,我們先循環暴力枚舉l..r中最大值到1,再暴力循環l..r的每一個數,判斷前一重循環能否整除后一重,如果全部都能,則可判定它就是…

Android Studio自定義模板 做開發竟然可以如此輕松 后篇

###1.概述 最近有很多人反饋,有些哥們不喜歡看文字性的東西,還有一些哥們根本就不知道我在搞啥子,那么以后我就采用博客加視頻的方式,我們可以選擇看視頻講解:http://pan.baidu.com/s/1i5uh2uD   內涵段子項目資料及…

ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked.

ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. 解決方案: 異步更新(建議使用)強制進行變更檢測,但是會觸發子組件的變更檢測,再次導致父組件屬性改變Parent.Component.…

leetcode 119. 楊輝三角 II

給定一個非負索引 k,其中 k ≤ 33,返回楊輝三角的第 k 行。 在楊輝三角中,每個數是它左上方和右上方的數的和。 示例: 輸入: 3 輸出: [1,3,3,1] 解題思路 因為楊輝三角的下層由上一層決定,所以只需要保存上一層的元素&#x…

掌握大數據數據分析師嗎?_要掌握您的數據嗎? 這就是為什么您應該關心元數據的原因...

掌握大數據數據分析師嗎?Either you are a data scientist, a data engineer, or someone enthusiastic about data, understanding your data is one thing you don’t want to overlook. We usually regard data as numbers, texts, or images, but data is more than that.…

react 使用 mobx_如何使用React和MobX狀態樹構建基于狀態的路由器

react 使用 mobxby Miles Till由Miles Till 如何使用React和MobX狀態樹構建基于狀態的路由器 (How to build a state-based router using React and MobX State Tree) Introducing mobx-state-tree-routerMobx狀態樹路由器簡介 If you want to skip ahead to the finished ex…