工具名称 | 用途 | 下载地址 |
---|---|---|
JDK | Java开发工具包(建议11及以上) | Oracle官网 / AdoptOpenJDK |
Android Studio | 官方集成开发环境 | 开发者官网 |
Android SDK | 安卓软件开发工具包 | 通过Android Studio自动下载 |
JAVA_HOME
https://mirrors.aliyun.com/gradle/
)特性 | Kotlin | Java |
---|---|---|
空安全 | 强制非空类型检查 | 需手动处理NullPointerException |
语法简洁度 | 减少50%代码量 | 传统面向对象语法 |
扩展性 | 支持函数式编程 | 需第三方库支持 |
协程支持 | 原生支持 | 需Kotlin协程库 |
示例代码对比:
// Kotlin按钮点击事件 button.setOnClickListener { textView.text = "Hello Kotlin" } // Java按钮点击事件 button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { textView.setText("Hello Java"); } });
app/ ├── src/ │ ├── main/ │ │ ├── java/ # Kotlin/Java源码 │ │ ├── res/ # 资源文件 │ │ │ ├── layout/ # 布局文件 │ │ │ ├── drawable/ # 图片资源 │ │ │ ├── values/ # 字符串/颜色等 │ │ └── AndroidManifest.xml # 应用配置文件 ├── build.gradle # 模块级构建配置
组件类型 | 用途 | 生命周期方法 |
---|---|---|
Activity | 应用主窗口 | onCreate(), onStart(), onResume() |
Service | 后台任务处理 | onCreate(), onBind(), onDestroy() |
BroadcastReceiver | 接收系统广播 | onReceive() |
ContentProvider | 数据共享接口 | 未定义标准生命周期 |
优化类型 | 具体措施 |
---|---|
启动优化 | 减少Splash屏耗时,使用懒加载 |
内存优化 | 及时释放Bitmap,避免内存泄漏 |
耗电优化 | 合理使用JobScheduler,限制后台服务 |
包体积优化 | 启用ProGuard混淆,删除无用资源 |
症状:报错”Could not resolve all files…”
解决方案:
build.gradle
文件版本号是否正确gradle-wrapper.properties
).gradle
缓存目录重新下载症状:不同分辨率设备显示异常
解决方案:
Q1:Android Studio中的Gradle与Maven有什么区别?
A1:Gradle是Android项目的构建系统,而Maven是Java项目的依赖管理工具,主要区别:
implementation 'com.google.code.gson:gson:latest.release'
)Q2:ConstraintLayout相比其他布局有什么优势?
A2:ConstraintLayout的核心优势: