每个android应用都默认在他自己的linux进程中运行,每个进程都包含一个Dalvik的实力。虚拟机使得设备能高效的运行多个虚拟机 。主要是由于Dalvik执行的是DEX文件。---------针对小内存设备优化过的格式。同时Davlik运行DEX也是非java虚拟机运行java代码原因 。
隐式Intent筛选 android将Intent的内容(包括 Action Catejory Data Type)跟Intent-filter和可能接受Intent组件Manifest信息进行比较
Manifest
<?xml version = "1.0" encoding = "utf-8"?> //版本及编码标准
资源命名格式 @+资源类别(srting)+资源ID(icon)
action android:name = "android.intent.action.MAIN" // 应用程序入口
category android:name = "android.intent.category.LAUNCHER" // 应用启动器里显示该Activity
uses-permission 说明应用使用的权限
Activity 采用栈的思路存储调用
onCreate(Bundle)--->onStart()--->onResume()------------>onPause()---------------->onStop()-------->onDestroy()
初始化全局设置 进入可见 进入互交 退出互交(提交数据变动) 退出可见 释放所有资源
显示调用
Intent intent = new Intent(SimpleActivity.this , SimpleActivity2.class);
SimpleActivity.this.startActivity(intent);
隐式调用
Intent intent = new Intent();
intent.setAction("android.intent.action.VIEW");
intent.setType("image/jpeg");
intent.addCategory("android.intent.category.DEFAULT");
SimpleActicvity.this.startActivity(intent);
Service 特殊的Activity
仅由bindService(Intent,ServiceConnection,int)启动(远程)
onCreate()------->onBind()------>onUnbind()------>onDestroy()
由startService(Intent)启动
onCreate()------->onStartCommand()------>onUnbind()------>onDestroy()
结束Service
1、另一个组件调用stopService(Intent intent)
2、该service调用stopSelf()/stopSelfResult()