天天看点

文件修改如何简单修改Android的so文件

PS:今天上午,非常郁闷,有很多简略基础的问题搞得我有些迷茫,哎,代码几天不写就忘。目前又不当COO,还是得用心记代码哦!

场景

    有的时候须要定制Android默认蓝牙设备名称,当然在我们有源码的情况下自然是很好处理,但如果没有源码呢?这时候就须要修改so文件了。

    蓝牙默认设备名称的修改在:

frameworks\base\core\jni\Android_bluetooth_common.h

    主要就是修改BTMTK_ANDROID_DEFAULT_LOCAL_NAME的值

    #define BTMTK_ANDROID_DEFAULT_LOCAL_NAME "ANDROID BT"

    查看相关mk文件可以知道,该文件终究编译到了libandroid_runtime.so中,所以我们直接找到编译好的libandroid_runtime.so

工具

    每日一道理

生活中受伤难免,失败跌倒并不可怕,可怕的是因此而一蹶不振,失去了对人生的追求与远大的理想。没有一个人的前进道路是平平稳稳的,就算是河中穿梭航行的船只也难免颠簸,生活中所遇上的坎坷磨难不是偶尔给予的为难,而是必然所经受的磨练。

    WinHex

    该工具是一款非常不错的 16 进制编辑器,得到 ZDNetSoftwareLibrary 五星级最高评价,拥有壮大的系统效用。

    (PS:按F3查找下一个)

方法

    将libandroid_runtime.so载入到WinHex中,然后全文搜索ANDROID BT,理论上只会有一处,当然也不能消除有多处,终究定位到代码如下:

    00684736 | 73 31 35 00 48 49 4B 65  20 37 31 36 00 5B 47 41 | s15 ANDROID BT

    在WinHex中我们可以搜到唯一一处定义,因此直接修改成自己想定义的名称,完成以后点击保存,从新push到设备中,重启设备即可失效

文章结束给大家分享下程序员的一些笑话语录: Borland说我很有前途,Sun笑了;Sun说我很有钱,IBM笑了;IBM说我很专业,Sybase笑了;Sybase说我数据库很牛,Oracle笑了;Oracle说我是开放的,Linux笑了;Linux说我要打败Unix,微软笑了;微软说我的系统很稳定,我们都笑了。

---------------------------------

原创文章 By

文件和修改

继续阅读