安卓数据库的实现与应用
App相关需求
- 我们想为APP设计一个较为完善的登录界面,这就需要一个所有客户端能够共同访问的存储空间来存储每个用户的信息,例如用户名、密码等等。
- 在我们APP的“自动导入课表和各科科代表布置的任务”这项功能中,我们也需要一个存储空间,使科代表能够上传任务,同学们能够接收任务。
探究过程
- 我们从搜索关键词“Android Studio登录 注册”开始,阅览并参考了网上许多实现了注册登录功能的博客,涉及到的内容包括:SQLite、MySQL、OKhttp
- 在经过摸索与了解,并向老师询问建议之后,我们SQLite的功能实现了一个简易的注册登录界面。然而,在我们的后续探索中发现,我们之前使用SQLite构造的数据库是挂载在程序本身的,如果继续使用SQLite,那么我们的其中一个需求,即“所有安卓客户端都能访问某个共同的存储空间”这一需求将难以达成。
- 随后,我们根据我们的需求进行进一步的研究,了解到了一个能够实现我们第一个需求的方法:搭建/购买服务器,在服务器上构建数据库,并通过某种方式将APP与服务器连接,并最终实现本地数据与服务器数据的同步。
- 但是在尝试使用MySQL之后,发现在三周内熟练掌握MySQL并将其与我们的开发需求结合较为困难,况且将MySQL和我们的APP进行连接也是个不小的难题,网上没有特别完善并且比较新的教程。
- 在咨询了上一届学长学姐们之后,我们得知他们有一个小组实现了云端数据库,而采用的是一个叫leancloud的一站式后端云服务提供商。在稍了解leancloud的功能与使用之后,我们认为leancloud的使用难度相对较低,并且提供的服务完全涵盖了我们的需求,因此我们决定使用leancloud来进行我们程序的数据存储、消息推送等涉及数据库的功能的开发。
关于LeanCloud的简介