我们平时打开一个应用程序,一般是通过桌面的应用程序图标双击或单击系统开始菜单中应用程序的菜单链接,无论是桌面的快捷图标还是菜单链接都包含了应用程序的安装位置信息,打开它们的时候系统会按照这些位置信息找到安装目录然后启动程序。
当要求系统启动一个应用程序时,系统会先在当前目录下查找,如果没有则在系统变量Path指定的路径去查找。前面我们说了JDK包含了一堆开发工具,这些开发工具都在JDK的安装目录下,为了方便使用这些开发工具,我们有必要把JDK的安装目录设置了系统变量。这就是为什么在Windows安装了JDK后需要设置JDK的bin目录为系统环境变量的原因。Path;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin。设置CLASSPATH的目的,在于告诉Java执行环境,在哪些目录下可以找到您所要执行的Java程序所需要的类或者包。
我们要通过Eclipse来开发Android应用程序,那么我们需要下载Android SDK(Software
Development Kit)和在Eclipse安装ADT插件,这个插件能让Eclipse和Android SDK关联起来。
Android SDK提供了开发Android应用程序所需的API库和构建、测试和调试Android应用程序所需的开发工具。
为了使得Android应用的创建,运行和调试更加方便快捷,Android的开发团队专门针对Eclipse
IDE定制了一个插件:Android Development Tools(ADT)。
Layout是xml文件,用来内容布局。
Activity,用户所能看到所有的界面,activity与布局绑定。Activity的生命周期短,可以被操作系统杀死。
Activity的状态:运行,暂停,停止状态。
运行:当一个活动处于返回栈的栈顶时候,活动处于运行状态。系统最不愿意回收的就是处于栈顶的,用户体验差。
暂停:活动不在栈顶时候,但是仍然可见。比如对话框形式的活动只会占用中间的局部位置,处于暂停的活动仍然是存活的,除非内存太少,系统一般不会去回收。
停止:活动不在栈顶而且完全不可见。系统仍会为这种活动保存相应的状态和成员变量。但是是不可靠的,因为其他地方需要内存的时候会回收掉。
销毁:当一个活动从返回栈中移出就变成了销毁状态。系统倾向回收这种状态保证内存充足。
Activity的生命周期:
Activity定义了7个回掉方法。覆盖活动生命周期的每一个过程。
1onCreate(),在活动第一次被创建的时候调用,在这个方法中完成活动的初始化操作。比如加载布局,绑定事件。
2onStart(),在活动由不可见变为可见时候调用。
3onResume(),这个方法在活动准备好和用户进行交互的时候调用。此时活动处于返回栈的栈顶,而且处于运行状态。
4onPause(),这个方法在系统准备恢复或者启动另外一个活动的时候调用。在这个方法中主要是用于将消耗cpu的资源释放掉,以及保存一些关键的数据。这个方法里面的执行速度一定要快,不然影响新的栈顶的使用。
5onStop(),这个方法在活动完全不可见的时候调用。它与onPause()的区别在于,当用户启动一个对话框的活动时候,用户只用执行onPause(),不用执行到onStop().
6onDestroy(),在活动销毁前调用,之后活动处于销毁状态。
7onRestart(),在活动由停止状态变成运行状态前调用,也就是活动被重新调用了。
以上7个方法,除了onRestart()以外,其他的方法都是两两相对的。
如果我们想启动一个activity需要配置在Android manifest.xml中。
在acitivity中的onCreate()方法中setContentView。把布局绑定在一起。如果在布局中有按钮的话,在create中添加监听。如果布局中的文本部分需要注入,也在create中使用findViewById方法。目前实现的是跳转到其他的活动,跳转过程中可以传递数据。Intent。当数据复杂的时候可以使用Bundle来传递数据。当从一个页面返回时候,也可以传递数据。
Service程序在后台运行不需要与用户交互。例如qq实时去监听服务器。通过activity显然不合理,activity生命周期短,可能被操作系统杀死。Service生命周期就一个创建一个销毁,create destroy。
LinearLayout线性布局,主键一个挨着一个。