01-初识安卓

2022/5/29 23:20:30

本文主要是介绍01-初识安卓,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录
  • AndroidStudio
    • 项目视图
    • gradle
    • 各种xml
      • R类
    • 四大模块
      • Activity
    • 阶段性心得

它山之石,可以攻玉。
本人以VS和C#熟悉者视角总结安卓开发知识。

AndroidStudio

项目视图

与VS的解决方案视图类似,AS也有项目视图用于显示项目的结构。默认应该在窗口左边。
不同的是,它可以在几种显示模式中切换。Android模式时是以一种逻辑分类显示资源,不代表真实的文件层级。切换为Project模式才是真实的文件目录结构。

gradle

个人认为是一个包管理和构建工具。
较现代的项目管理方式都存在包管理的概念。像旧的C++或C#项目都是手动下载库和添加引用。而现在都使用各种包管理工具来下载库和配置引用。这样我们只需要维护包依赖的配置,而不用操心在哪里下载、如何配置。
构建工具,就是处理哪些文件需要编译、哪些资产需要包含、哪些库需要参与编译。。。以及执行构建。

各种xml

安卓开发中存在大量的xml声明式资产。声明式,就是把xml声明与实际的类、属性、资源等做一个映射。并且安卓框架内部可以在某个功能时间点解析对应的xml声明。

R类

R是一个静态类,它的特殊之处在于它是由开发工具动态更新的、用于为可查找的资产生成一个唯一的id。
res目录中的xml、图片等等都在R类里有一个对应的id。xml中的某些元素也可以注册一个id。这一切都是开发工具自动完成的,我们并不会去修改R类。
可以笼统的认为,可查找对象都以键值对的形式内部存储着。

四大模块

Activity、Service、BroadcastReceiver、ContentProvider
活动,可以认为PC的一个exe。系统管理着它们之间的调用栈关系。
服务,这个很好理解,PC也有服务。
广播接收和内容提供还不知道。

Activity

xml声明界面布局,Activity对应的类写界面控制逻辑。
活动可通过startActivity方法启动,Intent对象来查找和传递数据。
活动需要在AndroidManifest.xml中登记才能使用,还可以配置IntentFilter来声明它可以响应的Intent类型。

活动是被系统全局管理的,因此可以启动其它应用中的Activity。这种感觉就是安卓系统中的所有活动是平等关系的,互相可访问的。因此上面我说活动可以认为PC的一个exe,而不是一个窗口。

一个重要方法:findViewById
通过R类中的id就可以找到布局中对应的元素。

java lambda表达式。这个对于C#开发者不可不用。
(参数序列)->{语句}
和C#差不多,只是=>变成了->
稍有遗憾,没有var关键字的类型推断。

回调也是一个值得关注的点,Activity本身很多工作都围绕着界面的建立,这些大量依靠回调来填充具体逻辑。
ctrl+o可打开可重载方法列表,似乎不能筛选,有点可惜。

ctrl+鼠标左键可跳转到定义。

阶段性心得

安卓开发给我最深的印象就是xml声明、IDE、运行时库之前构成了一个有机的整体。
因此才有编写xml时的语法提示、声明之间的文本替换或资源映射、R类的动态维护、运行时的基于id查找。
这表明安卓框架本身是一个在抽象层级上很高,规范很多的框架。



这篇关于01-初识安卓的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程