10Android Wifi 移植配置 http://blog.youkuaiyun.com/wh_19910525/article/details/7397570

本文详细记录了将WiFi移植至Eclair与Froyo平台的过程,包括配置BoardConfig.mk文件、创建wpa_supplicant.conf文件、复制网络驱动模块、修改相关源代码与初始化文件等关键步骤。分享移植经验和解决常见问题的方法,帮助开发者顺利完成移植工作。

最近移植wifi到Eclair,Froyo平台。由于没有记录下移植步骤和心得,以至于每次都浪费了大量的精力。在此记录下移植步骤和心得,并和大家分享,如果有错误欢迎指正。

1、在你的BoardConfig.mk文件中增加一行(根据你的无线网卡类型来设置):

1: BOARD_WPA_SUPPLICANT_DRIVER := WEXT

2、在你的board配置目录下创建一个wpa_supplicant.conf文件,输入如下内容:

1: ctrl_interface=DIR=/data/system/wpa_supplicant

2: update_config=1

3、copy网络驱动模块ko文件到你的board配置目录下,下文假设网卡驱动模块为LK_DRV_USB_RTL8192.ko。

4、修改board配置目录下的AndroidBoard.mk,增加如下代码:

1: file := $(TARGET_OUT)/lib/modules/LK_DRV_USB_RTL8192.ko

2: ALL_PREBUILT += $(file)

3: $(file) : $(LOCAL_PATH)/LK_DRV_USB_RTL8192.ko | $(ACP)

4: $(transform-prebuilt-to-target)

5: 

6: file := $(TARGET_OUT_ETC)/wifi/wpa_supplicant.conf

7: ALL_PREBUILT += $(file)

8: $(file) : $(LOCAL_PATH)/wpa_supplicant.conf | $(ACP)

9: $(transform-prebuilt-to-target)

5、修改hardware/libhardware_legacy/wifi/wifi.c文件。

重新定义WIFI_DRIVER_MODULE_PATH和WIFI_DRIVER_MODULE_NAME宏,定义如下:

1: #ifndef WIFI_DRIVER_MODULE_PATH

2: #define WIFI_DRIVER_MODULE_PATH "/system/lib/modules/LK_DRV_USB_RTL8192.ko"

3: #endif

4: #ifndef WIFI_DRIVER_MODULE_NAME

5: #define WIFI_DRIVER_MODULE_NAME "LK_DRV_USB_RTL8192"

6: #endif

6、修改init.rc文件,修改如下:

1: chmod 0771 /system/etc/wifi wifi wifi

2: chmod 0660 /system/etc/wifi/wpa_supplicant.conf

3: chown wifi wifi /system/etc/wifi/wpa_supplicant.conf

4: mkdir /data/misc/wifi 0771 wifi wifi

5: 

6: mkdir /data/misc/wifi/sockets 0771 wifi wifi

7: # wpa_supplicant socket

8: mkdir /data/system/ 0771 system system

9: mkdir /data/system/wpa_supplicant 0771 wifi wifi

10: 

11: mkdir /data/misc/dhcp 0771 system system

12: 

13: setprop wifi.interface wlan0

14: 

15: ice wpa_supplicant /system/bin/wpa_supplicant -dd -Dwext -iwlan0 -c /system/etc/wifi/wpa_supplicant.conf

16: group system wifi inet

17: disabled

18: oneshot

19: 

20: ice dhcpcd /system/bin/dhcpcd wlan0

21: group system dhcp

22: disabled

23: oneshot

注意如果有问题,请给各个目录设置为777属性,把文件设置为666的文件属性试试。

7、最好是clean掉,全部重新编译。享受终于可以享受wifi了!

### 技术内容分析与关联问题 #### 博客链接1:https://blog.csdn.net/maizousidemao/article/details/81474834 该博客文章主要围绕OpenCV的安装与配置展开,详细描述了在Windows环境下如何正确安装和配置OpenCV库[^1]。文章强调了环境变量的设置以及Visual Studio项目属性的调整,确保开发环境能够成功加载OpenCV库文件。具体包括将`bin`目录路径添加到系统环境变量中,并将`include`和`lib`文件路径正确配置到Visual Studio项目的属性设置中[^2]。 此外,文章还提供了一个简单的测试代码以验证OpenCV是否安装成功: ```python import cv2 # 测试OpenCV版本 print("OpenCV version:", cv2.__version__) ``` 这段代码通过导入`cv2`模块并打印其版本号,可以快速确认Python环境中OpenCV的安装状态[^3]。 --- #### 博客链接2:https://blog.csdn.net/weixin_44613063/article/details/109409564 第二篇博客文章聚焦于Docker容器技术的应用场景与基础操作[^4]。文章介绍了Docker的基本概念、镜像与容器的关系,以及如何使用Docker命令来管理镜像和容器。例如,创建一个新的容器可以通过以下命令实现: ```bash docker run -d --name my_container ubuntu:latest ``` 上述命令会以前台运行的方式启动一个基于Ubuntu最新版本的容器,并为其指定名称`my_container`[^5]。 同时,文章还提到Dockerfile的作用及其基本语法,用于定义自定义镜像的构建过程。例如,一个简单的Dockerfile可能如下所示: ```dockerfile FROM python:3.8-slim WORKDIR /app COPY . /app RUN pip install opencv-python CMD ["python", "app.py"] ``` 这段Dockerfile定义了一个基于Python 3.8的镜像,安装了`opencv-python`库,并设置了默认执行的命令[^6]。 --- #### 技术内容关联分析 两篇文章分别涉及计算机视觉库OpenCV的安装配置与Docker容器技术的基础应用,虽然主题不同,但存在一定的技术关联性。例如,在实际项目开发中,可以结合Docker技术来封装包含OpenCV依赖的开发环境,从而实现跨平台的一致性和可移植性[^7]。具体来说,可以通过Dockerfile定义一个包含OpenCV库的镜像,确保任何开发者都可以在相同的环境中运行代码,避免“在我机器上能运行”的问题。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值