成都英创信息技术有限公司 Android Studio 应用开发简介 1 / 39 Android Stu dio 应用开发简介 英创公司 2017 年 8 月 2017 年 6 月,英创公司在ESM6802+10.1"LCD 的硬件平台上成功运行Android 7.1.1原生操作系统。2017 年 8 月, ESM6802 Android 版可以支持GPIO、 串口、以太网、U 盘。后续将进一步完善对CAN、 SPI、 I2C、 WIFI、 4G 等接口的支持。 Google 公司专门为开发Android 应用程序提供了集成开发环境Android Studio,涵盖了所有Android 应用开发相关的功能。Android 应用程序主要使用Java 语言编写,要用到开发工具集SDK( Softw are Development Kit,提供java 编译工具、Android 系统API 等,可以直接在Android Studio 中下载)。当应用程序中要直接访问硬件,或者需要提高运行效率时,需要将访问硬件、复杂逻辑部分使用C/C++实现。要在Android Studio 中开发编译C/C++代码,需要用到工具集NDK( Native Development Kit, 提供C/C++编译工具、API、打包工具等,可直接在Android Studio 中下载)。使用NDK 可以将C/C++源码编译成动态链接库,供 Java 调用。由于Java 语言要调用C/C++函数需要用到JNI( Java Native Interface)技术,这就要求使用NDK 开发C/C++时,C/C++源码要符合JNI 规范要求。 语言:C工具链: arm-linux-androideabi-4.9编译生成: .imgAPK语言:C/C++工具集:NDK编译生成: .so语言:Java工具集:SDK编译生成: .class应用层JNI层Kernel( driver)用户英创英创 图 1、 ESM6802 Android 版本工作分布图 成都英创信息技术有限公司 Android Studio 应用开发简介 2 / 39 为方便Android 用户专注于Android 应用层(Java 语言)的开发,英创公司对所支持的硬件接口均提供了符合JNI 规范的C/C++动态链接库,用户只需要加载英创的动态链接库,就可以在纯Java 语言环境中调用动态链接库中的函数,达到访问硬件资源的目的。如图 1 所示,用户的工作只是应用层的java 程序,英创已完成了其他部分工作。这篇文章会介绍Android Studio 的环境搭建,并以Step2_SerialPort 为例,来介绍使用Android Studio开发、调试、安装应用到ESM6802 的过程。英创对已支持的硬件接口提供对应的应用程序示例,包括C/C++部分的so 文件,供用户参考。 Android应用开发更详细的资料请参考开发者网站学习:https://developer.android.googl...