因为项目需要,在RockPi4B安卓开发板上移植一个驱动软件。这里记录遇到的坑:
1、开发板配件缺失。由于这块板用的内存是eMMC,需购买eMMC转USB,以便烧录映像文件;由于Type-C口供电,需要通过USB连接电脑调试,需购买USB公对公线。
2、电脑通过USB连到这块开发板,adb devices检测不到板子。查看安卓设置里USB的选项,都是灰的。仔细阅读在线资料,里边提到:
To access ADB, you need a USB male A to A cable(Upper USB3 port) and turn the USB OTG switch to Device mode.
仔细看检查板子,发现USB口的背面有一个小开关,拨到另一边,电脑就能检测到了。如下图的红圈所示:
3、这个项目是将SDR(软件无线电)接收器的驱动移植到安卓。
4、驱动是c代码,在Linux上已调通。考虑先用ndk将c代码编译成安卓平台的版本,再通过adb shell来运行,看看效果。
5、将ndk-build编译c代码生成的可执行文件rtl_sdr,通过adb push上传到sdcard/download目录下,chmod 777 rtl_sdr,无效。google这个问题得知,sdcard目录下是不允许有可执行文件的。于是mv到storage目录下再chmod搞定。
6、运行rtl_sdr,提示permission dennied。估计是因为这个程序用到USB接口,要获得相应权限的permission,看来想绕开app开发直接在adb shell运行是不行的了。
RockPi4安卓开发日记(一)
最新推荐文章于 2024-08-29 14:36:54 发布