大家知道,企业里的wifi很多是采用Cisco公司的LEAP加密的,苹果手机买了LEAP的专利是可以直接用的,但安卓手机不行。试了一些工具,如LBE授权管理,如LEAP Wifi Free均在Android 4.2系统上不大好使,下面就来个更直接有效的方法。
1, 手机在设置->关于手机菜单中找到Android版本,连点五六下就会出现开发者模式,将里面的“充许USB调试打开"
2, 手机通过USB方式连接电脑,在电脑中安装刷机大师的ROOT大师对安卓系统进行root权限破解,http://www.mgyun.com/vroot
3, 安装android RE管理器,这个工具可以让你访问根分区下的内容,并可把它重新挂载为可读/写模式,闪存卡位于/mnt/sdcard/目录
4, 使用RE管理器修改文件:/data/misc/wifi/wpa_supplicant.conf
...
network={
ssid="yourssid"
key_mgmt=WPA-EAP IEEE8021X
group=CCMP TKIP
eap=LEAP
identity="[email protected]"
password="yourpassword"
}
OK, 上述方法对于Android 4.2以下的系统是好使的,但对于android 4.2的系统是不行的,因为存在一个bug (见:https://android-review.googlesource.com/#/c/50663/),最终我通过将手机里的/system/bin/wpa_supplicant文件从4.2版本的换回4.1版本的就可以了。具体的实施步骤如下:
1, 手机端打开USB调试开关。在设置->关于手机菜单中找到Android版本,连点五六下就会出现开发者模式,将里面的“充许USB调试打开"
2, 手机端打开root,手机通过USB方式连接电脑,在电脑中安装刷机大师的ROOT大师对安卓系统进行root权限破解,http://www.mgyun.com/vroot
3, 电脑端安装ADB,即下载platform-tools-linux即可,
http://esausilva.com/wp-content/plugins/cimy-counter/cc_redirect.php?cc=platform-tools-linux&fn=http://esausilva.com/misc/android/platform-tools-linux.tar.gz
tar -xf platform-tools-linux.tar.gz
vi ~/.bashrc
export ANDROID_HOME=/bak/java/android/adt-bundle-linux-x86_64-20131030/sdk
export PATH=$ANDROID_HOME/platform-tools:$PATH
source ~/.bashrc
如果你想安装包含ADT插件的完整的eclipse开发环境及Android SDK的话,可以下载安装ADT Bundle, http://developer.android.com/sdk/index.html
4, 将手机和电脑通过USB相连后,在shell中执行adb devices命令就可以看到android手机设备啦,也需安装libstdc++
如果adb devices命令看不到android手机设备的话,可以尝试以下方法:
电脑端将android创建为udev设备,编辑文件/etc/udev/rules.d/51-android.rules,添加如下内容后再给它权限,sudo chmod a+r /etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="2717", MODE="0666", SYMLINK+="android_adb"
其中2717可用lsusb命令查看
$ lsusb
Bus 001 Device 009: ID 2717:0368
再创建adb_usb.ini文件
$ cat ~/.android/adb_usb.ini
0x2717
重启相关服务:
sudo udevadm control --reload-rules && sudo udevadm trigger
adb kill-server && adb start-server
$ adb devices
List of devices attached
a08f16ae device
5, 在手机上安装ssh server, 这样可以从电脑直接通过ssh来访问手机,采用dropbear软件包,先下载它到电脑上(http://dl.dbank.com/c0u841gt85)
$ adb shell (如果不是用usb相连,而是走wifi网络相连的话要先执行如:adb connect 192.168.0.16:5555)
shell@android:/ $ su
shell@android:/ # mount -o rw,remount /
shell@android:/ # mount -o rw,remount /system
shell@android:/ # mkdir /data/dropbear
shell@android:/ # mkdir /bin
在电脑中开另一个shell执行下列命令:
$ unzip dropbear.zip
$ adb push scp /bin
$ adb push dropbearkey /system/xbin
$ adb push dropbear /system/xbin
shell@android:/ # chmod 755/system/xbin/dropbear*
shell@android:/ # dropbearkey -t rsa -f /data/dropbear/dropbear_rsa_host_key
shell@android:/ # dropbearkey -t dss -f /data/dropbear/dropbear_dss_host_key
shell@android:/ # cd /data/dropbear
shell@android:/ # cat >> .profile <<"EOF"
PATH="/sbin:/system/bin:/system/xbin"
EOF
一切就绪,执行dropbear -v, 但是这个我没有做成功,报错“/system/xbin/dropbear Permission denied”, 有知道这个问题的童鞋可以告诉我。
6, 应用修复LEAP的patch, 参考:http://code.google.com/p/android/issues/detail?id=40023,源代码为:https://android-review.googlesource.com/#/c/50663/,
对应的二进制patch为http://android.googlecode.com/issues/attachment?aid=400230104000&name=wpa_supplicant.grouper.4.2.1.patched&token=f_WO_7BvXZzcta_-25AnHze46ug%3A1386211715883
1) 先务必通过打开飞行模式先禁用Wifi功能
2) 下载二进制patch到电脑上然后再通过adb上传到手机,adb push wpa_supplicant.grouper.4.2.1.patched /storage/sdcard0/Download/
3)
shell@android:/ # /system/bin/wpa_supplicant -v
wpa_supplicant v2.0-devel-4.2.1
Copyright (c) 2003-2012, Jouni Malinen
shell@android:/ # cp /storage/sdcarcd0/Download/wpa_supplicant.grouper.4.2.1.patched /system/bin/wpa_supplicant.4.2.1.patched
shell@android:/ # chown root:shell /system/bin/wpa_supplicant.4.2.1.patched
shell@android:/ # chmod 755 /system/bin/wpa_supplicant.4.2.1.patched
shell@android:/ # mv /system/bin/wpa_supplicant /system/bin/wpa_supplicant_bak
shell@android:/ # ln -s /system/bin/wpa_supplicant.4.2.1.patched /system/bin/wpa_supplicant
shell@android:/ # /system/bin/wpa_supplicant -v
wpa_supplicant v2.0-devel-4.2.1
Copyright (c) 2003-2012, Jouni Malinen
最后,修改/data/misc/wifi/wpa_supplicant.conf文件成下列内容,注意,有的公司的LEAP网络也需要使用配置eapol_flags=2
network={
ssid="
scan_ssid=1
key_mgmt=WPA-EAP IEEE8021X
auth_alg=LEAP
eap=LEAP
identity="
password="
priority=5
}
7,重启机器后OK。
附录1,如何通过wifi使用adb.
在手机上安装Better Terminal工具,进入后执行命令:
su
setprop service.adb.tcp.port 5555
stop adbd
start adbd
在电脑后就可以通过adb connect命令连接手机了
$ adb connect 9.181.89.114:5555
connected to 9.181.89.114:5555
连接之后,就可以继续使用adb了。
附录2, 安装busybox
Android系统里没有vi命令,可以直接通过豌豆荚工具安装一个busybox,它会安装在手机的/system/xbin目录下。当然,你想手工安装也行,可参见:http://www.rrzhai.com/p/19590
附录3,安装ssh server
1) 下载dropbear并通过adb将它上传到手机之中, http://dl.dbank.com/c0u841gt85
$ adb push dropbear.zip /mnt/sdcard/tools/
2) 如上,因为直接使用adb push命令从电脑将dropbear上传到手机的/system/xbin目录时报错“/system/xbin/dropbear Permission denied”,搜了很多资料解决不了,所以我们曲线救国,在手机里拷贝。
shell@android:/ # cd /mnt/sdcard/tools/
shell@android:/mnt/sdcard/tools # unzip dropbear.zip
shell@android:/mnt/sdcard/tools # cp dropbear /system/xbin/
shell@android:/mnt/sdcard/tools # cp dropbearkey /system/xbin/
shell@android:/mnt/sdcard/tools # mount -o rw,remount /
shell@android:/mnt/sdcard/tools # mkdir /bin
shell@android:/mnt/sdcard/tools # cp scp /bin/
shell@android:/system/xbin # chmod 755 dropbear*
shell@android:/ # dropbearkey -t rsa -f /data/dropbear/dropbear_rsa_host_key
shell@android:/ # dropbearkey -t dss -f /data/dropbear/dropbear_dss_host_key
shell@android:/system/xbin # dropbear -v (可将它放在/system/etc/init.goldfish.sh文件末尾实现开机自动启动,这里也有个服务脚本http://siso.sourceforge.net/ap-etc-initd-dropbear.html)
shell@android:/system/xbin # ps | grep dropbear
这时就可以在电脑上通过ssh [email protected]命令登录手机,密码为空,进去之后的home目录为/data/dropbear, 所以我们添加环境变量/data/dropbear/.profile
shell@android:/ # cat >> /data/dropbear/.profile <<"EOF"
PATH="/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin"
EOF
3) ssh登录
$ ssh [email protected]
[email protected]'s password:
TRACE: entering fake-getpwnam
TRACE: leaving fake-getpwnam
[17733] Dec 05 19:22:04 lastlog_perform_login: Couldn't stat /var/log/lastlog: No such file or directory
[17733] Dec 05 19:22:04 lastlog_openseek: /var/log/lastlog is not a file or directory!
[17733] Dec 05 19:22:04 wtmp_write: problem writing /var/log/wtmp: No such file or directory
TRACE: enter sign_key_free
TRACE: enter dsa_key_free
TRACE: leave dsa_key_free
TRACE: enter rsa_key_free
TRACE: leave rsa_key_free
TRACE: leave sign_key_free
root@android:/data/dropbear # ls
dropbear.pid
dropbear_dss_host_key
dropbear_rsa_host_key
root@android:/data/dropbear #
2014-03-11添加:
老婆今年被偷两个手机了, 所以找朋友弄来F码又整了个699元的便宜红米,但我发现红米用我上述的方法连leap网络不好使, 可能是因为上述的"wpa_supplicant.4.2.1.patched"本来就是一个针对通用arm芯片的编译后的二进制文件, 红米和米3的cpu类型不同, 所以我猜可能是那个文件需要重新用源码编译才行. 但那样太麻烦了, 于是, 研究了一下公司内部的证书方式 (所以公司内部申请证书的流程步骤只对ibm内部有效, 但证书这种方式的步骤却是放之四海而皆准的), 操作如下:
1, 申请证书,https://w3-03.ibm.com/tools/certificate/index.html
2, 申请后会收到一封邮件,打开邮件中的一个链接继续填写一个表格,填完之后照提示下载p12文件,https://ibm-enroll.verisign.com/client/userEnrollEncUTF8.htm
3, 用adb拷贝p12文件到手机sd卡(我用adb的目的因为无法用leap上网,平时用linux当usb连手机时也没有驱动)
4, 手机上设置证书, 设置 -> 安全和隐私 -> 从sd卡安装
5, 添加wifi,
EAP方法 TLS
阶段2身份验证 无
CA 证书 空
用户证书 证书名称
身份 [ibm邮箱]
匿名身份 空
密码 空
2014-12-16, 让iOS8符合android手使用习惯
1, 越狱,使用盘古越狱,越狱前调成飞行模式,越狱后会自动安装Cydia,并在Cydia中添加威锋源:apt.weiphone.com
2, 使用cydia搜索安装openssh, pp助手,ifile, afc2dd, apple file conduit 2, cidia也可以卸载软件
3, 录音软件,audio recorder破解版http://bbs.feng.com/read-htm-tid-8560444-page-1.html, 这是一个deb包
4, 安装deb包,使用iTools(需安装afc2dd及apple file conduit 2并重插USB且重启才能看得到越狱目录)将deb放到/var/root/Media/Cydia/AutoInstall目录后重启即可
5, 设置控制中心通知栏, ccsetting
6, 输入法,默认的输入法感觉反应迟顿,换成搜狗输入法打单个字时有点卡,最后换成百度输入法解决。另外总感觉iphone6 plus的触摸屏没有米3的灵敏
7, 和google日历同步,设置gmail帐户即可同步,但默认的同步只是主帐户的日历,从这里修改:https://www.google.com/calendar/syncselect
8, 苹果的系统没有后退和切换应用程序的按钮用起来会非常别扭,这方面安卓比苹果做得要人性化得多,最后用下列方法进行了优化:
a, HOME,使用Activator设置“按三指松开”,另外也用了Tage(10块钱,clezz.com)设置了从右边往上滑一下回到HOME,再滑一次激活多任务中心
b, 多任务中心,使用Actviator设置“任意位置->按一下指纹识别传感器”
c, 关闭程序,到了多任务中心往上移每一个程序能一个个关,另外也用slide2kill8 lite设置了往下移眼前的主程序就全部关闭
d, 切换程序,使用Tage设置“在下四分之三处从左向右滑,或从右向左滑”
e, 锁屏,使用Tage设置"从顶部边缘向右或向右滑动"
f, 拨号键盘,使用Activator设置"任意位置->摇晃设备"
9, iphone 6目前用起来基本上是小毛病不断,苹果这是要开始走下陡路的节奏了,总结如下:
a, 触摸屏不灵敏,至少比之前用的米3要差多了,用百度输入法卡的要好一点但有时也卡
b, 指纹不灵敏,有时候解锁的时候不生效,需使用密码解锁
c, wifi网络有时候会忽然用不了了,在还原里还原网络可以避免重启,很多人和我一样遇到这个坑了,见:http://tieba.baidu.com/p/3315538190
苹果6的主要问题是屏幕不灵敏打字比较卡, 好的地方在于放歌的声音, 相机,通话质量都比较不错。打字卡是硬伤,并且屏幕比较昏暗。
另外,如果wifi上网网速很慢时,可以将无线路由器的无线模式设置成为11n only, 这样网速能从50k左右提升到1.2M左右。华为p8也有类似问题,使用openwrt路由器时可以这样配置:
# g = 802.11g(2.4G), n = 802.11n(2.4G/5G), ac = 802.11ac(5G), https://wiki.openwrt.org/doc/uci/wireless
cat /etc/config/wireless
uci set wireless.radio0.require_mode=n
uci commit #commits settings
wifi
uci get wireless.radio0.require_mode
2018-08-25更新
andorid手机使用谷歌的查找设备应用时报找不着设备, 解决方法见: https://joyofandroid.com/problems-android-device-manager/
Within Google Settings, tap on Security and uncheck Android Device Manager. Now go to your device’s Settings menu and select Apps > All > Google Play Services > Clear Data. Go back to Google Settings Security and re-enable Android Device Manager. Reboot.
附录: android studio开发环境建立
https://github.com/uw-it-aca/spacescout-android/wiki/1.-Setting-Up-Android-Studio-on-Ubuntu
Setting Up Android Studio on Ubuntu
1, Install Java
2, Install android-studio-ide-171.4443003-linux.zip - https://developer.android.com/studio/install.html
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1 libbz2-1.0:i386
unzip android-studio-ide-171.4443003-linux.zip && cd android-studio && ./bin/studio.sh
3, SDK Manager - "Tools -> Android -> SDK Manager" (NOTE: This menu may NOT exist, but we can see it's Icon.)
4, AVD Manager - "Tools -> Android -> AVD Manager" (NOTE: This menu may NOT extst, but we can see it's Icon.)
/bak/java/android/adt-bundle-linux-x86_64-20131030/sdk/emulator/qemu/linux-x86_64/qemu-system-x86_64 -netdelay none -netspeed full -avd Pixel_2_API_26