1. 폰의 루트 권한을 획득한다. (이건 폰 마다 다 다름)

2. 필요한 소프트웨어를 설치한다. 추가로 설치할 소프트웨어는 무선 랜을 설정하는 iwconfig 이며 android-wifi-tether 패키지에 포함된 것을 빼내서 설치하면 된다. (딴 데서도 구할 수 있을 것이다.)

android-wifi-tether 패키지를 다운로드하면 wireless_tether_????.apk 라는 파일로 되어 있는데 apk 파일은 사실 zip 파일이므로 확장자를 zip 으로 바꿔주고 압축을 풀면 raw 디렉토리 아래에 iwconfig 라는 파일이 있을 것이다.

iwconfig 파일을 폰에 넣어야 하는데 이때는 adb 명령을 사용한다. (여기서는 늘 root로 되어 있는 상태를 기준으로한다. 루팅 하는 방법에 따라 조금씩 다른 방법을 사용해야 한다.)
adb push \path\to\iwconfig /data
adb shell
chmod 700 /data/iwconfig
이렇게 하면 /data/iwconfig 파일을 이용해서 무선 랜을 설정할 수 있다.

3. 폰에서 제공하는 기능을 이용하여 무선 랜을 끈다.

4. 네트워크 드라이버 커널 모듈을 다시 로딩하고 네트워크 설정을 해줌으로써 애드 혹 모드로 무선 랜을 다시 설정한다.
adb shell
insmod /system/lib/modules/bcm4329.ko
/data/iwconfig eth0 mode ad-hoc
/data/iwconfig eth0 essid 애드혹_네트워크의_SSID
ifconfig eth0 사용할_IP_주소
사용할_IP_주소 는 아무거나 해도 되지만 외부로 라우팅 되는 것을 막으려면 사설 주소 영역(예, 192.168.xx.yy 등)을 쓰는게 바람직하다.

5. 애드 혹 모드에서 빠져나와 원래 상태로 복구하기 위해서는 다음과 같이 네트워크 드라이버 커널 모듈을 내린다음
adb shell
rmmod bcm4329
시스템 설정에서 WiFi를 켜주면 된다.

(주의: 위의 내용은 넥서스 원과 HTC 디자이어에 CyanogenMod 롬 (CM6 RC2) 을 올린 상태에서 작업한 것입니다. 참고로 HTC 의 stock 롬이나 Modaco 롬 (R8) 에서는 애드 혹 통신이 되지 않았습니다. 넥서스 원의 stock 롬과 Modaco 롬은 아직 테스트 하지 못하였습니다.)
신고
posted by 신묘군
그 동안 쭉 넥서스 원만 갖고 놀다가 HTC 디자이어를 추가로 갖고 놀려니 개발환경(Eclipse, ADB 등)에서 디자이어를 인식을 못한다. 이럴 때 해결책은, 안드로이드 SDK 가 깔려 있는 디렉토리에서 android-sdk-windows/usb_driver/android_winusb.inf 파일을 찾아서 [Google.NTx86] 부분에 다음의 내용을 추가 한다.
;HTC Desire
%SingleAdbInterface% = USB_Install, USB\VID_0BB4&PID_0C87
%CompositeAdbInterface% = USB_Install, USB\VID_0BB4&PID_0C87&MI_01
그런 다음, 디자이어를 컴퓨터에 연결하고 장치 관리자를 들어간 뒤 ADB 장치를 선택하고 드라이버 새로 고침을 선택한 후 방금 수정한 inf 파일이 있는 디렉토리를 지정해주면 된다.

이 글을 작성하기 위해서 이곳저곳의 글을 참조하였다.
신고
posted by 신묘군