4 votes

Activation des outils sans fil sur Android

J'ai besoin d'utiliser des commandes comme iwconfig dans Android, je sais que je dois installer les outils sans fil parce qu'ils ne sont pas dans Android par défaut, Le problème est que je viens de voir 3 tutoriels chinois qui n'ont aucun sens quand je les traduis, et un lien qui télécharge un répertoire avec les outils sans fil Android, mais je ne sais pas quoi faire pour les obtenir dans mon appareil et les utiliser.

Toute aide est la bienvenue.

6voto

Ivan Points 4970
  1. Télécharger wireless_tools.30.pre9.tar.gz . Cette version supporte les caractères non-ASCII dans ESSID.

  2. Le déballer dans mydroid/external/wireless-tools répertoire.

  3. Créer Android.mk avec le contenu suivant :

    LOCAL_PATH:= $(call my-dir)
    ################## build iwlib ###################
    include $(CLEAR_VARS)
    LOCAL_SRC_FILES := iwlib.c
    LOCAL_CFLAGS += -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wpointer-arith -Wcast-qual -Winline -MMD -fPIC
    LOCAL_MODULE:= libiw
    LOCAL_STATIC_LIBRARIES := libcutils libc libm
    include $(BUILD_STATIC_LIBRARY)
    ################## build iwconfig #################
    include $(CLEAR_VARS)
    LOCAL_SRC_FILES := iwconfig.c
    LOCAL_CFLAGS += -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wpointer-arith -Wcast-qual -Winline -MMD -fPIC
    LOCAL_MODULE:= iwconfig
    LOCAL_STATIC_LIBRARIES := libcutils libc libm libiw
    #LOCAL_FORCE_STATIC_EXECUTABLE := true
    LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES) # install to system/xbin
    #LOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_UNSTRIPPED)
    #LOCAL_MODULE_TAGS := eng user
    include $(BUILD_EXECUTABLE)
    ################## build iwlist ###################
    include $(CLEAR_VARS)
    LOCAL_SRC_FILES := iwlist.c iwlib.h
    LOCAL_CFLAGS += -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wpointer-arith -Wcast-qual -Winline -MMD -fPIC
    LOCAL_MODULE:= iwlist
    LOCAL_STATIC_LIBRARIES := libcutils libc libm libiw
    #LOCAL_FORCE_STATIC_EXECUTABLE := true
    LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES) # install to system/xbin
    #LOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_UNSTRIPPED)
    #LOCAL_MODULE_TAGS := eng user
    include $(BUILD_EXECUTABLE)
  4. Modifiez-le comme suit :

    • Changement sans fil.22.h à être sans fil.h ;
    • Modifier ifrename.c , ajouter getline() fonction. Vous pouvez obtenir le code à partir de externe/genext2fs/genext2fs.c ; Remarquez que ce fichier utilise une macro pour passer une autre fonction à getline() .
    • Modifier iwlib.h , remplacez #include par #include . [Vous devrez peut-être vérifier le fichier original pour savoir ce que l'auteur veut dire].
  5. Compiler

    ~/eclair-21/external/wireless-tools$ . ../../build/envsetup.sh
    ~/eclair-21/external/wireless-tools/wireless-tools$ mm
  6. Copier des fichiers sur le système

    ~/eclair-21/external/wireless-tools$ croot
    ~/eclair-21$ cp out/target/product/generic/system/xbin/iwconfig /nfs/rootfs/system/xbin/iwconfig
    ~/eclair-21$ cp out/target/product/generic/system/xbin/iwlist /nfs/rootfs/system/xbin/
  7. Test Après avoir lancé Android :

    # modprobe libertas
    # modprobe libertas_sdio
    libertas_sdio: Libertas SDIO driver
    libertas_sdio: Copyright Pierre Ossman
    model=0xb
    sd8686_helper.bin sd8686.bin
    init: untracked pid 853 exited
    init: untracked pid 856 exited
    libertas: eth1: Marvell WLAN 802.11 adapter
    # iwconfig eth1                
    eth1      IEEE 802.11b/g  ESSID:"Antrose-11g"
              Mode:Managed  Frequency:2.437 GHz  Access Point: 00:15:E9:0C:87:7C
              Bit Rate:1 Mb/s   Tx-Power=13 dBm
              Retry limit:8   RTS thr=2347 B   Fragment thr=2346 B
              Encryption key:off
              Power Management:off
              Link Quality=83/100  Signal level=-60 dBm  Noise level=-93 dBm
              Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:1441
              Tx excessive retries:44  Invalid misc:11220   Missed beacon:0
    # iwlist scan
    eth1      Scan completed :
              Cell 01 - Address: 00:22:6B:8C:5D:3A
                        ESSID:"Antrose-11g"
                        Mode:Managed
                        Frequency:2.412 GHz (Channel 1)
                        Quality=65/100  Signal level=-78 dBm  Noise level=-96 dBm
                        Encryption key:off
                        Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
                                  24 Mb/s; 36 Mb/s; 54 Mb/s; 6 Mb/s; 9 Mb/s
                                  12 Mb/s; 48 Mb/s
    # iwconfig eth1 essid Antrose-11g
    # iwconfig eth1                
    eth1      IEEE 802.11b/g  ESSID:"Antrose-11g"
              Mode:Managed  Frequency:2.437 GHz  Access Point: 00:15:E9:0C:87:7C
              Bit Rate:1 Mb/s   Tx-Power=13 dBm
              Retry limit:8   RTS thr=2347 B   Fragment thr=2346 B
              Encryption key:off
              Power Management:off
              Link Quality=83/100  Signal level=-60 dBm  Noise level=-93 dBm
              Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:1441
              Tx excessive retries:44  Invalid misc:11220   Missed beacon:0
  8. C'est fait.

Réf : http://anemospring.blogspot.com.es/2011/03/Android-wireless-tools.html

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X