- 博客(22)
- 资源 (4)
- 收藏
- 关注
转载 Java Reflection
想必学过JAVA的人一定接触过“反射”(Reflection)这个名词,简单的来说,反射机制就是允许编程人员在程序运行时来改变程序的结构或者变量的类型。通过这个特性,我们可以在运行时得知某个类的所有成员,包括其属性和方法,同时也能够调用这些方法。请注意反射机制的特殊之处就在于可以使用编译期间完全未知的类,也就是通过反射机制可以加载一个在运行时才得知名字的类,从而取得其内部的成员函数并调用。
2015-12-09 17:50:02
432
原创 Android Boot Slice(1st)
Android Boot Slice基本流程再捋一遍:Kernel ---> init ---> (by RC script) ---> zygote(app_process NATIVE) ---> Android Runtime ---> StartVm ---> zygote init(JAVA) ---> systemserver ---> PMS+AMS+...Whe
2015-11-12 14:58:13
807
原创 我的进阶曲线十三
binder_mmap目前在代码中size为:BINDER_VM_SIZE在我们手机里面通过 adb shell cat /proc/vmallocinfo 可以看到,通过binder_mmap映射的虚拟内存正好是这么大:(1020K)查看应用启动时长am start -W -n com.example.appstart.yespreview/com.example
2015-10-27 16:45:14
686
原创 我的沉思---生产,消费以及其他
.消费者价值起源:门格尔和奥地利学派确定了的消费者在生产行为决策中的最重要的地位,是消费者的最终需求,而不是工作时间或是生产成本决定生产过程中的结构和定价。奥地利学派称之为他们的“归属理论”。效用(imputed)决定投入的价值。证明这一关系后,奥地利学派创建了不再隶属于马克思社会主义的新模型。
2015-10-12 15:49:47
366
原创 我的进阶曲线十二
PowerManagerService.java case WAKEFULNESS_ASLEEP: Slog.i(TAG, "Waking upfrom sleep..."); sendPendingNotificationsLocked(); mNotifier.onWa
2015-10-10 15:27:44
743
原创 我的进阶曲线十一
KeyguardViewMediator // Let's us knowthe screen was turned on.OnScreenTurnedOn // Send amessage to keyguard telling it the screen just turned on.NotifyScreenOnLocked Message ms
2015-10-10 15:26:37
635
原创 我的进阶曲线之十
Malloc代码实现 dlmalloc /* Basic algorithm: If a small request ( 1. If one exists, use a remainderlesschunk in associated smallbin. (Remainderless means that there ar
2015-10-10 15:25:53
376
原创 我的进阶曲线之九
public abstract class ActivityManagerNative extends Binderimplements IActivityManager /** * Cast a Binder object into an activitymanager interface, generating * a proxy if neede
2015-10-10 15:25:26
365
原创 我的进阶曲线之七
init.rcservice zygote/system/bin/app_process -Xzygote /system/bin --zygote --start-system-serverapp_main.cpp if (zygote) { runtime.start("com.android.internal.os.ZygoteInit",
2015-10-10 15:24:13
313
原创 我的进阶曲线之六
用更少的内存来运行Android简介android现在可以运行在只有512M RAM的设备上了。本文就是用来帮助OEM厂商进行配置和优化,使得Android4.4运行在低内存设备上。部分优化措施因为比较通用,也可以在前几个android版本上部署。Android 4.4 平台优化策略优化内存管理检查内核节省内存的相关配置,如KSM(Kerne
2015-10-10 15:23:35
404
原创 我的进阶曲线之五
andriod watchdog 需要各个应用自身去注册监听adb shell dumpsys activity services > a-s.txt 或者 adb shell service list
2015-10-10 15:20:58
773
原创 我的进阶曲线之四
参考链接:http://www.ihref.com/read-16369.html#4.1 git add 仅仅是提交到缓存git reset HEAD 从缓存中删除git commit 根据缓存生成磁盘快照 (git commit -a 就可以把 git add一并做了)git commit --amend 修改最后一次提交的注释g
2015-10-10 15:15:49
422
原创 我的进阶曲线之三
*#9527*# 工厂模式WAKELOCK TYPE:PARTIAL_WAKE_LOCK:保持CPU 运转,屏幕和键盘灯有可能是关闭的。SCREEN_DIM_WAKE_LOCK:保持CPU 运转,允许保持屏幕显示但有可能是灰的,允许关闭键盘灯SCREEN_BRIGHT_WAKE_LOCK:保持CPU 运转,允许保持屏幕高亮显示,允许关闭键盘灯FULL_WAKE_LOCK
2015-10-10 14:29:33
884
原创 我的进阶曲线之二
WAKELOCK TYPE:PARTIAL_WAKE_LOCK:保持CPU 运转,屏幕和键盘灯有可能是关闭的。SCREEN_DIM_WAKE_LOCK:保持CPU 运转,允许保持屏幕显示但有可能是灰的,允许关闭键盘灯SCREEN_BRIGHT_WAKE_LOCK:保持CPU 运转,允许保持屏幕高亮显示,允许关闭键盘灯FULL_WAKE_LOCK:保持CPU 运转,保持屏幕高亮显示,
2015-10-10 11:46:57
397
原创 我的进阶曲线之一
在Linux中文件名前加上.表示是一个隐藏文件。U-Boot可支持的主要功能列表:* 系统引导;* 支持NFS挂载、RAMDISK(压缩或非压缩)形式的根文件系统;* 支持NFS挂载、从FLASH中引导压缩或非压缩系统内核;* 基本辅助功能 强大的操作系统接口功能;可灵活设置、传递多个关键参数给操作系统,适合系统在不同开发阶段的调试要求与产品发布,尤对Linux支持最为
2015-09-29 10:30:13
763
原创 谷歌官方制作的 android性能优化典范 视频,我下载下来了并做了分享,希望更多人受益吧。
谷歌官方制作的 android性能优化典范 视频,我下载下来了并做了分享,希望更多人受益吧。http://pan.baidu.com/s/1pJFTjmV
2015-04-09 10:49:02
965
原创 Android系统调用流程---以open为例
Android系统调用流程---以open为例 在bionic\libc\unistd\open.c中,有用户空间的open系统调用函数,如下:int open(const char *pathname, int flags, ...)return__open(pathname, flags, mode);可见调用到了 __open函数。 那我们接着去找__open函数
2015-03-06 17:06:33
1642
原创 Binder mmap
Binder mmapBy yacoo 这篇小文,只说明一件事情,如何从应用层的binder mmap调用到binder驱动mmap。 1. 先给出两个打开binder设备的场景,我们可以看到,mmap 空间的size并不一样。l service_manager.cintmain(int argc, char **argv)bs = binder_op
2015-03-06 16:34:47
811
原创 史上最坑的函数 --- strtok
史上最坑的函数 --- strtokp = strtok(src, ",");if(p){ p = func();}p= strtok(NULL, ","); ---就这里,会产生异常返回结果的!假如在 func() 中执行了 strtok()
2015-03-06 15:56:45
586
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人