Android应用基础浅析

简介:

Android基础知识归纳与小结(一)

1:为什么说android是基于linux平台的?

 android 是一个 linux 内核 + 功能函数库 + 上层虚拟机 的一个系统。对于所有手机用户来说,在要求手机能提供可靠的语言通信的同时,还想获得与数据相关的炫酷特性, Linux可以满足用户的这些需求。另一方面,Linux作为Android平台的栈基础的另一个优势是它提供了一个硬件抽象层。能确保在底层硬件发生变化时,上层软件保持不变.

所以说,android 基于 Linux 没错,但 android 并不是和 PC 上面的 Linux 发行版一样的 GNU/Linux 设计。因为他有自己的各种功能库,和服务程序和其他,并没有使用多少 GNU 项目的程序。

2android的理念是?
   随时随地为每个人提供信息

3android的应用程序组成

  一般来说,android的程序主要由以下四部分组成

  Activity

  Broadcast Intent Receiver

  Service

  Content Provider

 

Q5:什么是Intent

Intentandroid中对于即将执行的操作的一种抽象。它是一种动作和内容的集合。Android中使用Intent来完成屏幕间的切换操作。

典型的android应用程序有两部分构成:一是在前台运行的ActivityView对象;二是在后台运行的IntentService对象。而Activity基本上对应于用户界面屏幕,而视图对应于用户界面组件。用户屏幕交互时,屏幕通常表示一个任务,每一个屏幕完成自己的任务后,都会通过Intent将工作交给另一个组件,以执行一个任务。

Intent可以分为两种:“默认的Intent”以及“自定义的Intent”。而一般开发者在程序中编写的Intent,是通过自定义Intent,比如切换Activity和在其间传递各种数据。要完成Activity间的数据传递也可以分为“传递数据”和“接收数据”。

 

Q6:一个重要的Android文件AndroidMainfest.xml文件

AndroidMainfest.xml文件建立在应用程序的根目录下,包含特定的应用程序和Intent的所有设计时的关系。充当Android应用程序的部署描述符

AndroidMainfest.xml文件是每一个android程序中都必须要有的文件,具体解析如下:

所有的内容都包含在<mainfest>标签下,“package”表示该应用程序存储在当前的命名空间/路径中,androidversionName=1.0””是给用户看的版号

androidversionCode=1””是应用程序的版本号

application”标签中定义了这个程序所用到的Activity,服务信息等

Q7android的生命周期

 首先。Android的生命周期是由android的框架管理的,并非应用程序。

Android共有七个状态,可分为三类

资源分配

Create   Destory

完整的生命周期是由create开始,destory结束。创建create时分配资源,destory时释放资源

可见与不可见

Start  Restart  Stop

activity运行到start状态时,就可以在屏幕上看到当前的activity,activity运行到stop时,activity会从屏幕上消失。只要activity没有被销毁,再次调用activity时,就会先进入restart状态,在进入正常的start状态。

用户能否直接访问屏幕

Resume  Pause

当有“toast”,“alertdialog”,短信等消息闯入时,原来的activity会进入pause状态,暂时放弃直接访问屏幕的能力。但那些优先级较高的事件处理完后,activity进入resume状态。

 

Activity 运行流程的归纳

一般启动

oncreate----onstart----onresume

调用另一个activity

Onpause(1)----oncreate(2)----onstart(2----onresume(2)----onstop(1)

返回原activity

Onpause(2)----onrestart(1)----onstart(1)----onresume(1)----onstop(2)-----ondestory(2)

退出结束

Onpause()----onstop()----ondestory()

回收后启动

Oncreate---onstart---onresume

 



本文转自HDDevTeam 51CTO博客,原文链接:http://blog.51cto.com/hddev/622452,如需转载请自行联系原作者

 

相关文章
|
4天前
|
Android开发
Android应用实例(一)之---有道辞典VZ.0
Android应用实例(一)之---有道辞典VZ.0
10 2
|
13天前
|
移动开发 Java Android开发
构建高效Android应用:Kotlin协程的实践之路
【4月更文挑战第30天】在移动开发领域,随着用户需求的不断增长和设备性能的持续提升,实现流畅且高效的用户体验已成为开发者的首要任务。针对Android平台,Kotlin协程作为一种新兴的异步编程解决方案,以其轻量级线程管理和简洁的代码逻辑受到广泛关注。本文将深入探讨Kotlin协程的概念、优势以及在实际Android应用中的运用,通过实例演示如何利用协程提升应用性能和响应能力,为开发者提供一条构建更高效Android应用的实践路径。
|
1天前
|
移动开发 监控 Android开发
构建高效Android应用:Kotlin协程的实践与优化
【5月更文挑战第12天】 在移动开发领域,性能与响应性是衡量一个应用程序优劣的关键指标。特别是在Android平台上,由于设备的多样性和系统资源的限制,开发者需要精心编写代码以确保应用流畅运行。近年来,Kotlin语言因其简洁性和功能性而广受欢迎,尤其是其协程特性,为异步编程提供了强大而轻量级的解决方案。本文将深入探讨如何在Android应用中使用Kotlin协程来提升性能,以及如何针对实际问题进行优化,确保应用的高效稳定执行。
|
2天前
|
移动开发 API Android开发
构建高效Android应用:Kotlin协程的实践指南
【5月更文挑战第11天】 在移动开发领域,性能优化和资源管理是至关重要的。特别地,对于Android开发者来说,合理利用Kotlin协程可以极大地改善应用的响应性和稳定性。本文将深入探讨Kotlin协程在Android中的实际应用,包括它们如何简化异步编程模型、提高UI线程的响应性,以及减少内存消耗。我们将通过具体案例分析,了解如何在实际项目中有效地使用协程,从而帮助开发者构建更加高效的Android应用程序。
|
3天前
|
开发工具 Android开发 Windows
Android应用] 问题2:ERROR: unknown virtual device name:
Android应用] 问题2:ERROR: unknown virtual device name:
|
3天前
|
XML JSON API
转Android上基于JSON的数据交互应用
转Android上基于JSON的数据交互应用
|
5天前
|
安全 Java Android开发
构建高效Android应用:采用Kotlin进行内存优化的策略
【5月更文挑战第8天】 在移动开发领域,性能优化一直是开发者关注的焦点。特别是对于Android应用而言,合理管理内存资源是确保应用流畅运行的关键因素之一。近年来,Kotlin作为官方推荐的开发语言,以其简洁、安全和互操作性的特点受到开发者青睐。本文将深入探讨利用Kotlin语言特性,通过具体策略对Android应用的内存使用进行优化,旨在帮助开发者提高应用性能,减少内存消耗,避免常见的内存泄漏问题。
8 0
|
6天前
|
移动开发 数据库 Android开发
构建高效Android应用:Kotlin协程的全面应用
【5月更文挑战第7天】 在移动开发领域,性能优化与流畅的用户体验是至关重要的。随着Kotlin语言的流行,其并发神器——协程,已成为提升Android应用性能的重要工具。本文将深入探讨如何在Android项目中利用Kotlin协程进行异步编程、网络请求和数据库操作,以及如何通过协程简化代码结构,增强应用的响应性和稳定性。我们的目标是为开发者提供一套实用的协程使用模式和最佳实践,以便构建更加高效的Android应用。
23 3
|
6天前
|
移动开发 数据库 Android开发
构建高效Android应用:Kotlin与协程的完美结合
【5月更文挑战第7天】 在移动开发领域,性能优化和资源管理始终是核心议题。随着Kotlin语言的普及,其提供的协程特性为Android开发者带来了异步编程的新范式。本文将深入探讨如何通过Kotlin协程来优化Android应用的性能,实现流畅的用户体验,并减少资源消耗。我们将分析协程的核心概念,并通过实际案例演示其在Android开发中的应用场景和优势。
|
9天前
|
移动开发 前端开发 Android开发
构建高效Android应用:探究Kotlin协程的优势
【5月更文挑战第4天】 在移动开发领域,尤其是对于Android开发者而言,编写响应迅速且高效的应用程序至关重要。Kotlin作为一种现代的编程语言,其提供的协程特性为异步编程带来了革命性的改变。本文将深入探讨Kotlin协程在Android开发中的应用优势,并通过实例代码展示如何利用协程简化异步任务处理,提高应用性能和用户体验。