免AOSP源码树编译安卓内核

为了让老 Note4 发挥余热,去掉该死的SELinux,编译一下内核,macOS编译不了,缺少elf.h,查查解决方案蛮麻烦的,干脆新开个ubuntu,顺便试用一下据说不错的苹果Hypervisor framework【性能+10,内存占用-50】。 传统交叉编译时需要checkout整个20..


macOS 下编译集成 Python 3 的 GDB

2017-10-31更新:brew维护者明确表示需要上游合并,而从文末来看明显不可能合并了。我的PR在那放着也不会丢,从这个链接下载patch并自行apply即可。 Python是信仰。版本也是信仰的一部分。 开玩笑的啦。之所以非要自己编译,是因为gdb的某个插件不支持Py2.x。更何况,3比2..


源码级解析安卓SELinux应用权限分配

在运用了上文的方法(好吧这个上文我还没发)将我的ROM用自己的证书签名以后,我遇到了一个奇怪的bug,开机载入完成后会显示“系统界面已停止运行”,点击“关闭应用”以后会无限循环报错。这里结合安卓7.1.1源码,小记一下因为SELinux导致的这个奇怪问题的解决思路。 首先当然得查看一下log。..


Go二进制文件混淆保护

Go实在是太棒了。一处编译,处处运行,没有依赖,毫无麻烦! 不过麻烦的事情来了。我们写一个程序,就是想在别人的电脑上运行的。然而,Go语言的默认机制,会泄漏我们的一些信息,虽然不多,但也有点尴尬。本文结合网上的一些常用方法,总结出一套通用的简单易行的保护措施。 删除调试符号 默认情况下go编译..


15分钟速成Golang

项目需要,要撸go。翻译了一篇非常棒的Go语言教程。原文最有特色的地方在于,用代码的方式解释代码,用代码的方式阐述语言的特性。很适合有一定基础的人来看。这叫什么什么,Eschew surplusage 原译本很机翻,内容也不全——我还是觉得写代码的人都该多看看书,真的!就算不为泡妹子,文档总要写..


Android 7.1.1 消除网络报错小叉叉的N种方法

Marshmallow及以前的版本,修改 captive_portal_server 的方法尽人皆知,在Nougat版本更新后这个方法就没什么卵用了。原因呢,简单来讲,就是检测网络连接的那段代码被重!写!了! 下面把几个好用的方法都说一下。 修改系统设置 Nougat系统中,主要修改的就是两个..


Dalvik指令概述

书里写的实在是太差了。自己稍微总结一下。 字节码表示方式 Bytecode 位描述 Bitwise description 用于表示指令二进制码的数据布局。 [A|G|op BBBB F|E|D|C] 一个字母代表4bit数据(一发十六进制) op表示8bit操作码(一个字节byte,..


Compile Kali Nethunter

黑客嘛,随身总要带一些行头,以满足处处装逼的欲望,于是他们发明了Kali Nethunter,把黑客精神随身装在手机里,行之所至,处处志之。行头哪里来?诶诶我不送,不送啊。黑客嘛,用自己的东西才叫牛逼,用别人的东西只能叫装逼。所以我在这讲一讲怎么把裤兜里刷微信玩游戏的手机统统变成“黑客手机”。 ..