一.命令学习:
1.adb shell :进入Android终端命令行
2.adb push 完整文件名 需要安装的路径:将当前文件夹下的某文件安装到指定路径
3.ls:
- chmod 644 <完整文件名>
数字权限使用格式:
在这种使用方式中,首先我们需要了解数字如何表示权限。 首先,我们规定 数字 4 、2 和 1表示读、写、执行权限(具体原因可见下节权限详解内容),即 r=4,w=2,x=1 。此时其他的权限组合也可以用其他的八进制数字表示出来,如: rwx = 4 + 2 + 1 = 7 rw = 4 + 2 = 6 rx = 4 +1 = 5 即
若要同时设置 rwx (可读写运行) 权限则将该权限位 设置 为 4 + 2 + 1 = 7 若要同时设置 rw- (可读写不可运行)权限则将该权限位 设置 为 4 + 2 = 6 若要同时设置 r-x (可读可运行不可写)权限则将该权限位 设置 为 4 +1 = 5
上面我们提到,每个文件都可以针对三个粒度,设置不同的rwx(读写执行)权限。即我们可以用用三个8进制数字分别表示 拥有者 、群组 、其它组( u、 g 、o)的权限详情,并用chmod直接加三个8进制数字的方式直接改变文件权限。语法格式为 :
-rw------- (600) 只有拥有者有读写权限。
-rw-r--r-- (644) 只有拥有者有读写权限;而属组用户和其他用户只有读权限。
-rwx------ (700) 只有拥有者有读、写、执行权限。
-rwxr-xr-x (755) 拥有者有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
-rwx--x--x (711) 拥有者有读、写、执行权限;而属组用户和其他用户只有执行权限。
-rw-rw-rw- (666) 所有用户都有文件读、写权限。
-rwxrwxrwx (777) 所有用户都有读、写、执行权限。
二.练习(将APP修改为系统应用)
系统程序就是system/app目录中的程序,普通应用转换成系统程序后有稳定、减少内存(DATA)空间占用、恢复出厂设置后不会消失、修改系统时间、调用隐藏方法、系统关机重启、静默安装升级卸载应用等等等等优点。
该Android系统需为root过的系统
1、so文件移动到system/lib目录;
2、把apk文件移动到system/app目录;
3、修改相应的权限。
操作步骤:
- 把你的设备设置为允许usb调试,连接otg线
- 打开adb工具(我使用的是Android studio自带的adb工具)
- 输入命令
adb shell
- 输入命令
mount
从中找到 system 目录
根据设备的不同可能路径会不同。
5.system默认是只读文件夹,所以根据上面的提示输入下面命令,使其变为可读写
mount -o remount /dev/block/by-name /system
输入 exit 退出android系统终端
6.解压apk文件,将lib/armeabi-v7a文件夹下的so文件,都拷贝到/system/lib文件夹下:
命令:adb push libSerialPort.so system/lib
拷贝完了之后呢,要给这些库文件添加权限,看看别的库文件权限是几
chmod 644 xxxxx.so
将apk文件拷贝进入/system/app(该文件夹里存放着所有系统级别的apk)
再次进入android终端 adb shell
进入system/app文件夹 cd system/app
查看其他apk的权限 ll 能看出区别
修改apk权限使其和其他的一样
chmod 644 xxx.apk