前言
Android是Google公司开发并维护的一个移动操作系统平台。该平台以Linux内核为基础进行构建,系统构成中包含大量的开源软件工具。2007年至今, Android系统已经发布了多个版本;2018年发布的版本9(API 28)是当前最新的稳定版本。Android开源项目(Android Open Source Project,AOSP)主要以Apache开源软件许可为基础,提供Android系统的核心程序,并能支持和帮助用户实现系统的定制和扩展。目前,Android系统可以在智能手机、平板电脑、智能手表和电视、车载应用等环境中运行,而且,相关应用已经延伸到个人计算机、游戏主机、数码相机等领域。因此,Android应用程序开发也是应用开发领域中较为热门的一个方向。
Android应用开发一直以Java和XML为主要的开发语言。2017年Google公司正式宣布Kotlin为官方支持的开发语言,这也为Android应用开发提供了另一种以Kotlin和XML为主的程序实现模式。Kotlin语言具有简洁、安全、支持跨语言互操作等技术特征。Kotlin语言的引入,提高了程序开发的效率,并在一定程度上简化了应用的实现过程。然而,新兴技术的引入也会促使工程人员改变他们的工作方式,这意味着,工程人员需要首先了解并掌握有关的技术和方法,才能在工程实践中合理使用该新兴技术。鉴于此,本书以Kotlin为基础,分析讨论Android应用程序开发相关的方法和技巧,并期望通过有关内容展示Kotlin的技术特点,总结基于Kotlin构建Android应用程序的技术方法。
本书所涉及的技术包含Kotlin语言、Android界面实现、多线程编程、数据持久化、应用服务和传感器技术等,主要内容被组织成11个章节。其中,薛岗老师主要完成第1章至第10章的内容,周维老师负责完成第11章的内容。云南大学软件学院硕士研究生武丽雯、王佳伟、刘峻松、刘惠剑负责完成本书附录、章节练习题的设计和习题参考答案的整理工作;其中,刘惠剑完成附录A、附录B、第1章至第2章的习题设计与参考答案的整理工作;王佳伟完成第3章至第6章,及第11章的习题设计与参考答案的整理工作;刘峻松完成第7章至第10章的习题设计与参考答案的整理工作;武丽雯负责完成全书所有章节练习题的审查与参考答案的校对工作。另外,杨亦昆同学参与了本书的校稿工作。
本书在编写和修订过程中,得到了云南大学软件学院姚绍文教授、刘璟老师的指导和关注;同时,本书的出版得到了人民邮电出版社高等教育出版分社刘博等老师的大力支持和帮助。在此向他们表示诚挚的感谢。
本书由云南大学“工业4.0及云南的对策研究”(编号:KS161006)项目支持出版。由于作者水平和经验有限,书中缺点、不足在所难免,恳请读者批评指正。
编者
2018年4月