android
文章平均质量分 70
yacoo_t
尽量原创。
尽量一次只说明一个问题,说清楚。
展开
-
Android Intent的实质
这篇代码分析,说明了一个小问题:Intent的实质是binder原创 2015-03-06 13:54:44 · 482 阅读 · 0 评论 -
我的进阶曲线之八
Android Binder原创 2015-10-10 15:24:53 · 424 阅读 · 0 评论 -
我的进阶曲线之九
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 · 332 阅读 · 0 评论 -
我的进阶曲线之十
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 · 344 阅读 · 0 评论 -
我的进阶曲线十一
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 · 611 阅读 · 0 评论 -
我的进阶曲线十二
PowerManagerService.java case WAKEFULNESS_ASLEEP: Slog.i(TAG, "Waking upfrom sleep..."); sendPendingNotificationsLocked(); mNotifier.onWa原创 2015-10-10 15:27:44 · 705 阅读 · 0 评论 -
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 · 755 阅读 · 0 评论 -
我的进阶曲线十三
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 · 614 阅读 · 0 评论 -
我的进阶曲线之三
*#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 · 832 阅读 · 0 评论 -
我的进阶曲线之七
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 · 290 阅读 · 0 评论 -
我的进阶曲线之六
用更少的内存来运行Android简介android现在可以运行在只有512M RAM的设备上了。本文就是用来帮助OEM厂商进行配置和优化,使得Android4.4运行在低内存设备上。部分优化措施因为比较通用,也可以在前几个android版本上部署。Android 4.4 平台优化策略优化内存管理检查内核节省内存的相关配置,如KSM(Kerne原创 2015-10-10 15:23:35 · 379 阅读 · 0 评论 -
我的进阶曲线之五
andriod watchdog 需要各个应用自身去注册监听adb shell dumpsys activity services > a-s.txt 或者 adb shell service list原创 2015-10-10 15:20:58 · 699 阅读 · 0 评论 -
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 · 764 阅读 · 0 评论 -
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 · 1493 阅读 · 0 评论 -
谷歌官方制作的 android性能优化典范 视频,我下载下来了并做了分享,希望更多人受益吧。
谷歌官方制作的 android性能优化典范 视频,我下载下来了并做了分享,希望更多人受益吧。http://pan.baidu.com/s/1pJFTjmV原创 2015-04-09 10:49:02 · 908 阅读 · 0 评论 -
ARM调用规范
形象简述ARM调用规范原创 2015-08-28 14:02:54 · 764 阅读 · 0 评论 -
我的进阶曲线之一
在Linux中文件名前加上.表示是一个隐藏文件。U-Boot可支持的主要功能列表:* 系统引导;* 支持NFS挂载、RAMDISK(压缩或非压缩)形式的根文件系统;* 支持NFS挂载、从FLASH中引导压缩或非压缩系统内核;* 基本辅助功能 强大的操作系统接口功能;可灵活设置、传递多个关键参数给操作系统,适合系统在不同开发阶段的调试要求与产品发布,尤对Linux支持最为原创 2015-09-29 10:30:13 · 690 阅读 · 0 评论 -
我的进阶曲线之二
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 · 359 阅读 · 0 评论 -
我的进阶曲线之四
参考链接: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 · 391 阅读 · 0 评论 -
Java Reflection
想必学过JAVA的人一定接触过“反射”(Reflection)这个名词,简单的来说,反射机制就是允许编程人员在程序运行时来改变程序的结构或者变量的类型。通过这个特性,我们可以在运行时得知某个类的所有成员,包括其属性和方法,同时也能够调用这些方法。请注意反射机制的特殊之处就在于可以使用编译期间完全未知的类,也就是通过反射机制可以加载一个在运行时才得知名字的类,从而取得其内部的成员函数并调用。转载 2015-12-09 17:50:02 · 405 阅读 · 0 评论