1 Android Studio 概述
Android Studio 是一项全新的基于IntelliJ IDEA 的Android 集成开发和调试环境,与Eclipse Android 环境相比,具有如下优点:
• Intellij IDEA / Android Studio 的智能提示很强大;
• Android Studio 内置终端,方便以命令行方式操作;
• 布局代码与效果的实时(同步)预览;
• 软件版本的联机更新;
• 项目基于Gradle 的构建支持;
• 不仅提供了大量的组合键,还有众多快捷的设计工具、选择卡。
使用Android Studio 开发,推荐的计算机硬件配置要求如下:
• Intel i5 以上处理器:
• 8G 及以上内存;
• 128G 及以上固态硬盘(具有较快的启动速度)。
2 下载和安装Android Studio 3.1.2
访问Android Studio 中文社区http://www.android-studio.org ,可以找到Android Studio3.1.2 的下载链接。Android Studio 3.1.2 安装分为两个阶段,首先安装IDE (Android Studio) ,然后再安装Android SDK。
注意:
(1) Android Studio 相当于Java 或Java Web 开发中的eclipse 。
(2) Android SDK 提供了Android 应用开发所需要的软件包。
3 Android Studio 相关文件夹
Android Studio 安装完成后,自动创建的几个主要文件夹如下。
• AS 安装位置C:Program FilesAndroidAndroid Studio 。
• AS 自带JRE(1.8) C:Program FilesAndroidAndroid Studiojre 。
• Android SDK C:Users X X X AppDataLocalAndroidsdk 。
• 新建Android 项目的保存位置C:Users X X X AndroidStudioProjects,其中, X X X 为Windows 安装时设定的用户名。
注意: 以上路径均为默认路径,这些路径也可以根据用户的使用习惯自己更改。
4 Android SDK 与Android API
a. Android SDK
Android SDK 是Android 软件开发包( Software Development Kit) , 它提供了在Windows/Linux/MAC平台上开发Android 应用的组件和各种工具集。工具集不仅包括了Android模拟器,还有用来调试、打包和在Android 设备上安装应用的工具。
注意:
(1)在Android Studio 中打开某个项目后,其工具栏包含了SDK Manager工具,可以使用该工具对SDK组件进行更新(主要是下载和卸载)。
( 2 )在Android Studio 中如果不关联Android SDK ,则无法开发Android 应用程序。
在Android SDK 文件夹里,文件夹platforms 是主体,它是各版本开发组件的集合,包括android.jar、字体、res 资源、模板等内容。其中, android.jar 文件提供了用于开发Android 应用程序的编程接口(API)。
除了platforms 文件夹以外, SDK 文件夹还包含以下子文件夹。
• add-ons: 存放Android 的扩展库,如用于地图开发的Google Maps 。
• build-tools: 包含各版本的SDK 编译工具,如将.class 字节码文件转换成Android字节码.dex 文件的批处理程序dx.bat 、生成Android 设备进程间通信代码的应用程序aidl.exe 等。
• extras: 扩展开发包,如HAXM 加速。
• platform-tools: 包含各版本的SDK 通用工具,如用于将Android 手机连接到PC端的Android 调试桥(Android Debug Bridge, ADB) 程序adb.exe。又如数据库工具SQLite 。
• system-images: AVD 模拟器映像文件。
• sources: 存放Android API 的源码。
• tools: 包含avdmanager. bat 、sdkmanager.bat 和emulator.exe 等重要工具。
注意:
(1)只有下载Android 扩展库后,才会生成文件夹add-ons 。
(2)设直Android 应用的图标时,可以使用系统自带的图标库,这些图标文件就位于文件夹sdkplatformsandroid-19data esdrawable-hdpi 里。
(3)为了方便在命令行方式下使用adb 命令,一般应将文件夹platform-tools 的路径添加到系统环境交量path 里。
b. Android API 核心包
标准的Android API 包含在许多软件包里,而这些软件包又包含在文件android.jar里。下面介绍Android 开发中常用的软件包。
• android.util: 包含一些辅助类,如时间、日期的操作。
• android.text: 包含文本处理类。
• android.text. method: 提供为各种控件输入文本的类。
• android.os: 提供基本的操作服务、消息传递和进程间通信,提供了Binder、Handler、FileObserver、Looper和PowerManager等类。
• android.app: 实现Android 的应用程序模型,主要包含Activity 和Service 组件,另外还有对话框和通知等重要类。
• android. view: 提供基础的用户界面接口框架,是Android 的核心框架,包含类Menu 、View 、ViewGroup 及一系列监听器和回调函数。
• android. widget: 包含在应用程序屏幕中使用的各种UI 元素,通常派生自View 类,包括TextView 、EditText 、ImageView 、ListView 和Button 等控件。
• android.webkit: 默认浏览器操作接口,包含表示Web浏览器的类,主要有WebView、CacheManager 和CookieManager。
• android.content: 包含ContentProvider 组件,还有Context 和Intent 等重要类。
• android.content.pm: 实现与包管理器相关的类。包管理器包含各种权限、安装包、安装程序、安装服务、安装组件(如Activity) 和安装应用程序。
• android.content. res: 用于访问结构化和非结构化资源文件。主要的类包括AssetManager(用于结构化资源)和Resources。
• android.database: 实现抽象数据库的理念,提供了Cursor 接口。
• android.database.sqlite: 将SQLite 用于物理数据库,主要包括SQLiteOpenHelpert 、SQLiteDatabase 等类。
• android.provider: 提供一些类,访问Android 的ContentProvider ,如Contacts 、MediaStore 、Browser 和Settings 等。
• android.media: 提供一些类,管理多种音频、视频的媒体接口,包含MediaPlayer 、MediaRecorder 、Ringtone 、AudioManager 和FaceDetector。
• android.hardware: 实现与物理照相机相关的类。android.graphics.Camera 表示一种图形概念,与物理照相机完全无关。
• android. bluetooth: 提供一些类来处理蓝牙功能。主要的类包括BluetoothAdapter、BluetoothDevice、BluetoothSocket、BluetoothServerSocket和BluetoothClass。
• android.net: 提供帮助网络访问的类,实现基本的套接字级网络API。
• android.net. wifi: 管理WiFi 连接。
• android.telephony: 提供手机设备的通话接口,包含类CellLocation、PhoneNumberUtils和TelephonyManager。
• android. telephony.gsm: 可用于根据基站收集手机位置, 还包含负责处理SMS 消息的类。
• android.location: 定位相关类。
• com.google.android.maps: 包含类MapView 等Google 地图所需类。
• android.gesture: 包含处理用户定义的手势所需的所有类和接口。
• android.graphics: 底层的图形库, 包含画布、颜色过滤、点、矩形等。
• android.graphics.drawable: 实现绘制协议和背景图像, 支持可绘制对象动画。
• android.graphics.drawable.shapes: 实现各种形状。
• android.view.animation: 提供对补间动画的支持。
• android.opengl: 提供OpenGL 的工具,可3D 加速。
5 Android Studio 常用组合键
Android Studio 开发时,为了提高编辑效率,需要掌握的快捷操作如下。
• Alt+Enter: 在出现红色波浪线的地方使用,提供了许多问题的解决方案,如自动导包、自动生成接口方法和try...catch 块等。
• Ctrl+Alt+O: 优化己导入的包,清除不必要的包。
• Ctrl+D: 复制光标所在行的代码至下一行。
• Ctrl+Shift+/: 用于代码的注释和取消。
• Ctrl+Y: 删除光标所在的一行。
• 菜单Code → Reformat Code: 代码格式化(Ctrl+Alt+L 与QQ 快捷键冲突)。
• Ctrl+F12: 显示类成员和继承的方法。
• Ctrl+H: 打开类(或接口)继承关系图。
• Ctrl+O: 显示所有可以重写的父类方法(含接口方法)。
• Ctrl+Alt+T: 把选中的一组代码包在一块内,如if、for和try...catch 等。
• Alt+lnsert (MAC无Insert 键,可使用右键菜单→ Generate): 生成代码,如set/get方法、构造方法等。