Android学习-基础部分
文章平均质量分 87
卷不动了,我回寝吧
这个作者很懒,什么都没留下…
展开
-
进程与消息处理
Android应用程序是通过消息来驱动的,系统为每一个应用程序维护一个消息队列,应用程序的主线程首先不断地从这个队列中获取消息,然后对这些消息进行处理,这样就实现了通过消息来驱动应用程序的执行。在这一处理机制中,涉及进程、线程、信息处理等。1.进程与线程1.1什么是进程进程是一个具有一定独立功能的程序关于某个数据数据集合的一次运行活动。它是操作系统动态执行的基本单元。在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。基本单元是指操作系统在并发执行的任务中的某个任务,也就是说多个进程原创 2021-04-05 16:39:26 · 149 阅读 · 0 评论 -
Android网络通信编程
1.网络访问方式Android SDK提供了一些与网络有关的包。表1 网络包 包 描述 java.net 该包提供与网络通信相关的类,包括流和数据包socket、Internet协议和常见HTTP处理。该包是一个多功能网络资源。Java开发人员可以立即使用这个熟悉的包创建应用程序 java.io 该包虽然没有提供显示网络通信功能,但是仍然非常重要。该包中的类由其他Java包中提供的socket和连接使用。它们还用于与本地文件的交互。 java.nio 该包包含表原创 2021-04-05 08:52:47 · 320 阅读 · 0 评论 -
数据存储和提供器
作为一个完整的应用程序,数据的存储与操作是必不可少的。Android系统为我们提供了4种数据存储方式,分别是:SharedPreference、SQlite、ContentProvider和文件。(1)SharedPreference存储:一种常用的数据存储方法,其本质就是基于xml文件存储键值对(key-value)数据,通常用来存储一些简单的配置信息。(2)SQLite存储:一个轻量级的数据库,支持基本SQL语法,是Android系统中常被采用的一种数据存储方式。Android为此数据库提供了一原创 2021-03-30 10:42:18 · 201 阅读 · 0 评论 -
广播
1.发送和接收广播1.1发送广播使用Intent发送广播:首先在需要发消息的地方创建一个Intent对象,将信息的内容和用于过滤的信息封装起来;然后通过三种方法将该Intent对象广播出去:Context.sendBroadcast方法、Context.sendOrderedBroadcast方法、Context.sendStickyBroadcast方法。区别如下:(1)sendBroadcast或sendStickyBroadcast发送出去的Intent,对于所有满足条件的Broadcas原创 2021-03-29 11:33:00 · 58 阅读 · 0 评论 -
服务(Service)
服务(Service)是Android系统中的四大组件之一,与Activity不同,它是不能与用户交互的。它是一种长生命周期、没有可视化界面、运行于后台的服务程序。比如我们播放音乐的时候,有可能想干其他事情,当退出播放音乐的应用,如果不用Service,我们就听不到歌;又比如一个应用的数据是通过网络获取的,不同时间(一段时间)的数据是不同的,这时候可以用Service在后台定时更新,而不用在打开应用的时候去获取。1.本地服务本地服务(Local Service)用于应用程序内部,可以实现应用程序的一原创 2021-03-29 10:39:12 · 526 阅读 · 0 评论 -
用户界面设计
Android系统给开发者提供三种设计UI的方式:第一种是使用xml文件布局;第二种是使用传统的代码布局;第三种是前两种结合使用。(1)控件:继承于View类型,可以完成一些特殊功能的View类型。例如:Button(2)容器:继承于ViewGroup,是一种比较特殊的View类型或者控件(ViewGroup继承于View),它可以以一定的规则展示控件,下文所说的父控件指的就是容器。例如:LinearLayout图1 View的视图关系 ...原创 2021-03-27 23:09:50 · 309 阅读 · 0 评论 -
Intent
Intent是一个动作的完整描述,包含产生组件、接收组件和传递数据信息。并且,Intent利用消息实现应用程序之间的交互机制,这种信息描述了应用中一次操作的动作、数据以及附加数据。系统通过该Intent的描述负责找到对应的组件,并将Intent传递给调用的组件,完成组件的调用。1.Intent属性Intent由动作、数据、分类、类型、组件和扩展信息等内容组成,每个组成部分都由相应的属性进行表示,并提供设置和获取相应属性的方法。表1 Intent组成 组成 属性 设置属性方法原创 2021-03-26 10:44:51 · 464 阅读 · 0 评论 -
Fragment
1.Fragment简介在Android3.0之前的版本,通常程序是在较小屏幕的设备上(手机等)。尽管手机屏幕尺寸、分辨率、屏幕密度等参数存在较大的差异,但是手机交互界面的操作习惯基本相同。例如,对于一个联系人管理程序,通常都会首先用一个窗口显示所有的联系人名称以及少数的联系人的详细信息(如联系人电话号码等)。然后当单击某一个联系人时会另外显示一个窗口列出该联系人的详细信息,当然,更进一步的操作还可能有修改、删除联系人等。不管与手机屏幕相关参数如何变化,在手机上的联系人管理程序除了界面风格略有差异外,操原创 2021-03-25 20:36:03 · 2032 阅读 · 2 评论 -
Activity生命周期
1.Activity交互机制Android针对Activity的管理使用的是栈机制,Activity栈保存了已经启动并且没有终止的Activity,并遵循“先进后出”的原则。也就是说在某一个时刻只有一个Activity处在栈顶,当这个Activity被销毁后,下面的Activity才可能处于栈顶,或者是有一个新的Activity被创建出来,则上一个Activity被压下去。Android按照一种层次管理所有的Activity。因为Activity直接涉及用户交换界面的处理,而任意时刻与用户交互的界面只有原创 2021-03-25 16:57:13 · 154 阅读 · 0 评论 -
Android应用程序核心部件(四大组件)
Android应用程序核心部件(四大组件)Android应用程序都运行在一个Dalvik虚拟机实例中,而每个虚拟机实例都是一个独立的进程空间,故每个应用程序都独立于其他应用程序而运行。Android系统这样做的目的在于保证系统的安全性,如果整个系统都运行在一个虚拟机实例中,那么当这个虚拟机实例产生异常时,整个系统将可能奔溃。另外,Android系统通过权限机制来使应用程序的运行更加安全。应用程序组件是Andoid应用程序最基本的构件,由Android系统提供底层的框架支持,并由我们的应用程序实现原创 2021-03-25 10:56:31 · 667 阅读 · 0 评论 -
Android体系结构
Android系统采用了分层的架构,总共四层,如上图所示。由上到下分别是,应用程序层(Application)、应用程序框架层(Application Framework)、系统运行库层(Libraries)和Linux内核层(Linux Kernel),每一层都使用其下面各层提供的服务。1.应用程序层(Application)Android平台包含了许多核心的应用程序,例如主屏幕(HOME)、联系人(Contacts)、电话(Phone)、浏览器(Browser)。这些应用程序都是采用ja..原创 2021-03-24 21:16:56 · 497 阅读 · 0 评论 -
自动构建工具Gradle
1.Gradle是个构建系统,能够简化你的编译、打包、测试过程。熟悉Java的同学,可以把Gradle类比成Maven。Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。2.Gradle Wrapper的作用是简化Gradle本身的安装、部署。不同版本的项目可能需要不同版本的Gradle,手工部署的话比较麻烦,而且可能产生冲突,所以需要Gradle Wrapper原创 2021-03-24 19:40:38 · 87 阅读 · 0 评论