Activity管理笔记】的更多相关文章

文章仅记录自己学习该模块时的一点理解,看到哪写到哪.所以特别散. AMS管理四大组件外加进程管理,当中最庞大的算是Activity了吧. 1.AMS中对ActivityStack划分为两类.当中一类是FrontStack,还有一类刚好相反. boolean isFrontStack(ActivityStack stack) { return !(stack.isHomeStack() ^ getFocusedStack().isHomeStack()); } ActivityStack getF…
AppManager 类: /** * 应用程序Activity管理类:用于Activity管理和应用程序退出 *  */ public class AppManager {     private static Stack<BaseActivity> activityStack;     private static AppManager instance;       private AppManager() {     }       /**      * 单实例 , UI无需考虑多线程…
转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 import java.util.Stack; import android.app.Activity; import android.app.ActivityManager; import android.content.Context; /** * * @ClassName: com.qust.myutils.AppManager * @Description: Activity管理类:用于管理Act…
程序启动第一个界面类: net.oschina.app.AppStart功能描述:一张图片代码细节描述:一个透明度的动画效果,效果动画完成后自动启动新的Activity(Main) 基本BaseActivity类,继承自Activity功能描述:分别在onCreate方法中添加Activity到栈 : 在onDestroy方法中移除Activity代码细节描述: 提供了一个单例类AppManager,把创建的Activity放入到栈中进行管理,提供添加Activity , 移除当前Activit…
http://www.cnblogs.com/bastard/archive/2012/04/07/2436262.html 最近学习Android相关知识,感觉仅仅了解Activity几个生命周期函数基本上没有任何意义的: 于是想深入了解一下Activity到底是怎么一回事怎么运行来的:里面的东东真是叫个庞大: 现在只能简单的了解其框架性的概念和流程: 一 Activity概念 Android的核心不是Application而是Activity,至少在我们开发的时候是这样的: Activity…
上周末,滴滴与360都开源了各自的插件化框架,VirtualAPK与RePlugin,作为一个插件化方面的狂热研究者,在周末就迫不及待的下载了Virtualapk框架来进行研究,本篇博客带来的是VirtualAPK原理解析的第一篇Activity管理,博客只是自己的理解,小弟才疏学浅,可能有很多理解不对的地方,欢迎各位大神指出.(看博客之前,请大家先下载VirtualVirtualAPKapk的项目,https://github.com/didi/VirtualAPK) Hook Activit…
怎样管理当前的执行Activity栈,怎样彻底退出程序.本文封装了一个Activity管理类,能够方便随时退出程序. import java.util.Stack; import android.app.Activity; import android.content.Context; public class ActivityManager { private static Stack<Activity> activityStack; private static ActivityManag…
AMS & WMS,应该是app端打交道最多的2个framwork层的service. ActivityManagerService 是android提供给用于管理Activity运行状态的系统进程. 本系列共分3个部分,概述,ActivityStatck & Activiy Task. AMS 主要用于管理Activity之间的交互问题. 核心问题有以下几个: 1.activity 生命周期管理 2.intent是怎么传递数据的.(可能跨进程,以及双向传递) 3.launchmode是怎…
Activity为Android应用的四大组件之一,提供界面来与用户完成交互等操作.其中Activity的生命周期的知识这里做个笔记. Activity的生命周期由以下几个部分组成: 1.onCreate :Activity Launch时调用,完成布局和资源的设置操作. 2.onStart :Activity开始可见,但是与用户之间不能交互(下面有例子说明). 3.onResume :Activity可见,并且此时可以与用户完成交互操作. 4.onPause :Activity将不可见或则有其…
本文为 Spring 框架的事务管理学习笔记,官网文档地址为:Transaction Management,隔离级别及传播属性解释来自 org.springframework.transaction.TransactionDefinition 文件注释. 在 Understanding the Spring Framework's declarative transaction implementation 一节中,有大量实例代码帮助理解声明式事务管理的实现,本文中没有涉及. 为避免翻译后失意,…
Ps:7-10月 完成公司两个app项目上架.漏掉的总结 开始慢慢补上. 一.写一个Activity的管理类 1.单例模式,以栈(先进后出)的形式存储Activity对象 public class AppManager { private static Stack<Activity> activityStack; // Activity栈 , 先进后出 private static AppManager instance; /** * 单例模式实例 */ public static AppMa…
今天想使用一下李刚那本书上的hibernate的Demo,试出了点问题,过程中就发现mysql的用户管理和权限管理上也有点东西要注意,所以顺便就写一下mysql用户管理和权限管理的笔记. 先说一说mysql的安装: 我们在ubuntu下先安装mysql: sudo apt-get install mysql-server 安装好了以后呢,我们先用root身份登录到数据库中,我记得安装过程的最后一步里面,如果你在可视化界面下用控制台的话,它好像是会要求你输入root的密码的.不过如果没有也没关系,…
用一个集合类对所有的Activity进行管理,实现随时控制Activity.用add(Activity activity)方法向List中添加Activity,用remove(Activity activity)方法从List中移除Activity,用finishProgram()方法将List中所有Activity移除并退出程序 import java.util.ArrayList; import java.util.List; import android.app.Activity; imp…
很早之前也学过git但是没有详细的记录,这次是做个复习,巩固 若有不对的地方请您指出 目录 Git和SVN有什么区别? 什么是Git? github仓库 Star和Fork Pull request Watch Issue Commit 工作区域.暂存.仓库 git操作 初始化git 管理远程仓库 git pull 和 git fetch 有什么区别? 什么是 git stash? 什么是git stash drop? git config 的功能是什么? 什么是 Git 中的"裸存储库&quo…
引用计数器 当一个对象被创建出来,就要分配给内存这个对象,当不用这个对象的时候,就要及时的回收,为了可以明确知道对象有没有被使用,就要用引用计数器来体现,只要计数器不为0,表明对象被使用中. 1.方法的基本使用 1> retain :计数器+1,会返回对象本身 2> release :计数器-1,没有返回值 3> retainCount :获取当前的计数器 4> dealloc * 当一个对象要被回收的时候,就会调用 * 一定要调用[super dealloc],这句调用要放在最后…
public class MainApp extends Application { private static ArrayList<WeakReference<Activity>> activitys; public volatile static MainApp instance; @Override public void onCreate() { // TODO Auto-generated method stub super.onCreate(); } public M…
一.查看MySQL 版本   1.在终端下:mysql -V   2.在mysql中:mysql> status; 3:在help里面查找   mysql --help | grep Distrib 4:使用mysql的函数  mysql> select version();   二.Mysql 安装 1. yum list | grep mysql   命令来查看yum上提供的mysql数据库可下载的版本 2.yum install -y mysql-server mysql mysql-d…
图1:Activity生命周期的简化图,就像一个阶梯金字塔.这图像表明每个状态中是怎么样使用回调函数使得恢复状态回到顶端,或者降低状态到达底部.Activity可以从Paused状态和stopped状态恢复到Resumed状态. 正确使用你的Activity生命周期函数去保障应用程序的良好表现,必须注意很多方面,包括下面的内容: 当用户接听电话或者转去另外一个应用程序时,不要让程序崩溃. 当用户没有激活使用它时,不消耗宝贵的系统资源. 当用户离开你的应用程序并在稍后的时间返回,不会丢失用户的进度…
public class AppManager { private static Stack<Activity> activityStack; private static AppManager instance; private AppManager(){} /** * 单一实例 */ public static AppManager getAppManager(){ if(instance==null){ instance=new AppManager(); } return instan…
轻量级,无侵入 Bean管理 1 创建applicationContext.xml 2 配置被管理的Bean 3 获取Bean pom.xml配置 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>3.2.12.RELEASE</version> </dependency&…
### Linux文件与目录管理 ---------- 绝对路径: / 相对路径:不以/开头的 当前目录 . 上一个工作目录 - 用户主目录 ~ root账户的主目录是/root 其他用户是/home/账户名 cd ~leyi 切换到leyi账户的主目录,即/home/leyi pwd 显示当前目录 mkdir -p 111/222 创建多级目录 -p 参数 rmdir -p 111/222 当删除了222后111是空目录则222也会被删除 rmdir 仅能删除空目录 **ls 常用命令 **…
https://www.ibm.com/developerworks/cn/linux/l-linux-process-management/index.htmlLinux 进程管理剖析 进程可以是短期的(从命令行执行的一个命令),也可以是长期的(一种网络服务) 在用户空间,进程是由进程标识符(PID)表示的.从用户的角度来看,一个 PID 是一个数字值,可惟一标识一个进程. 在用户空间,创建进程可以采用几种方式. 可以执行一个程序(这会导致新进程的创建),也可以在程序内,调用一个 fork 或…
java内存管理机制 在java中,内存管理由JVM完全负责,java中的"垃圾回收器"负责自动回收无用对象占据的内存资源,这样可以大大减少程序猿在内存管理上花费的时间,可以更集中于业务逻辑和具体功能实现:但这并不是说java有了垃圾回收器程序猿就可以高枕无忧,将内存管理抛之脑外了!一方面,实际上java中还存在垃圾回收器没法回收以某种"特殊方式"分配的内存的情况(这种特殊方式我们将在下文中进行详细描述):另一方面,java的垃圾回收是不能保证一定发生的,除非JVM…
事务的目的就是要保证数据的高度完整性和一致性. 在实际的项目中,大多都是使用注解的方式来实现事物,这里也就简单记录下使用@Transactional方法和注意事项. 在xml中添加配置 1234567 <!-- TransactionManager --><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager&q…
前言 今天对前端服务器进行迁移,本来前端服务器就一台,都是放置前端静态文件的地方,应该是比较简单的.唯一的问题是由于Nginx需要给ie8浏览器个i同https访问支持,不得不对Nginx进行重新编译.编译完成后想启动一下服务,才发现没有systemctl,于是使用service命令,奇怪的是service命令无法居然无法识别nginx服务.经过一番折腾终于解决了问题. 以前这些命令一直是拿来就用,没什么深究,只有遇到了问题才知道基础的重要性.下面就对这些东西做个简单的记录. 进程管理工具 Li…
package com.yunpai.tms.application; import android.app.Activity; import android.app.ActivityManager; import android.content.Context; import com.yunpai.tms.R; import com.yunpai.tms.activity.LoginActivity; import com.yunpai.tms.activity.MainActivity; i…
本文转载自:http://blog.chinaunix.net/uid-26859697-id-5573776.html kmalloc()是基于slab/slob/slub分配分配算法上实现的,不少地方将其作为slab/slob/slub分配算法的入口,实际上是略有区别的. 现在分析一下其实现: [file:/include/linux/slab.h] /** * kmalloc - allocate memory * @size: how many bytes of memory are r…
linus用户管理/etc/passwd 保存用户信息/etc/shadow 保存密码信息,第二部分 !表示密码没有设置 cat /etc/passwd | grep xxx:查看特定账户信息 useradd 选项 用户名 :添加用户passwd 用户名:添加密码userdel 用户名 :删除用户su :切换用户 查看当前登录的用户:whoami , id 查看当前用户所属组:groupsgroupadd 组名:添加组groupdel 组名:删除组/etc/group ,组目录/etc/gsha…
此处承接前面未深入分析的页面释放部分,主要详细分析伙伴管理算法中页面释放的实现.页面释放的函数入口是__free_page(),其实则是一个宏定义. 具体实现: [file:/include/linux/gfp.h] #define __free_page(page) __free_pages((page), 0) 而__free_pages()的实现: [file:/mm/page_alloc.c] void __free_pages(struct page *page, unsigned i…