打开关闭扫描WIFI并展示
来源:互联网 发布:电脑音频剪辑软件 编辑:程序博客网 时间:2024/05/17 00:54
添加权限:
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>布局文件:
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" 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="com.bwie.a1511kday4wifi.MainActivity"> <ScrollView android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/wifishow" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" /> <Button android:text="打开wifi" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/wifishow" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_marginLeft="11dp" android:layout_marginStart="11dp" android:layout_marginTop="45dp" android:id="@+id/button1" /> <Button android:text="关闭wifi" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="54dp" android:layout_marginStart="54dp" android:id="@+id/button2" android:layout_alignBaseline="@+id/button1" android:layout_alignBottom="@+id/button1" android:layout_toRightOf="@+id/button1" android:layout_toEndOf="@+id/button1" /> <Button android:text="扫描wifi" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/button2" android:layout_alignParentRight="true" android:layout_alignParentEnd="true" android:id="@+id/button3" /> <TextView android:text="showAllWifi" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/button1" android:layout_alignRight="@+id/wifishow" android:layout_alignEnd="@+id/wifishow" android:layout_marginTop="24dp" android:id="@+id/showAllWifi" /> </ScrollView></RelativeLayout>
MainActivity
public class MainActivity extends AppCompatActivity implements View.OnClickListener{ private TextView wifishow,showAllWifi; private WifiManager wifiManager; private WifiInfo wifiInfo; private Button btn1,btn2,btn3; private List<ScanResult> scanResults; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); wifishow = (TextView) findViewById(R.id.wifishow); showAllWifi = (TextView) findViewById(R.id.showAllWifi); //得到wifi管理器 wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE); //得到当前连接的wifi wifiInfo = wifiManager.getConnectionInfo(); wifishow.setText(wifiInfo.toString()); btn1 = (Button) findViewById(R.id.button1); btn2 = (Button) findViewById(R.id.button2); btn3 = (Button) findViewById(R.id.button3); //添加监听器 btn1.setOnClickListener(this); btn2.setOnClickListener(this); btn3.setOnClickListener(this); } @Override public void onClick(View v) { //得到wifi的状态 int wifiState = wifiManager.getWifiState(); switch (v.getId()){ case R.id.button1: if(wifiState == 3){ Toast.makeText(this,"wifi已经开启",Toast.LENGTH_SHORT).show(); }else{ wifiManager.setWifiEnabled(true); } break; case R.id.button2: if(wifiState == 1){ Toast.makeText(this,"wifi已经关闭",Toast.LENGTH_SHORT).show(); }else{ wifiManager.setWifiEnabled(false); } break; case R.id.button3: //获得扫描wifi的动态权限 if (ContextCompat.checkSelfPermission(this, Manifest.permission_group.LOCATION)!= PackageManager.PERMISSION_GRANTED){// 获取wifi连接需要定位权限,没有获取权限 ActivityCompat.requestPermissions(this,new String[]{ Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_WIFI_STATE, },0); } break; } } @Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); if(requestCode == 0){ //允许获取权限 if (grantResults.length>0&&grantResults[0] == PackageManager.PERMISSION_GRANTED){ wifiManager.startScan();//扫描wifi,,需要动态权限 scanResults = wifiManager.getScanResults();//得到扫描的结果 String str = ""; //遍历查看 for (ScanResult sr:scanResults){ str += sr.toString()+"\n\t"; } showAllWifi.setText(str); } } }}
阅读全文
0 0
- 打开关闭扫描WIFI并展示
- 扫描WiFi 并展示到ListView
- Android检测网络是否可用并打开、扫描、连接WIFI
- 打开或者关闭wifi
- Android细节:扫描获取附近wifi,并以列表形式进行展示
- android WiFi扫描并连接
- android WiFi扫描并连接
- 打开关闭wifi服务-wifimanager
- wifi打开与关闭操作
- wifi打开关闭工具类
- UiAutomator自动打开关闭wifi
- WIFI的打开与关闭
- Android打开/关闭wifi命令
- WIFI (热点)打开和关闭
- Android打开WIFI、关闭WIFI、检测当前WIFI状态
- 判断蓝牙打开关闭状态+wifi打开关闭状态
- ZXing扫描二维码 打开和关闭,闪光灯
- 再谈Windows Mobile中打开/关闭WIFI
- 造成织梦dede搜索太慢的解决办法
- Hibernate与 MyBatis的比较
- 模拟QQ列表展开收缩
- 图嵌入高维转二维后的测量指标及处理方法
- 机器学习实战KNN
- 打开关闭扫描WIFI并展示
- 控制多组图片切换
- iOS 开发技术栈与进阶
- Python标准库05 存储对象 (pickle包,cPickle包)
- 串口通信的基本知识
- 手写AOP
- SSM(1)ajax的入门使用
- CVE-2017-0214Poc
- POJ 2745 显示器