Android学习笔记

合集下载

android核心知识点笔记

android核心知识点笔记

android核心知识点笔记Android核心知识点笔记一、Android基础知识1. Android的发展历程- Android是由Andy Rubin创建的一个开放源代码的移动操作系统,2003年创建,2005年被Google收购,2008年首次推出。

- Android的发展经历了不断的版本迭代,包括Cupcake、Donut、Eclair、Froyo、Gingerbread、Honeycomb、Ice Cream Sandwich、Jelly Bean、KitKat、Lollipop、Marshmallow、Nougat、Oreo、Pie等。

- Android的版本迭代主要包括增加新功能、优化性能、改进用户界面等方面的改动。

2. Android应用的开发流程- Android应用的开发包括需求分析、设计界面、编写代码、调试、测试和发布等阶段。

- 需求分析阶段是确定应用的功能和界面设计的重要阶段,可以根据用户需求绘制原型图、进行用户调研等。

- 设计界面阶段包括绘制应用的界面布局、设计图片资源等。

- 编写代码阶段是根据需求和设计完成应用的逻辑和功能代码的编写,可以使用Java语言和Android SDK提供的API。

- 调试阶段是通过模拟器或真机进行应用的调试和测试,可以检查代码逻辑和界面的运行情况。

- 测试阶段是进行全面的功能测试、性能测试和兼容性测试,确保应用在各种设备上都能正常运行,并修复可能存在的Bug。

- 发布阶段是将应用打包成APK文件并上传到应用商店,供用户下载和安装使用。

3. Android应用的架构- Android应用的架构包括四个主要组件:Activity、Service、Broadcast Receiver和Content Provider。

- Activity是Android应用的界面显示和用户交互的主要组件。

- Service是一个可以在后台运行的组件,可以执行一些长时间运行的任务,如音乐播放、网络下载等。

Android学习新手笔记(非教程)

Android学习新手笔记(非教程)
................................................................................................. 22 第 24 讲 UI 布局之帧布局和表格布局........................................................................................ 24 第 25 讲 UI 组件之 AlertDialog 的各种实现............................................................................. 24 1、AlertDialog 的创建........................................................................................................... 25 2、弹出框单选框................................................................................................................... 26 3、多选框............................................................................................................................... 27 第 26 讲 对话框 AlertDialog 的自定义实现 ................................................................................ 28 第 28 讲 UI 组件之 ListView 和 ArrayAdapter............................................................................ 28 第 29 讲 UI 组件_ListView 的组件与 BaseAdapter,SimpleAdapter ........................................ 31 一、简单的 BaseAdapter ....................................................................................................... 31 二、复杂的 BaseAdapter ....................................................................................................... 32 三、SimpleAdapter ................................................................................................................ 35 第 30 讲 UI 组件_网格布局组件 GridView................................................................................. 35 第 31 讲 UI 组件_画廊控件 Gallery............................................................................................. 40 一、实现图片的左右滑动浏览效果。 ................................................................................. 40 二、实现缩略图加放大图显示 ............................................................................................. 41 第 32 讲 UI 组件_日期选择控件 DatePicker 和 TimePicker ...................................................... 42 一、DatePicker ....................................................................................................................... 42 二、TimePicker ...................................................................................................................... 42 三、弹出式 Picker ................................................................................................................. 43 第 33 讲 UI 组件_进度条 ProcessBar 和 UI 阻塞之消息队列处理器 handler........................... 44 一、不同的 Precessbar........................................................................................................... 44 二、UI 阻塞 ........................................................................................................................... 44 1、post 方法 ................................................................................................................... 44 2、handler 方法.............................................................................................................. 45 3、利用 handler 实现进度条随时间递增 ..................................................................... 46 第 34 讲 UI 组件_ProgressDialog 和 Message ............................................................................. 47 第 35 讲 Activity 入门和跳转....................................................................................................... 49 一、自己配置 Activity........................................................................................................... 49 二、自动配置 Activity........................................................................................................... 49 三、Activity 之间的跳转....................................................................................................... 49 四、Activity 之间信息传递................................................................................................... 50 五、通过 layout 的切换实现类似 Activity 切换的效果 ...................................................... 50 第 36 讲 Android 之 activityForResult .......................................................................................... 50

Android学习笔记

Android学习笔记

start是用来让动画从开头开始播放的。

如果动画设置了一个大于0的播放延迟(startDelay),那么调用该方法后还需要等到延迟的时间过去才回开始播放。

停止动画:end方法或cancel方法来停止一个播放着的动画。

在两种方式中动画都会终止并且只有再次调用start方法才会重新开始播放。

两者的区别则在于停止后动画所在的状态,1)cancel方法来停止动画后,动画只是停止了它的时间轴,动画的状态会停在一个中间态(intermediate state)。

2)end 方法来停止一个动画,那么动画会直接快进到该动画最后一帧并且停止,所有的对象都会保持在动画最终结束后的状态。

在Kitkat 中增加的没有怎么被大家关注到的新API则是带来了动画可以暂停和恢复的能力。

在那之前,一个动画如果被取消并且停留在当前的中间态,此时你用start 方法去重启动画,动画只会从一开始重新播放。

现在,你则可以调用pause方法来暂停当前播放中的动画,pause也会有和cancel 方法一样的功效让动画停留在中间态,但是当你使用resume 方法去恢复这个动画的时候,动画会从这个状态继续播放下去。

这个方法顾名思义是用来让动画从开头开始播放的。

如果动画设置了一个大于0的播放延迟(startDelay),那么调用该方法后还需要等到延迟的时间过去才回开始播放。

我们有两种停止动画的方法,你可以用end方法抑或cancel方法来停止一个播放着的动画。

在两种方式中动画都会终止并且只有再次调用start方法才会重新开始播放。

两者的区别则在于停止后动画所在的状态,当你使用cancel方法来停止动画后,动画只是停止了它的时间轴,动画的状态会停在一个中间态(intermediatestate)。

如果通过end 方法来停止一个动画,那么动画会直接快进到该动画最后一帧并且停止,所有的对象都会保持在动画最终结束后的状态。

在Kitkat 中增加的没有怎么被大家关注到的新API则是带来了动画可以暂停和恢复的能力。

Android-课堂笔记-1

Android-课堂笔记-1

Android的系统构架:applications(应用层) :由运行在Dalvik虚拟机上的应用程序组成。

《地图,日历,浏览器,联系人管理》application framework(应用框架层):由View,通知管理器(Notification Manager),活动管理器(Activity Manager)等由开发人员直接调用的组件组成。

Libraries(系统运行库层):有NDK,java才能访问硬件,NDK是一些由C/C++语言编写的库,包括《C语言标准库,多媒体库,OpenDL ES,SQLite,Webkit,Dalvik虚拟机》该层是对应用框架层提供支持的层。

Linux kernel(Linux内核层): 只包括驱动,内存管理,进程管理,网络协议栈等组件,目前Android的版本基于Linux2.6内核。

SDK-----→software development kit :软件开发工具包ADT----→ eclipsce 中开发android的插件Android项目,目录结构:Src 源代码Gen 自动生成的文件存放的地方,如:R.javaAssets 放一些可以打包到程序中的文件Bin 目录放置项目生成的结构,如apk文件Res 放置图片,布局文件,value,动画等(根据分辨率的高低)AndroidManifext.xml 总配置文件Project.properties 项目文件Activity的生命周期:(每当启动一个Activity的时候,系统会在这个栈里面添加一条,又启动一个Activity时,又会往这个栈里加,新的就会叠加在旧的上面,)4种activity的启动模式默认正常Single taskSingle topSingle instanceLog: (verbose,debug,info,warn,error)Logcat:打印日志信息的用法Log.i() 打印info信息Log.d() 打印debug信息Log.w() 打印警告信息Log.v() 打印verbose信息Log.e(); 打印error信息Toast 吐司:提示信息的用法Toast的特点:不获得焦点,所以不影响不打断用户的操作。

android开发学习笔记

android开发学习笔记

Android开发学习笔记by---- 三爷一、新建项目Application Name: 应用程序名,即该应用的名称,日后在安卓市场上将显示该App名称,与项目无关。

Project Name:项目中的工程名(项目中的App名),注意,在项目中将使用该名称,该工程将被存放在下面命名的包下,命名时要注意规范。

Package Name:包名,格式为“com.自定义的包名.工程名”,其中包名自定义,但包名后的工程名必须和上面的Project Name一至。

Build SDK:选择android SDK的版本,建议选择1.6版本兼容范围广一点Minimum Required SDK:该程序兼容的最低SDK版本,这里选择的版本必须跟上面选择的Build SDK版本一致。

Activity Name:第一个Activity的名称,随意命名,它将是程序的入口Layout Name:为第一个Activity布局的xml文件名称,随意命名,建议与其对应的activity 名称有一定的关联性。

Title:上面设置的Activity的标题(这个在程序里都可以改)二、项目文件夹说明com.PackageName.ProjectName:该项目的文件夹,里面存放我们编写的源文件gen:由ADT自动生成,其中包含有一个R.java的文件是用于声明res文件夹下的资源的句柄,程序将通过该文件来引用项目中的资源,该文件不要随意改动,。

Android 1.6:这里面是android的SDK包,程序中所有引用android的类都是从这个包里引用;这里的1.6为新建项目时选择的sdk版本号,这里的版本号会根据你新建项目时选择的版本号不同而不同。

bin:这个目录存放编译生成的android安装文件assets:存放项目的资源,比如视频、音频、图片等较大的资源,注意该目录下的资源不会被生成句柄,所以只能通过路径来引用。

res:存放项目的资源,比如图标、图片、音频等,该目录下的资源会被R.java文件自动生成句柄以方便程序引用。

Android初学者学习笔记(自己整理)

Android初学者学习笔记(自己整理)

Android 笔记使用Android 和Eclipse ADT 创建并运行应用程序在 Android 简介的开始部分,我将帮助您尽可能快地创建一个简单的 Android 应用程序。

您将使用 Android 4.2 和 Eclipse Android Development Tools (ADT) 插件来创建一个基于 Java 的 Hello World 应用程序。

为 Android 建立开发环境的途径有两种。

刚接触 Eclipse 和 Android 的开发人员可以先下载ADT (Android Developer Tools) Bundle。

ADT Bundle 捆绑了一个 Android SDK 和一个 Eclipse 版本,其中已经安装了 ADT 插件。

这个程序包可帮助您快速、轻松地使用 Android。

如果 Eclipse 已经安装在台式机上并设置好,那么请手动下载并安装Android SDK。

基础 Android SDK 包含一些可简化 Android 开发的系统工具,但它缺乏开发特定 Android 版本所需的 Android 库。

为您的操作系统下载基础 Android SDK 后,可以访问 SDK 安装目录的工具目录,并运行清单 1中的 Android 脚本。

清单 1. 启动Android SDK Manager~/Development/tools/android/android-sdk-mac_x86/tools$>./android该脚本启动了 Android SDK Manager,您可以下载 Android 的各种版本和库,并创建模拟程序或虚拟设备实例。

Android SDK Manager 打开了一个窗口,其中显示一个很长的要下载的选项的列表,如图 1所示。

图 1. SDK Manager在左侧复选框中,选择Tools,然后选择Android 4.2 (API 17)。

Android学习笔记

Android学习笔记
inputType,规定输入文本的类型
singleLine,单行
maxlength,最大输入长度
因为editText文本输入框继承自TextView,所以在TextView上使用的属性大部分都可以作用在EditText上。
结束页面直接调用finish方法
progressBar:
在需要接收到值得位置调用getIntent获取intent对象,并从对象中获取对应key的值
TextView:ຫໍສະໝຸດ 本域,用来显示文字 textsize:
textcolor:
singleLine,单行
maxlength,最大输入长度
EditText:文本输入框,可以输入对象的文本内容
hint,输出提示内容
移动开发3要素:
1.SDK:每种移动平台都会提供一套SDK供开发者开发应用程序
2.IDE(Eclipse):集成开发环境
3.ADT:Android development tools
4.ADB:调试桥
常用的ADB命令:
adb devices :查看连接电脑的所有设备
adb kill-server: 断开adb链接服务
layout_toRightOf="@+id/btn1"相对于某个控件在它的右边
layout_below相对于某个控件在其下方
layout_alignLeft 在相对布局中对齐方式使用
ems 预留的宽度
intent中如果需要传值,可以使用extra属性,调用intent对象的putextra方法,利用类似键值对的形式传值。
(5)setView()——将.xml文件转换成view视图

android读书笔记

android读书笔记

android读书笔记Android 读书笔记一、引言随着科技的飞速发展,智能手机已经成为我们生活中不可或缺的一部分。

而 Android 操作系统作为目前全球市场占有率最高的移动操作系统之一,其技术和应用的发展备受关注。

为了更深入地了解 Android 系统,我开始了对相关知识的学习,并将所学所悟记录下来,形成了这篇读书笔记。

二、Android 系统概述Android 是一个基于 Linux 内核的开源移动操作系统,由 Google 主导开发。

它具有开放性、灵活性和丰富的应用生态等特点。

Android 系统的架构可以分为四层:应用层、应用框架层、系统运行库层和 Linux 内核层。

应用层包含了各种用户可以直接交互的应用程序,如浏览器、短信、相机等;应用框架层为开发者提供了一系列的 API 和工具,方便他们开发各种应用;系统运行库层包括了一些核心库和 Android 运行时环境;Linux 内核层则负责底层的硬件驱动、内存管理、进程管理等。

三、Android 应用开发基础要开发 Android 应用,首先需要掌握 Java 或 Kotlin 编程语言。

Java作为一种成熟的编程语言,在 Android 开发中有着广泛的应用;而Kotlin 则是近年来越来越受欢迎的一种编程语言,它具有简洁、安全、高效等优点。

在开发过程中,我们需要使用 Android Studio 这个集成开发环境(IDE)。

Android Studio 提供了丰富的功能,如代码自动完成、调试工具、布局编辑器等,大大提高了开发效率。

开发 Android 应用的基本流程包括创建项目、设计界面、编写逻辑代码、调试和测试等。

在设计界面时,可以使用 XML 布局文件来定义界面的布局和组件;在编写逻辑代码时,则需要处理各种事件和数据。

四、Android 组件Android 应用由多个组件组成,主要包括活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)和内容提供者(Content Provider)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Android学习笔记(by quqi99 MSN: quqi99@)Android platform是一个用于开发移动程序的软件包,它包括了操作系统、中间件及一些关键应用。

开发者能使用android SDK为Android platform开发应用,这些应用使用JA V A 语言书写,运行在虚拟机Dalvik(一个专为手机程序开发的基于linux内核的JA V A虚拟机)。

/wiki/index.php?title=%E7%BF%BB%E8%AF%91%E4%BB%BB %E5%8A%A1%E9%A2%86%E5%8F%96&printable=yes/forumdisplay.php?fid=21 什么是Android1.1 Android的特性✓应用框架,让一些基础设施得以重用✓Dalvik虚拟机,专为开发移动程序优化✓集成的浏览器,(基于WebKit引擎)✓优化的图形库,(2D图形库以及基于OpenGL ES 1.0规范的3D图形库)✓SQLite,用于结构化数据的存储,是一个数据库✓多媒体支持,支持多种音频,视频格式(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)✓GSM技术(依赖具体硬件)✓Bluetooth, EDGE, 3G, WiFi(依赖具体硬件)✓Camera, GPS, compass, accelerometer(依赖具体硬件)✓丰富的开发环境(DEBUG工具,内存及性能工具,Eclipse的插件等)1.2 Android的架构Android操作系统的模块如下:应用:Android已集成了一些应用,如邮件客户端,SMS程序,日历,地图,浏览器等应用框架:程序库:例行程序Linux内核2 Andvoid起步2.1 开发环境配置使用Eclipse + Android Development Tools (ADT)插件。

在Help > Software Updates > Find and Install....中键入更新地址:https:///android/eclipse/2.2 运行第一个Andvoid程序使用Eclipse插件1、建立的工程类型为:Andvoid Project2、建立Launch Configuration. Run > Open Run Dialog... or Run > Open Debug Dialog 命令行运行程序1、创建工程activityCreator .ActivityName2、编译。

在build.xml所在的目录ant一下。

3、启动模拟器. 运行命令:emulator4、在模拟器中,切换到主屏幕。

5、在命令行输入:adb install myproject/bin/<appname>.apk将其上载至模拟器。

6、在模拟器中选择程序并启动。

Android需要专门的编译工具来正确的编译资源文件和Android程序的其他部分。

基于此,你需要为你的程序准备一个专门的编译环境。

Andorid的编译过程通常包括编译XML和其他资源文件、创建正确的输入格式。

经过编译的Android程序是一个.apk文件,.apk文件是一个压缩文件,它其中包含了.dex文件、资源文件、raw data文件和其他文件。

Andoriod暂时还不支持用本地代码(C/C++)开发第三方程序。

移除Andorid程序要移除你安装在模拟器上的程序,你需要通过run adb并删除相应的.apk文件。

通过adb shell命令在模拟器上打开一个UNIX shell,进入目录data/app/,通过命令rm 你程序的名称.apk来移除文件。

2.3 调试程序Andvoid用于调试的手段有:DDMS,DDMS是一个图形化的程序,支持端口转发(因此你可以在程序中设置断点),支持模拟器上的截屏,支持线程和堆栈信息和其他的一些特性。

Logcat,Dump一份系统消息的日志。

这些消息包括模拟器抛出错误时的堆栈跟踪。

Android Log, 打印日志的类,用来将消息写入模拟器上的日志文件中。

如Log.v()用于打印verbose级别的日志Traceview,Android可以保存一个日志用来记录被调用的方法以及该方法被调用的次数,通过Traceview你可以在一个图形化的界面中查看这个日志文件。

可接解设置emulator的设置以方便调试,模拟器上调试和测试的设置Android提供了众多的设置使你可以更容易的调试和测试程序。

要进入开发设置页面,在模拟器中转到Dev Tools > Development Settings。

在该设置页面有以下选项:∙Debug app:选择要调试的程序。

你不需要设定其关联至调试器,但是设定这个值有两个效果:o在调试的时候,如果你在一个断点处暂停了过长的时间,这个设定会防止Android抛出一个错误o这个设定使你可以选择“等待调试器”选项,使程序只有在调试器关联上之后才启动∙Wait for Debugger:阻塞所选的程序的加载直到有调试器关联上,这样你就可以在onCreate()中设置断点,这对于调试一个Activity的启动进程是非常重要的。

当你对该选项进行了更改,任何正在运行的程序的实例都会被终止。

你只有在上面的选项中选择了一个调试程序才能够选中该选项。

你一也可以在代码中添加waitForDebugger()来实现同样的功能。

∙Immediately destroy activities:告诉系统一旦一个activity停止了就销毁该activity (例如当Android释放内存的时候)。

这对于测试代码onFreeze(Bundle)/onCreate(android.os.Bundle)是非常有用的,否则会比较困难。

如果你的程序没有保存状态,那么选择这个选项很可能会引发很多问题。

∙Show screen updates:对于任何正在被重绘的screen sections都会在其上闪现一个粉红色的矩形。

这对于发现不必要的screen绘制是很有必要的。

∙Show CPU usage:在屏幕上方显示CPU信息,显示有多少CPU资源正在被使用。

上方红色条显示总的CPU使用率,它下方绿色的条显示CPU用在compositing thescreen上的时间。

注意:在没有重启模拟器之前,一旦你开启了该功能就不能关闭。

∙Show screen FPS:显示当前的帧率。

这对于查看游戏达到的总的帧率是非常有用的。

注意:在没有重启模拟器之前,一旦你开启了该功能就不能关闭。

∙Show background:当没有activity screens可见时,显示一个背景模式。

一般是不会出现的,仅仅在Debug的时候会出现。

设定的选项在模拟器重启之后仍然有效,如果要取消设定的选项,在取消设定以后还要重启模拟器,才能生效。

2.4 andvoid中的概念一个andvoid应用包括四个部分:⏹Activity活动(个人认为:类似于JSP, 也相当于SWT中的Shell, View则相当于wegiet)⏹Intent Receiver (个人认为:类似于Struts action)⏹Service (个人认为:类似于Servlet)⏹Content Provider (个人认为:用于持久化)用上面哪些组件,要在AndroidManifest.xml文件中声明。

1、Activity. 一个activity是应用中的一个单一的屏幕,它继承自Activity类,它将显示由Views组成的UI以及响应事件。

(个人理解,相当于JSP)2、Intent与Intent Filters. Intent用于从一个屏幕跳到别一个屏幕,描述一个应用想做什么,它的数据结构包括action与data两部分,action如MAIN、VIEW、PICK、EDIT等等, data被表达成一个URI;IntentFilter相当于告诉跳到哪个activity,;IntentReceiver用于响应事件,虽然它不显示UI,但它可以用NotificationManager去通知用户。

它需要在AndroidManifest.xml文件中注册,或者是用Context.registerReceiver()硬编码。

3、Service是一段有生命周期的无UI的代码。

4、Content Provider, 持久化,例如存储在文件系统中,或者存储在SQLite数据库中。

2.5 例子1,下载例子工程。

/android/intro/codelab/NotepadCodeLab.zip例如:Notepadv1工程是问题工程,Notepadv1Solution则是相应的解决工程。

2,3个例子的函义如下:通过练习1>1. 数据库对象的例子程序2. 如何在一个Activity初始化的时候创建数据库对象3. 如何为一个Activity创建一个pop菜单4. 如何得到一个用户在POP菜单中选择的ITEM 的ID5. 如何向一个ListView中写入数据通过练习2>1.如何取得数据集中被选择数据行的ID,注意rows是java的一个listarray对象,所以它有它的getSelection()的方法2.如何调用一个SubActivity以及在调用一个SubActivity之前应该做些事情。

3.要实现一个方法,当SubActivity返回后,应该做些什么4.关于layout。

由于Android采用MVC的模式,所以屏幕的布局采用了XML进行定义。

一个好的布局会让程序显的更漂亮。

可以参考/android/reference/view-gallery.html,有很多的布局模式可供利用。

5.如何创建一个开始的时候代码中不含onCreate()的类,因为到目前为止还没有创建过自己的类,以前看到的类和修改的方法都是已经写好的了。

不过这个类也是一个从android.app.Activity继承的。

创建后还是要通过Source Override一个onCreate的6.从一个SubActivity返回时,在返回之前应该做哪些事情7.如何在AndroidManifest.xml中声明一个新的Activity8.如何创建一个内部隐含的onClickLister及实现其应有的功能。

通过练习3>1. 除了onCreate()还有哪些和lifecycle有关的方法a.onFreeze():b.onPause()c.onResume()等等…2. 大部分程序都有必要考虑lifecycle的问题,应该把下面的这个图记住:3. 为了不丢失需要保存的信息,要明确的理解Activity的各个状态,并相应的给出在各个状态的行为。

相关文档
最新文档