android 获取wifi 密码 代码
来源:互联网 发布:淘宝助理能导出订单吗 编辑:程序博客网 时间:2024/05/08 08:20
想要获取wifi密码首先要保证你的手机已经root、 因为只有root 以后才能读取存放密码的配置文件
如果你的手机已经root 用该语句获取 使你的程序获取权限 Process process = Runtime.getRuntime().exec("su");
下面是 程序的布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginBottom="152dp" android:text="获取密码" /> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/button1" android:layout_centerHorizontal="true" android:layout_marginBottom="101dp" android:text="" android:textAppearance="?android:attr/textAppearanceMedium" /> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginBottom="71dp" android:text= "退出"/></RelativeLayout>
下面是程序的代码
package com.android.getpsk;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStreamReader;import android.os.Bundle;import android.os.Handler;import android.os.Looper;import android.os.Message;import android.annotation.SuppressLint;import android.app.Activity;import android.util.Log;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;public class MainActivity extends Activity {Button myButton;Button quit;TextView show;MyHandler myHandler;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);myButton = (Button) findViewById(R.id.button1);quit = (Button) findViewById(R.id.button2);show = (TextView)findViewById(R.id.textView1);myHandler = new MyHandler();myButton.setOnClickListener(new OnClickListener() { public void onClick(View v) { Log.e("Fuck", "I got a key down"); MyThread m = new MyThread(); new Thread(m).start(); } });quit.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubfinish();}});} @SuppressLint("HandlerLeak")class MyHandler extends Handler {@Overridepublic void handleMessage(Message msg) {// TODO Auto-generated method stubsuper.handleMessage(msg);Bundle b = msg.getData(); String info = b.getString("info"); MainActivity.this.show.setText(info); } }class MyThread implements Runnable { public void run() { ; StringBuilder content = new StringBuilder();try { Process process = Runtime.getRuntime().exec("su");String cmd = "cat /data/misc/wifi/wpa_supplicant.conf";//String cmd = "id";DataOutputStream dataOutputStream = new DataOutputStream(process.getOutputStream());DataInputStream dataIntputStream = new DataInputStream(process.getInputStream());DataInputStream dataErrorStream = new DataInputStream(process.getErrorStream());dataOutputStream.writeBytes(cmd + "\n");dataOutputStream.flush();Thread.sleep(2000);String line = "";if (dataIntputStream.available() > 0){String error = "";int total = dataIntputStream.available();Log.e("TotalCount", Integer.toString(total));int i = 0;while(i < total){line = dataIntputStream.readLine();if(line.trim().startsWith("ssid=") || line.trim().startsWith("psk=")){content.append(line + "\n");}i += line.length() + 1;}dataOutputStream.close();dataErrorStream.close();dataErrorStream.close();}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();Log.e("Exception1", e.toString());} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();Log.e("Exception2", e.toString());} Message msg = new Message(); Bundle b = new Bundle();// 存放数据 b.putString("info", content.toString()); Log.e("info", content.toString()); msg.setData(b); MainActivity.this.myHandler.sendMessage(msg); // 向Handler发送消息,更新UI } }@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}
运行结果我就不截图了。我亲测是Ok 的
转载自http://download.csdn.net/detail/chw_611/5275223
0 0
- android 获取wifi 密码 代码
- android 获取手机里面的WIFI密码
- 获取WiFi密码方法
- 获取wifi密码办法
- 获取android手机已连接过wifi密码
- Android获取手机连接Wifi的密码,需要Root权限
- Android 用代码查看本机保存的Wifi密码
- Android 用代码查看本机保存的Wifi密码
- Android ,显示WiFi密码
- Android 查看wifi密码
- 尝试wifi密码获取--新手
- 获取wifi密码的方式
- 破解锁屏密码、获取wifi密码
- Android中可以做的两件坏事---破解锁屏密码和获取Wifi密码
- Android中可以做的两件坏事---破解锁屏密码和获取Wifi密码
- Android中可以做的两件坏事---破解锁屏密码和获取Wifi密码
- Android中可以做的两件坏事---破解锁屏密码和获取Wifi密码
- Android中可以做的两件坏事---破解锁屏密码和获取Wifi密码
- A*
- <Android>关于EditText中setInputType和setSingleLine的冲突
- Eclipse语言设置
- 怎么访问一个整型数里面的各个字节
- 处理new分配内存失败情况
- android 获取wifi 密码 代码
- 知远点评
- 如何理解有符号数和无符号数
- tomcat 安装 apr (Apache Portable Runtime), tomcat-native.
- dbo sysadmin和db_owner的区别
- mysql数据字典
- 至于这几个人为何会勾结在一起夏菲儿随意想想都猜的到
- 自定义的UIAlertView不能在iOS7上正常显示
- GPU 优化总结