Android Binder 总结

基本概念 我们知道, Android 系统是基于 Linux 内核的。 进程隔离 进程隔离是为保护操作系统中进程互不干扰而设计的一组不同硬件和软件的技术。 这个技术是为了避免进程 A 写入进程 B 的情况发生。 进程的隔离实现,使用了虚拟地址空间。 进程 A 的虚拟地址和进程 B 的虚拟地址不同,这样就防止进程 A 将数据信息写入进程 B 。 操作系统的不同进程之间,数据是不共享,但是如果一个进程想要和另外一个进程进行通信,咋办呢,这就涉及到进程通信的问题。 ...

阅读更多

Activity 的生命周期和启动模式

生命周期 onStart(): Activity 正在启动,这时 Activity 已经可见,但是还没有出现在前台,还无法进行交互。 onResume(): Activity 可见,并且在前台,并且开始活动,可以和用户进行交互。 当前 Activity 的 onStop() 方法是否执行,关键在于启动的 Activity 的主题,如果启动的 Activity 主题是透明的,那么当前 Activity 的 onStop() 就不会执行,如果不是透明的,...

阅读更多

Android 性能优化

做到以下四点:稳,快,小,省 稳 稳定性 内存泄漏,内存溢出, ARN ,Crash 快 流畅,不卡顿 过度绘制,嵌套,耗时,卡顿 小 APK 体积要小 资源优化,代码优化 省 省电,省流量 代码质量和逻辑 主要包括一下优化措施。 布局优化 详情: Android 性能优化 – 布局优化 绘制优化 详情: Android 性能优化 – 绘制优化 内存优化 详情: Android 性能优化 – 内存优化 L...

阅读更多

在 Github 上搭建 Jekyll 博客和创建主题

转载 yansu的bolg 之前本来想展开写的,后来发现 Jekyll 官网的教程已经非常完善了就没有多写,所以只有这篇。 但是过了这么久,发现很多人还是不清楚怎么搭建,所以这里打算详细写一下,并且把自己对图片的解决方案以及主题的创建步骤也一并写下。 本篇主要谈如何搭建,不再讲为什么用它们。 说明:本篇用到的代码中,为了防止解析冲突,一律多了\这个来防止被误解析 创建一个库 在 Github 上新开一个库,名字叫做username.gith...

阅读更多

Linux 下多个命令连续执行方法

转载 yansu的bolg 有的时候执行一些简单指令的时候总不想分好几次输入,利用以下方法可以方便的一次执行多个命令 连续不中断执行 用;可以让多个命令连续知行,中间出现错误并不会中断后面命令,如 mkdir test; mkdir test; rmdir test; 虽然第二条指令会报错,但是不会影响后面的指令,最后 test 目录不存在 出错停止后面指令 用&&分割的命令,如果没有错误会一直执行下去,出现错误立即中止...

阅读更多

Mac 常用资源

转载 yansu的bolg 常用软件 Alfred Alfred常用Workflow Dash Dict - Lookup Word Reminders Evernote Notes 常用命令 开启关闭dashboard 关闭 defaults write com.apple.dashboard mcx-disabled -boolean YES killall Dock 开启 defaults write com...

阅读更多

Android 性能优化 -- ListView 优化

复用 contentView ,减少重新分配缓存造成的内存频繁分配回收 ViewHolder的使用,主要是因为 findViewById() 消耗时间太大,使用 setTag() , getTag() 得到view 图片加载优化 监听 Listview 的滑动状态,滑动的时候(SCROLL_STATE_TOUCH_SCROLL)和惯性滑动的时候(SCROLL_STATE_FLING)不加载,停止滑动的时候再加载。listView.setOnScrollLi...

阅读更多

Shell 常用资源

转载 yansu的bolg 常用指令 文本内容搜索 grep aaa * 文件夹操作 查看文件夹大小 du -h --max-depth=1 /home/ys 查看驱动器空间 df -h 压缩命令 tar zxvf aaa.tar.gz tar zcvf aaa.tar.gz aaa 登陆到其他用户 login 查看端口的占用 lsof -i:8087 查看 8087 端口的使用 批量杀死进程 ps -aux|gr...

阅读更多