- Android 源码学习地址
清风徐来辽
Android源码学习android学习
源码学习地址线上源码类搜索线上源码查看Android源码学习官方源代码下载镜像线上源码类搜索https://cs.android.com/https://github.com/aosp-mirror线上源码查看http://androidxref.com/http://aospxref.com/https://www.androidos.net.cn/sourcecodeAndroid源码学习ht
- 肝疼了3万字的Android源码学习指南
Kepler_II
深入学习Android源码,知其然而知其所以然。计划整理一系列源码分析文章。一、准备Java/C/C++基础,JavaFramework和C++Framework,一部分Lib则采用C。Linux相关知识,Android是基于Linux内核。Makefile知识,Android采用make编译,可以看到有很多Android.mk类似的文件。Sourceinsight,源码阅读工具神器。StarUM
- Android源码学习,遇到的错误集合。
五百斤,勿扰
Android.mk安卓源码android
Android.mk文件的学习ninja:error:unknowntarget'MODULES-IN-packages-apps-myhellos'解决办法:我的Android.mk文件中的最后,$(BUILD_PACKAGES),…不是PACKAGES,而是PACKAGE!!!想骂自己了。ninja:error:'packages/apps/**app/app/src/*****',neede
- android源码学习-Toast实现原理讲解
失落夏天
#安卓-源码分析安卓androidandroidstudiojava
前言:前些日志QQ群有朋友发了一个Toast的崩溃日志。Toast如此简单的用法怎么会崩溃呢?所以顺便就学习了一下Toast在源码中的实现,不算复杂,但内容挺多的,这里就来分享一下,方便读者。一.基本使用方式主要有两种实现方式:1.最基本的使用方式:使用方式很简单,直接沟通过静态方法构传入context,显示内容以及显示时长三个参数,构造Toast对象,然后通过show显示。Toasttoast=
- android源码学习- APP启动流程(android12源码)
失落夏天
安卓-源码分析学习
前言:百度一搜能找到很多讲APP启动流程的,但是往往要么就是太老旧(还是基于android6去分析的),要么就是不全(往往只讲了整个流程的一小部分)。所以我结合网上现有的文章,以及源码的阅读和调试,耗费了3整天的时间,力求写出一篇最完整,最详细,最通俗易懂的文章,来讲清楚在android上,APP是如何启动的。该文属于安卓源码探究专栏中的文章,专栏中很多类似源码分析的文章,欢迎大家阅读。链接如下:
- Compose原理-compose中是如何实现事件分发的
失落夏天
android
前言:安卓原生View的事件分发流程,我们另外一篇文章中有讲到。android源码学习-事件分发处理机制_失落夏天的博客-CSDN博客在compose学习中,就不禁想到,compose的事件分发应该是怎样的呢?我感觉应该和原生是有区别的,毕竟底层的渲染机制都不一样。安卓原生是View->ViewGroup->ViewGroup层层嵌套的结构,而compose中,只有AndroidComposeVi
- android源码学习-android异常处理机制
失落夏天
安卓-源码分析学习
前言:我们都知道,安卓中如果有未处理的异常,会导致崩溃并且退出应用。而如果你有一些java开发经验的话,你也许会知道,java中如果有未处理的异常,只会中断当前的线程,应用进程本身并不会退出。这是为何?安卓不也是基于java去开发的吗?我们就带着这个疑问,去学习了解安卓中的异常处理机制,从而解答这个问题。备注:本文的异常仅指java层的,native层的另外篇章讲解。一.java中如何处理未捕获的
- android源码学习-View如何显示到屏幕上
失落夏天
安卓源码探究
开始流程介绍之前,我们先明确几个概念:1.DecorView:最顶层的View,继承自ViewGroup。2.ViewRootImpl:最顶层的ViewParent,并且是整个View绘制流程的控制者。View和屏幕的关联,以及绘制流程都由该类控制。3.PhoneWindow:用来装载DecorView,我们activity中setConentView方法最终都会交给PhoneWindow的set
- android源码学习-activity启动流程(android8.0源码)
失落夏天
安卓源码探究
整理下,这样写还是不太好的。先总体分为几个流程,activity,Instrumentation,ActivityManagerService,ActivityStarter,ActivityThread这几大部分。其中activity,Instrumentation,ActivityThread属于用户进程,其余的属于系统进程。一Activity中的启动在activity中,无论何种方式调用st
- android源码学习-事件分发处理机制
失落夏天
安卓源码探究
首先来一张图镇楼,说明一下方法的依次调用顺序:这张图囊括了,从native回调java,一直到ViewGroup处理的所有方法堆栈调用。我把事件分发分为4个部分:第一部分:InputEventReceiver1、当用户点击了屏幕上的某个位置之后,native层会接收到。会通过方法回调通知java层这个点击事件。方法位于InputEventReceiver类中的dispathInputEvent方法
- android源码学习-View绘制流程
失落夏天
安卓源码探究
我们的起点设置为View.setVisibility();1、View.setVisibility(View.VISIBLE);2、View.setFlags(visibility,VISIBILITY_MASK);3、判断flag是否有变化,有变化并且不为GONE状态的话,则请求requestLayout()方法if((changed&GONE)!=0){needGlobalAttributes
- android源码学习-目录
失落夏天
安卓源码探究android学习androidstudio
前言:这是2016年规划的目标和文章,当时想把安卓的几大系统的源码全部看完,但是由于人的天性懒惰,虽然一直在进行,但进度却比较缓慢。先列个清单吧,有链接的就是已经完成的,没有链接的就是未来打算完成的。源码讲解清单:1.android源码学习-事件分发处理机制2.android源码学习-View绘制流程3.android源码学习-activity启动流程4.android源码学习-Handler机制
- android源码学习-Handler机制及其六个核心点
失落夏天
安卓源码探究android学习java
前言:该文属于安卓源码探究专栏中的文章,专栏所有文章清单链接如下,欢迎大家阅读。安卓源码探究https://blog.csdn.net/rzleilei/category_6506586.html?spm=1001.2014.3001.5482一、Handler机制介绍1.1Handler是什么?Handler是安卓中很常用的一种机制,其主要用于线程之间的通信。1.2为什么要了解Handler原理
- Android源码学习-EventBus源码浅析
m1Ku
介绍EventBus是一种用于Android的发布/订阅事件总线。在我们开发中经常将其应用于Activity之间,Fragment之间的通讯传值等。它能达到简化组件间的通信,以及解耦事件的发送者和接受者的作用。EventBus使用十分简单,在需要发送数据的地方调用post方法,并将数据对象传入EventBus.getDefault(this).post("test");在我们期望接受到数据的地方,
- Android源码学习笔记
whale343
Android系统架构与系统源码目录http://blog.csdn.net/itachi85/article/details/54695046一篇文章看明白Android系统启动时都干了什么https://blog.csdn.net/freekiteyu/article/details/79175010
- Android系统架构
覆水无言
android源码学习目录先上图android系统架构图.png这是google官方给的Android系统架构图,共分五层应用层applications应用框架层frameworks系统运行库层--naticec/c++libraries/androidruntime硬件抽象层--hardwareabstractionlayerLinux内核层--linuxkernel五层内容的关系android
- android init进程--init.rc解析过程与执行
覆水无言
android源码学习目录androidinit进程AndroidInitLanguage1.init.rc的解析从文章androidinit进程可以看出,init.rc的解析是从init进程main函数中进行的。//android8.0//init进程main函数解析init.rc代码。//Parserinit.rc文件的解析入口/system/core/init/init_parse.cppP
- Android进阶常用网站
karlsu
持续更新...一.Android源码学习网站grepcodeGitrepositoriesonandroidandroidxrefsource.android.tech二.网络请求库okhttp文档地址retrofit文档地址Volley文档地址二.图片加载库frescopicassoglideAndroid-Universal-Image-Loader三.Google官方AndroidStudi
- Android系统的启动过程
覆水无言
android源码学习目录Android系统的启动主要分为7个阶段,每个阶段都会做大量的工作,本文只简单介绍一个整个过程,后续文章会对过程中的几个主要内容进行相许分析。过程启动电源电源启动是所有系统启动的根本,当电源键按下时,就是引导芯片代码从预定义的地方开始执行,这个预定义的地方是固话在ROM里面的,会加载bootLoader到RAM,这也是绝大多数系统启动的第一步。引导程序BootLoader
- Android init进程--属性服务器
覆水无言
android源码学习目录背景对于系统或者应用程序来说,系统或应用会将自己的一些属性存储到注册表或者硬盘的文件上,这样系统或者应用在重启时会读取属性进行系统初始化,这样系统或者应用就会按照我们希望的方式来运行,而不是每次启动都完全从未运行过的状态。介绍--Android属性服务器从上文中知道了系统属性的重要,Android也提供了类似这样一种机制,我们称之为属性服务器(propertyserver
- Android init进程
覆水无言
android源码学习目录目录androidinit进程init进程--属性服务器init进程--init.rc解析与zynote进程启动介绍Androidinit进程是Android系统中用户空间的第一个进程,他有极多工作,例如启动属性服务器和启动Zygote进程,init进程由多个源码组成,位于system/core/init文件夹中。一:Init进程启动前的准备Android系统启动过程:介
- Android Init Language(安卓初始化语言)
覆水无言
android源码学习目录了解Androidinit进程的都知道,启动init进程之前会解析init.rc文件,init.rc是Android的配置文件脚本,它由一种被称为"Android初始化语言"--AndroidinitLanguage编写。1.androidinitlanguage(简称AIL)组成动作--(Actions)命令--(Commands)服务--(Services)选项--(
- Android源码学习系列--Parcelable
iteye_3110
移动开发
实现了该接口的类可以被写入保存在Parcel中。如果实现该接口需要有一个实现了ParcelCreator接口的静态字段CREATOR一个典型的实现如下:publicclassMyParcelableimplementsParcelable{privateintmData;publicintdescribeContents(){return0;}publicvoidwriteToParcel(Par
- android源码学习:ActivityManager类全理解
Dash_Yagi
androidAPI学习android
android.app下有个ActivityManager类,该类的作用官方的解释是:这个类提供有关、交互、activities,services和包含process的信息。这个类中的许多方法都是为了调试或信息的目的,它们不应该被用来影响应用程序的运行时行为,这些方法在方法级文档中被调用。大多数应用程序开发人员不应该使用这个类,大多数的方法都是专门用例的。然而,一些方法更广泛地适用。例如,isLo
- Zygote进程自身的启动
覆水无言
android源码学习目录背景从上文中我们知道Zygote进程是怎样启动的,这里分析AndroidZygote进程main函数都做了什么工作。1.启动入口publicstaticvoidmain(Stringargv[]){.....//创建一个server端的socket,name为zynotezygoteServer.registerServerSocket(socketName);//Ins
- 启动launcher进程的过程
覆水无言
android源码学习目录介绍了解launcher的都知道他是Android系统启动的第一应用,也就是我们通常说的手机主界面,它也是异常普通的Androidapp.1.SystemServer对launcher的启动上文已经介绍过SystemServer对Android系统的各个服务进行了启动,当全部服务启动完成后,会进行launcher的启动,这样才能让用户见到手机的界面。//systemSer
- zygote进程及init进程对zygote进程的启动
覆水无言
android源码学习目录1.介绍zygote进程是一个孵化器,zygote进程启动时会创建Android中ART虚拟机。SystemServer进程,应用程序进程以及运行系统的关键服务进程都是通过fock(复制进程)zygote自身来完成的,所以我们也叫它孵化器进程,因为systemserver等进程是通过fockzygote来完成的,所以zygote中的ART虚拟机也会带入到SystemSer
- Zygote进程对SystemServer进程的启动
覆水无言
android源码学习目录介绍什么是SystemServer,简单来说SystemServer就是Android系统启动各种Service的入口,同时也对各个service进行了管理,其中包括AMS,PMS,WMS.SystemServer是怎么启动的上文我们知道,zygote孵化器进程在他的main函数中调用startSystemServer函数启动了SystemServer进程,通过对zygo
- 源码学习总结《1》Android 系统启动流程
WangRain1
Androidframework源码
对于NDK开发学习已经完结,并且成功的做出相应的案例,银行卡/身份证卡号识别,现在呢,伟大的学习路程又要开始了,接下来就是要学习系统源码framework相关的知识。(只做个人学习总结,学过就留点痕迹~~,不做长篇大论,谢谢^_^)对于android源码学习,最开始肯定要了解以下android系统是怎么启动的,这是对android系统启动流程学习的个人总结,第一次学习源码还是要有个辅助比如:源码系
- Android源码学习目录
覆水无言
Android系统架构Android源码目录Android系统的启动过程Androidinit进程4.1androidinit进程--属性服务器4.2AndroidInitLanguage(安卓初始化语言)4.2androidinit进程--init.rc解析过程与执行zygote进程及init进程对zygote进程的启动5.1zygote进程自身的启动zygote进程对SystemServer的
- Enum用法
不懂事的小屁孩
enum
以前的时候知道enum,但是真心不怎么用,在实际开发中,经常会用到以下代码:
protected final static String XJ = "XJ";
protected final static String YHK = "YHK";
protected final static String PQ = "PQ";
- 【Spark九十七】RDD API之aggregateByKey
bit1129
spark
1. aggregateByKey的运行机制
/**
* Aggregate the values of each key, using given combine functions and a neutral "zero value".
* This function can return a different result type
- hive创建表是报错: Specified key was too long; max key length is 767 bytes
daizj
hive
今天在hive客户端创建表时报错,具体操作如下
hive> create table test2(id string);
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:javax.jdo.JDODataSto
- Map 与 JavaBean之间的转换
周凡杨
java自省转换反射
最近项目里需要一个工具类,它的功能是传入一个Map后可以返回一个JavaBean对象。很喜欢写这样的Java服务,首先我想到的是要通过Java 的反射去实现匿名类的方法调用,这样才可以把Map里的值set 到JavaBean里。其实这里用Java的自省会更方便,下面两个方法就是一个通过反射,一个通过自省来实现本功能。
1:JavaBean类
1 &nb
- java连接ftp下载
g21121
java
有的时候需要用到java连接ftp服务器下载,上传一些操作,下面写了一个小例子。
/** ftp服务器地址 */
private String ftpHost;
/** ftp服务器用户名 */
private String ftpName;
/** ftp服务器密码 */
private String ftpPass;
/** ftp根目录 */
private String f
- web报表工具FineReport使用中遇到的常见报错及解决办法(二)
老A不折腾
finereportweb报表java报表总结
抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己。
出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有。有报错要看日志。下面简单罗列下常见的问题,大多文档上都有提到的。
1、没有返回数据集:
在存储过程中的操作语句之前加上set nocount on 或者在数据集exec调用存储过程的前面加上这句。当S
- linux 系统cpu 内存等信息查看
墙头上一根草
cpu内存liunx
1 查看CPU
1.1 查看CPU个数
# cat /proc/cpuinfo | grep "physical id" | uniq | wc -l
2
**uniq命令:删除重复行;wc –l命令:统计行数**
1.2 查看CPU核数
# cat /proc/cpuinfo | grep "cpu cores" | u
- Spring中的AOP
aijuans
springAOP
Spring中的AOP
Written by Tony Jiang @ 2012-1-18 (转)何为AOP
AOP,面向切面编程。
在不改动代码的前提下,灵活的在现有代码的执行顺序前后,添加进新规机能。
来一个简单的Sample:
目标类:
[java]
view plain
copy
print
?
package&nb
- placeholder(HTML 5) IE 兼容插件
alxw4616
JavaScriptjquery jQuery插件
placeholder 这个属性被越来越频繁的使用.
但为做HTML 5 特性IE没能实现这东西.
以下的jQuery插件就是用来在IE上实现该属性的.
/**
* [placeholder(HTML 5) IE 实现.IE9以下通过测试.]
* v 1.0 by oTwo 2014年7月31日 11:45:29
*/
$.fn.placeholder = function
- Object类,值域,泛型等总结(适合有基础的人看)
百合不是茶
泛型的继承和通配符变量的值域Object类转换
java的作用域在编程的时候经常会遇到,而我经常会搞不清楚这个
问题,所以在家的这几天回忆一下过去不知道的每个小知识点
变量的值域;
package 基础;
/**
* 作用域的范围
*
* @author Administrator
*
*/
public class zuoyongyu {
public static vo
- JDK1.5 Condition接口
bijian1013
javathreadConditionjava多线程
Condition 将 Object 监视器方法(wait、notify和 notifyAll)分解成截然不同的对象,以便通过将这些对象与任意 Lock 实现组合使用,为每个对象提供多个等待 set (wait-set)。其中,Lock 替代了 synchronized 方法和语句的使用,Condition 替代了 Object 监视器方法的使用。
条件(也称为条件队列或条件变量)为线程提供了一
- 开源中国OSC源创会记录
bijian1013
hadoopsparkMemSQL
一.Strata+Hadoop World(SHW)大会
是全世界最大的大数据大会之一。SHW大会为各种技术提供了深度交流的机会,还会看到最领先的大数据技术、最广泛的应用场景、最有趣的用例教学以及最全面的大数据行业和趋势探讨。
二.Hadoop
&nbs
- 【Java范型七】范型消除
bit1129
java
范型是Java1.5引入的语言特性,它是编译时的一个语法现象,也就是说,对于一个类,不管是范型类还是非范型类,编译得到的字节码是一样的,差别仅在于通过范型这种语法来进行编译时的类型检查,在运行时是没有范型或者类型参数这个说法的。
范型跟反射刚好相反,反射是一种运行时行为,所以编译时不能访问的变量或者方法(比如private),在运行时通过反射是可以访问的,也就是说,可见性也是一种编译时的行为,在
- 【Spark九十四】spark-sql工具的使用
bit1129
spark
spark-sql是Spark bin目录下的一个可执行脚本,它的目的是通过这个脚本执行Hive的命令,即原来通过
hive>输入的指令可以通过spark-sql>输入的指令来完成。
spark-sql可以使用内置的Hive metadata-store,也可以使用已经独立安装的Hive的metadata store
关于Hive build into Spark
- js做的各种倒计时
ronin47
js 倒计时
第一种:精确到秒的javascript倒计时代码
HTML代码:
<form name="form1">
<div align="center" align="middle"
- java-37.有n 个长为m+1 的字符串,如果某个字符串的最后m 个字符与某个字符串的前m 个字符匹配,则两个字符串可以联接
bylijinnan
java
public class MaxCatenate {
/*
* Q.37 有n 个长为m+1 的字符串,如果某个字符串的最后m 个字符与某个字符串的前m 个字符匹配,则两个字符串可以联接,
* 问这n 个字符串最多可以连成一个多长的字符串,如果出现循环,则返回错误。
*/
public static void main(String[] args){
- mongoDB安装
开窍的石头
mongodb安装 基本操作
mongoDB的安装
1:mongoDB下载 https://www.mongodb.org/downloads
2:下载mongoDB下载后解压
 
- [开源项目]引擎的关键意义
comsci
开源项目
一个系统,最核心的东西就是引擎。。。。。
而要设计和制造出引擎,最关键的是要坚持。。。。。。
现在最先进的引擎技术,也是从莱特兄弟那里出现的,但是中间一直没有断过研发的
 
- 软件度量的一些方法
cuiyadll
方法
软件度量的一些方法http://cuiyingfeng.blog.51cto.com/43841/6775/在前面我们已介绍了组成软件度量的几个方面。在这里我们将先给出关于这几个方面的一个纲要介绍。在后面我们还会作进一步具体的阐述。当我们不从高层次的概念级来看软件度量及其目标的时候,我们很容易把这些活动看成是不同而且毫不相干的。我们现在希望表明他们是怎样恰如其分地嵌入我们的框架的。也就是我们度量的
- XSD中的targetNameSpace解释
darrenzhu
xmlnamespacexsdtargetnamespace
参考链接:
http://blog.csdn.net/colin1014/article/details/357694
xsd文件中定义了一个targetNameSpace后,其内部定义的元素,属性,类型等都属于该targetNameSpace,其自身或外部xsd文件使用这些元素,属性等都必须从定义的targetNameSpace中找:
例如:以下xsd文件,就出现了该错误,即便是在一
- 什么是RAID0、RAID1、RAID0+1、RAID5,等磁盘阵列模式?
dcj3sjt126com
raid
RAID 1又称为Mirror或Mirroring,它的宗旨是最大限度的保证用户数据的可用性和可修复性。 RAID 1的操作方式是把用户写入硬盘的数据百分之百地自动复制到另外一个硬盘上。由于对存储的数据进行百分之百的备份,在所有RAID级别中,RAID 1提供最高的数据安全保障。同样,由于数据的百分之百备份,备份数据占了总存储空间的一半,因而,Mirror的磁盘空间利用率低,存储成本高。
Mir
- yii2 restful web服务快速入门
dcj3sjt126com
PHPyii2
快速入门
Yii 提供了一整套用来简化实现 RESTful 风格的 Web Service 服务的 API。 特别是,Yii 支持以下关于 RESTful 风格的 API:
支持 Active Record 类的通用API的快速原型
涉及的响应格式(在默认情况下支持 JSON 和 XML)
支持可选输出字段的定制对象序列化
适当的格式的数据采集和验证错误
- MongoDB查询(3)——内嵌文档查询(七)
eksliang
MongoDB查询内嵌文档MongoDB查询内嵌数组
MongoDB查询内嵌文档
转载请出自出处:http://eksliang.iteye.com/blog/2177301 一、概述
有两种方法可以查询内嵌文档:查询整个文档;针对键值对进行查询。这两种方式是不同的,下面我通过例子进行分别说明。
二、查询整个文档
例如:有如下文档
db.emp.insert({
&qu
- android4.4从系统图库无法加载图片的问题
gundumw100
android
典型的使用场景就是要设置一个头像,头像需要从系统图库或者拍照获得,在android4.4之前,我用的代码没问题,但是今天使用android4.4的时候突然发现不灵了。baidu了一圈,终于解决了。
下面是解决方案:
private String[] items = new String[] { "图库","拍照" };
/* 头像名称 */
- 网页特效大全 jQuery等
ini
JavaScriptjquerycsshtml5ini
HTML5和CSS3知识和特效
asp.net ajax jquery实例
分享一个下雪的特效
jQuery倾斜的动画导航菜单
选美大赛示例 你会选谁
jQuery实现HTML5时钟
功能强大的滚动播放插件JQ-Slide
万圣节快乐!!!
向上弹出菜单jQuery插件
htm5视差动画
jquery将列表倒转顺序
推荐一个jQuery分页插件
jquery animate
- swift objc_setAssociatedObject block(version1.2 xcode6.4)
啸笑天
version
import UIKit
class LSObjectWrapper: NSObject {
let value: ((barButton: UIButton?) -> Void)?
init(value: (barButton: UIButton?) -> Void) {
self.value = value
- Aegis 默认的 Xfire 绑定方式,将 XML 映射为 POJO
MagicMa_007
javaPOJOxmlAegisxfire
Aegis 是一个默认的 Xfire 绑定方式,它将 XML 映射为 POJO, 支持代码先行的开发.你开发服 务类与 POJO,它为你生成 XML schema/wsdl
XML 和 注解映射概览
默认情况下,你的 POJO 类被是基于他们的名字与命名空间被序列化。如果
- js get max value in (json) Array
qiaolevip
每天进步一点点学习永无止境max纵观千象
// Max value in Array
var arr = [1,2,3,5,3,2];Math.max.apply(null, arr); // 5
// Max value in Jaon Array
var arr = [{"x":"8/11/2009","y":0.026572007},{"x"
- XMLhttpRequest 请求 XML,JSON ,POJO 数据
Luob.
POJOjsonAjaxxmlXMLhttpREquest
在使用XMlhttpRequest对象发送请求和响应之前,必须首先使用javaScript对象创建一个XMLHttpRquest对象。
var xmlhttp;
function getXMLHttpRequest(){
if(window.ActiveXObject){
xmlhttp:new ActiveXObject("Microsoft.XMLHTTP
- jquery
wuai
jquery
以下防止文档在完全加载之前运行Jquery代码,否则会出现试图隐藏一个不存在的元素、获得未完全加载的图像的大小 等等
$(document).ready(function(){
jquery代码;
});
<script type="text/javascript" src="c:/scripts/jquery-1.4.2.min.js&quo