刚开始学习android,叫我们做一个使用Wifi Direct功能进行定位,在打开WIfi Direct时不想进入设置里去打开,而想在程序中直接打开。于是下载了android的settings的源码查看,在里面发现了WifiP2pEnabler.java类,找到其中的代码如下,

通过调用WifiP2pManager的enableP2p和disableP2p方法打开和关闭Wifi Direct,可是在我的程序中又不能调用这两个方法,所以觉得这两个方法肯定是被隐藏了,得通过反射来调用。

在4.2以上的版本直接打开Wifi,便能打开WIfi Direct,可是在4.0X版本中Wifi Direct与Wifi不能同时打开,所以打开Wifi Direct与打开Wifi是分离的,废话就说到这里吧,直接上代码:

通过反射调用enableP2p和disableP2p方法,

public void enableP2p(View view) {

try {

Method m = WifiP2pManager.class.getMethod("enableP2p", WifiP2pManager.Channel.class);

m.invoke(manager, channel);

} catch (NoSuchMethodException e) {

Log.e("NoSuchMethod", "No Such Method Exception!");

e.printStackTrace();

} catch (InvocationTargetException e) {

Log.e("InvocationExcept", "Invocation Exception");

e.printStackTrace();

} catch (IllegalAccessException e) {

Log.e("IllegalAccessExcept", "IllegalAccessException");

e.printStackTrace();

}

}

public void disableP2p(View view) {

try {

Method m = WifiP2pManager.class.getMethod("disableP2p", WifiP2pManager.Channel.class);

m.invoke(manager, channel);

} catch (NoSuchMethodException e) {

Log.e("NoSuchMethod", "No Such Method Exception!");

e.printStackTrace();

} catch (InvocationTargetException e) {

Log.e("InvocationExcept", "Invocation Exception");

e.printStackTrace();

} catch (IllegalAccessException e) {

Log.e("IllegalAccessExcept", "IllegalAccessException");

e.printStackTrace();

}

}文采不行,文字可能有点难看懂,但是我想大家一看代码就会懂得。

java 开启wifi_通过java代码打开wifi direct相关推荐

  1. java ee 导入项目_最代码网站java项目下载后遇到项目打开,导入,运行的问题QA汇总...

    经常有牛牛下载最代码的代码后遇到各种关于压缩包打开,项目导入,项目运行的问题,我这边总结了很多相关的问答,博客,代码. 项目无法运行,首先确认本地配置,搞不定再求助搜索引擎,最后再私信最代码官方. 一 ...

  2. Java 在Windows上通过代码开启和关闭exe程序

    开启和关闭exe程序的代码 import cn.hutool.core.collection.CollUtil; import cn.hutool.core.io.FileUtil; import l ...

  3. java 获取wifi_获取wifi列表并连接wifi

    一.获取wifi列表 获取wifi列表需要用wifiManager.startScan();进行扫描,扫描结果的列表使用List 保存 扫描步骤: wifiManager.startScan(); / ...

  4. Java | 通过程序代码打开EXE应用或者文件

    通过Java后台调用本地exe程序 JAVA后台无法实现打开客户端上的应用程序以及文件,是由于JAVA本身的安全性限制,只能打开服务器本地的程序以及文件,直接上代码,测试运行即可. import ja ...

  5. java如何关闭一个浏览器网页代码_使用java代码打开关闭浏览器(指定的浏览器或者计算机默认的浏览器)...

    package network.openURL; import java.io.IOException; import java.net.HttpURLConnection; import java. ...

  6. java 将图片转成二进制文件bin_java 问题:怎样把一个bin二进制图片文件用java代码打开?求解!...

    展开全部 Java中可以用java.awt.Toolkit类打开gif,jpg,png三种类型的二进制图片文件,如果是62616964757a686964616fe59b9ee7ad943133333 ...

  7. 怎么才能学好Java编程写好Java代码?

    动力节点Java培训最新上线Java实验班,等你来测试自己适不适合学习Java编程哦! 刚刚接触Java编程的朋友总会遇到一些情况,比如:跟着Java基础教程看过一遍后,自己写代码的时候却无从下手:写 ...

  8. Java 线程池框架核心代码分析

    转载自 Java 线程池框架核心代码分析 前言 多线程编程中,为每个任务分配一个线程是不现实的,线程创建的开销和资源消耗都是很高的.线程池应运而生,成为我们管理线程的利器.Java 通过Executo ...

  9. Java开启/关闭tomcat服务器

    © 版权声明:本文为博主原创文章,转载请注明出处 通过java代码实现Tomcat的开启与关闭 1.项目结构 2.CallTomcat.java package com.calltomcat.test ...

最新文章

  1. Spring Cloud开发实践 - 04 - Docker部署
  2. 学Java需要什么技巧呢?分享这4个
  3. android工程jrr版本怎么改,ionic3 生成android 如何控制versionCode版本号
  4. java class 字符串_java基础知识四 math类 字符 字符串 控制台输入输出 StringBuilder与StringBuffer...
  5. python3打开excel_python3操作Excel (一)
  6. 软银收购芯片巨头ARM 或将推动物联网应用跨越式发展
  7. idea安装2019
  8. uni-app 变量赋值后被实时同步
  9. (一)事务与并发控制
  10. 三维激光扫描后处理软件_地面三维激光扫描仪应用之一|云尚智造
  11. python--pygame模块--外星人入侵小游戏项目(全)
  12. Android Split的用法
  13. dpi、dp、sp、px、mm之间的关系
  14. BZOJ2716天使玩偶
  15. 第一篇图像处理论文审稿意见修改说明
  16. C# 实现安卓和iOS app 读写数据库,实现手机本地存储
  17. Contest 20140914 Mushroom写情书 字符串雙hash 後綴數組
  18. 新东方雅思词汇---6.2、重音在词根上,不在前后缀(名词除外)
  19. android 单位pt,Android APPUI设计师必知:pt sp dp之间的关系
  20. EbNo与SNR关系

热门文章

  1. php 实现 java com.sun.org.apache.xml.internal.security.utils.Base64 Byte数组加密
  2. HTML5新增的客户端校验
  3. Javascript综合应用小案例
  4. linux中的echo%3e文件,Linux学习笔记-shell脚本中${}的使用方法
  5. java char占用多少字节_Java虚拟机:Java对象大小、对象内存布局及锁状态变化
  6. linux绑定中文域名,linux shell正则表达式如何匹配域名(包含中文域名)
  7. java 同域名下怎么访问同事的项目_喜大普奔,两个开源的前后端分离项目可以在线体验了...
  8. plc有与计算机的通讯请求时,OMRON PLC网络Ethernet网_OMRON PLC与上位计算机之间的通信_OMRON PLC与上位计算机通信程序-维库电子通...
  9. python日志处理_Python之日志处理(logging模块)
  10. php中ajax用法,thinkphp中使用ajax