想做个wifi程序作为AP热点,可是不知道如何下手。android有自带的作为AP热点的功能,现在wifi程序挺多的,应该可以作为一个很好的参考。
找了个Barnacle作为参考,因为有源码。
有兴趣的可以看下
http://szym.net/barnacle/
https://github.com/szym/barnacle然后我看源码,我看啊看啊,当我看到它的wifi目录下的两个文件时不淡定了
一个是头文件//hardware_legacy_stub.h
#include <stdlib.h>
int wifi_load_driver();
int wifi_unload_driver();
int wifi_start_supplicant();
int wifi_stop_supplicant();
int wifi_connect_to_supplicant();
void wifi_close_supplicant_connection();
int wifi_wait_for_event(char *buf, size_t len);
int wifi_command(const char *command, char *reply, size_t *reply_len);
看到这还好,感觉这几个函数都很熟悉。
看过android源码应该知道的,在android源码/hardware/libhardware_legacy/wifi/wifi.c
函数名跟这个一样,不对,应该说这个和wifi.c一样。
wifi.c文件太长了我就不贴上来了。好吧,我继续看它的实现,打开c文件//hardware_legacy_stub.c
#include "hardware_legacy_stub.h"
int wifi_load_driver() { return -1; }
int wifi_unload_driver() { return -1; }
int wifi_start_supplicant() { return -1; }
int wifi_stop_supplicant() { return -1; }
int wifi_connect_to_supplicant() { return -1; }
void wifi_close_supplicant_connection() { }
int wifi_wait_for_event(char *buf, size_t len) { return -1; }
int wifi_command(const char *command, char *reply, size_t *reply_len) { return -1; }
我晕了,这是嘛意思啊? 都返回-1怎么用啊?
它的main函数里还一本正经的包含了这个头文件,并调用了这些函数求知情人是解释一下。
还有我程序该如何写才能实现软AP的功能?
找了个Barnacle作为参考,因为有源码。
有兴趣的可以看下
http://szym.net/barnacle/
https://github.com/szym/barnacle然后我看源码,我看啊看啊,当我看到它的wifi目录下的两个文件时不淡定了
一个是头文件//hardware_legacy_stub.h
#include <stdlib.h>
int wifi_load_driver();
int wifi_unload_driver();
int wifi_start_supplicant();
int wifi_stop_supplicant();
int wifi_connect_to_supplicant();
void wifi_close_supplicant_connection();
int wifi_wait_for_event(char *buf, size_t len);
int wifi_command(const char *command, char *reply, size_t *reply_len);
看到这还好,感觉这几个函数都很熟悉。
看过android源码应该知道的,在android源码/hardware/libhardware_legacy/wifi/wifi.c
函数名跟这个一样,不对,应该说这个和wifi.c一样。
wifi.c文件太长了我就不贴上来了。好吧,我继续看它的实现,打开c文件//hardware_legacy_stub.c
#include "hardware_legacy_stub.h"
int wifi_load_driver() { return -1; }
int wifi_unload_driver() { return -1; }
int wifi_start_supplicant() { return -1; }
int wifi_stop_supplicant() { return -1; }
int wifi_connect_to_supplicant() { return -1; }
void wifi_close_supplicant_connection() { }
int wifi_wait_for_event(char *buf, size_t len) { return -1; }
int wifi_command(const char *command, char *reply, size_t *reply_len) { return -1; }
我晕了,这是嘛意思啊? 都返回-1怎么用啊?
它的main函数里还一本正经的包含了这个头文件,并调用了这些函数求知情人是解释一下。
还有我程序该如何写才能实现软AP的功能?
解决方案 »
- 做音乐播放器的时候出现Unable to resync. Signalling end of stream
- android 文件管理器
- android sqlite 问题
- 播放rtsp流媒体的几个问题
- TextView tv = new TextView(this) 为什么传参是this?
- 三星平板android程序咨询
- edittext的TextWatcher监听事件的问题
- 如何调整logcat窗口大小
- 关于BItmap.createScaledBitmap释放内存引发的bug
- android 程序错误 真的看不出是哪的错误
- 自定义的View,需要添加EditText控件,怎么破??
- 如何通过GPRS通讯连接其他客户端
unload driver 就是 unload wifi driver // rmmod xx.ko
start supplicant // wpa_supplican start
stop supplicant // wpa_supplicant stop
connect supplicant // 连接
close supplicant // 断开
这个我知道的,你说的这些在android源码里hardware下的wifi.c里有具体的实现。
而且返回-1 一般都是表示失败啊。
可我不明白的是这个hardware_legacy_stub.c,就上面那几句话,并不是我为了简化而把中间实现过程删掉了后贴上来的,事实是那个文件就是这样。我不明白它为什么这样写。