#!/system/bin/sh

#Load driver
echo "ASD WIFI TESTING..." AP_NAME="default"
num=0
FLAG=0 busybox cp /system/etc/wifi/pre_supplicant.conf /data/misc/wifi/wpa_supplicant.conf
busybox chmod 666 /data/misc/wifi/pre_supplicant.conf
busybox chmod 666 /data/misc/wifi/wpa_supplicant.conf
busybox chmod 777 /dev/rfkill #insmod /system/lib/dhd.ko firmware_path=/system/etc/wifi/40183/ nvram_path=/system/etc/wifi/40183/nvram.txt
insmod /system/lib/dhd.ko firmware_path=/etc/wifi/40181/fw_bcm40181a2.bin nvram_path=/etc/wifi/40181/nvram.txt sleep 5 busybox ifconfig wlan0 up
sleep 5
#/system/bin/wpa_supplicant_ye -Dwext -C/data/misc/wifi/wlan0 -iwlan0 -c/data/misc/wifi/pre_supplicant.conf &
wpa_supplicant -Dnl80211 -C/data/misc/wifi/wlan0 -iwlan0 -c/data/misc/wifi/wpa_supplicant.conf & sleep 2 while busybox test $num -lt 5 # Test num with test command
do
#Scan
/system/bin/wpa_cli_ye -p/data/misc/wifi/wlan0 -iwlan0 scan sleep 2 /system/bin/wpa_cli_ye -p/data/misc/wifi/wlan0 -iwlan0 scan_results | busybox grep '[0-9a-zA-Z][0-9a-zA-Z]:[0-9a-zA-Z][0-9a-zA-Z]:[0-9a-zA-Z][0-9a-zA-Z]:[0-9a-zA-Z][0-9a-zA-Z]:[0-9a-zA-Z][0-9a-zA-Z]:[0-9a-zA-Z][0-9a-zA-Z]' if busybox test $? -eq 0
then
busybox sed -i "s/wifi_state = [0-9],[0-9]/wifi_state = 1,1/g" /system/bin/pretest_state
echo "WIFI OK"
FLAG=1
break
else
busybox sed -i "s/wifi_state = [0-9],[0-9]/wifi_state = 0,2/g" /system/bin/pretest_state
echo "scanning..."
fi
num=`busybox expr $num + 1` # Increment num
done if busybox test $num = 5
then
busybox sed -i "s/wifi_state = [0-9],[0-9]/wifi_state = 0,0/g" /system/bin/pretest_state
echo "WIFI FAILED"
exit 0
fi
busybox rm /data/misc/wifi/pre_supplicant.conf
rmmod /system/lib/dhd.ko
exit 0

test_wifi的更多相关文章

  1. python开发_tarfile_文档归档压缩|解压缩

    ''' python中的tarfile模块实现文档的归档压缩和解压缩 功能: 把工作空间下面的所有文件,打包生成一个tar文件 同时提供一个方法把该tar文件中的一些文件解压缩到 指定的目录中 ''' ...

  2. Linux 使用wpa_supplicant手动配置连接wifi

    Linux 使用wpa_supplicant手动配置连接wifi wpa_supplicant 简介 wpa_supplicant是Linux BSD, Mac OSX和Windows的WPA的服务, ...

随机推荐

  1. c - 向一个排序好的数组插入一个数,插入后数组依然是排序好的

    概述 因为这里只是演示插入1个数,这里我不用malloc再重新分配,而是将原先数组的腾出一个占位符. 完整代码如下: #include <stdio.h> #define LEN 6 // ...

  2. Swift - 28 - 内部参数名和外部参数名

    //: Playground - noun: a place where people can play import UIKit // 外部参数的作用是为了让程序员调用代码的时候能清晰的看出所传参数 ...

  3. JavaScript_object基础

    之前写Java时老是有点蒙,大部分都是用jQuery,但原理还不是很清楚,最近一段时间在系统的学习JavaScript,有什么问题或错误请指出,多谢..................... Obje ...

  4. 『重构--改善既有代码的设计』读书笔记----Extract Method

    在编程中,比较忌讳的一件事情就是长函数.因为长函数代表了你这段代码不能很好的复用以及内部可能出现很多别的地方的重复代码,而且这段长函数内部的处理逻辑你也不能很好的看清楚.因此,今天重构第一个手法就是处 ...

  5. Qt远程机开发时光标注意问题

    最近项目中有一个比较奇怪的问题,就是当记录了最后的m_lastPos为当前widget中间位置之后,设置了QCursor也为当前中间位置. 这个时候当开始移动的时候,发现offset出现了很怪的极大值 ...

  6. java获得系统当前日期

    package com.web.test; import java.text.ParseException; import java.text.SimpleDateFormat; import jav ...

  7. ViewData与ViewBag比较

    在Asp.net MVC 3 web应用程序中,我们会用到ViewData与ViewBag,对比一下: ViewData ViewBag 它是Key/Value字典集合 它是dynamic类型对像 从 ...

  8. matplotlib curve.py

    import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 2*np.pi, 100) sinX = np.sin(x) ...

  9. JS读取文件,Javascript之文件操作 (IE)

    一.功能实现核心:FileSystemObject 对象      要在javascript中实现文件操作功能,主要就是依靠FileSystemobject对象. 二.FileSystemObject ...

  10. Web日志分析

    http://www.rising.com.cn/newsletter/news/2013-03-20/13380.html https://www.trustwave.com/Resources/S ...