0%

某瑞芯微开发板 Android 系统调试开发小记

最近在捣鼓一个 RK3288RK3568 的板子,运行的系统有 Android 5.1Android 7.1Android 11

倒腾半天发现有许多地方不同,记录一下。

挂载文件系统可读写

# 切换为 ROOT Shell 环境
adb root
# 挂载文件系统为读写
adb remount

开启 Busybox 支持

这板子系统内默认没有 Busybox,由于经常系统修改系统配置,所有下载一个放进去。

  1. Busybox 官网下载适用的二进制文件
    https://www.busybox.net/downloads/binaries/1.31.0-defconfig-multiarch-musl/

    我这下载的是 busybox-armv8l 这个文件。

  2. 推入设备
    adb push busybox-armv8l /data/local/tmp/busybox
    adb shell chmod +x /data/local/tmp/busybox
    

    必要时可以调用 busybox --install 进行安装。

默认开启 ADB 网络调试

不同的 Android 系统操作略有不同,都记录一下供参考。

  • 5.1 系统
    echo "service.adb.tcp.port=5555" >> /system/build.prop
    
  • 7.1 系统
    adb shell setprop persist.adb.tcp.port 5555
    adb shell setprop persist.internet.adb.enable 1
    
  • 11 系统
    adb shell setprop persist.adb.tcp.port 5555
    adb shell setprop persist.internet_adb_enable 1
    

按分辨率适配

屏幕部分使用了不同分辨率的屏幕,且安装方向不同。为了适配,使用完整的限定资源名来区分:

├─layout
├─layout-240dpi-1848x1080
├─layout-land-240dpi-952x768
├─values
├─values-240dpi-1848x1080
└─values-land-240dpi-952x768

其中的分辨率发现不是使用屏幕物理分辨率,得用使用命令查询:

  • RK3288 7.1.1 1920x1080
rk3288:/ $ dumpsys window displays | grep init=
    init=1920x1080 240dpi cur=1080x1920 app=1080x1848 rng=1080x970-1920x1810
  • RK3288 7.1.1 1024x768
rk3288:/ $ dumpsys window displays | grep init=
    init=1024x768 240dpi cur=1024x768 app=952x768 rng=768x732-952x916
  • RK3288 5.1.1 1024x768
rk3288:/ $ dumpsys window displays | grep init=
    init=1024x768 240dpi cur=1024x768 app=1024x696 rng=768x658-1024x914

结果中的 app= 就是资源目录的分辨率。

待续…

  • 本文作者: 6x
  • 本文链接: https://6xyun.cn/article/206
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-ND 许可协议。转载请注明出处!