wifi p2p系统中本机名称WifiP2pDevice.deviceName是由系统指定的,直接修改并不能起作用。WifiP2pManager类中有设备名称设置方法setDeviceName,可以改变本设备名称。

    /*** Set p2p device name.* @hide* @param c is the channel created at {@link #initialize}* @param listener for callback when group info is available. Can be null.*/@UnsupportedAppUsagepublic void setDeviceName(Channel c, String devName, ActionListener listener) {checkChannel(c);WifiP2pDevice d = new WifiP2pDevice();d.deviceName = devName;c.mAsyncChannel.sendMessage(SET_DEVICE_NAME, 0, c.putListener(listener), d);}

但是这个方法是 @UnsupportedAppUsage的,不能在app中直接使用。无奈只好用反射机制取得该方法,kotlin代码如下:

    private fun setDeviceName(deviceName: String) {try {val paramTypes0 = WifiP2pManager.Channel::class.javaval paramTypes1 = String::class.javaval paramTypes2 = WifiP2pManager.ActionListener::class.javaval setDeviceName: Method = wifiP2pManager.javaClass.getMethod("setDeviceName", paramTypes0, paramTypes1, paramTypes2)setDeviceName.isAccessible = truesetDeviceName.invoke(wifiP2pManager, channel,deviceName,object : WifiP2pManager.ActionListener {override fun onSuccess() {Log.i(thisTag, "setDeviceName succeeded")}override fun onFailure(reason: Int) {Log.i(thisTag, "setDeviceName failed")}})} catch (e: NoSuchMethodException) {e.printStackTrace()} catch (e: IllegalAccessException) {e.printStackTrace()} catch (e: IllegalArgumentException) {e.printStackTrace()} catch (e: InvocationTargetException) {e.printStackTrace()}}

其中两个变量wifiP2pManager、channel是WifiP2pManager和WifiP2pManager.Channel的实例,需要在app中取得。

wifiP2pManager =  app.getSystemService(Context.WIFI_P2P_SERVICE) as WifiP2pManager
channel = wifiP2pManager.initialize(app, Looper.getMainLooper(), this)

setDeviceName的时机通常是取得wifiP2pManager、channel之后。

wifi p2p本机设备名DeviceName设置相关推荐

  1. 深入理解Wi-Fi P2P

    第7章 深入理解Wi-Fi P2P 本章所涉及的源代码文件名及位置 ·W ifiP2pSettings.java packages/ apps/ Settings/ src/ com/ android ...

  2. android wifi p2p / wifi direct

    版权声明:本文为博主原创文章,未经博主允许不得转载.https://blog.csdn.net/h784707460/article/details/81502574 一. wifi P2P协议相关 ...

  3. WIFI P2P架构

    WI-FI P2P 定义 架构 3个组件 组织结构 技术标准 P2P Discovery Device Discovery(扫描) 流程 p2p probe 管理帧 日志关键打点 Group Form ...

  4. 创建WIFI Direct APP : android.net.wifi.p2p+android.net.wifi.p2p.nsd + Wi-Fi peer-to-peer overview 翻译

    一 ) Provides classes to create peer-to-peer (P2P) connections with Wi-Fi Direct. 提供用于使用Wi-Fi Direct创 ...

  5. wifi p2p 调试

    调试p2p功能之前,需要驱动打开p2p的支持,可以用ifconfig -a指令查看是否存在p2p网络节点 1.查看网络节点 341.68< ifconfig -a 341.71> ifco ...

  6. Android Wifi P2P 入门

    学习资料: Demo 下载地址:https://github.com/mengzhinan/WiFi_P2P_test GoogleAndroid Doc:https://developer.andr ...

  7. 谈谈对WiFi P2P的理解

    谈谈对WiFi P2P的理解 概述 P2P架构简介 P2P Discovery介绍 Device Discovery 流程 Service Discovery Group Formation P2P ...

  8. vp服务器创建无线热点,在Mac中使用屏幕共享 mac创建wifi热点方法:苹果mac设置无线网络wifi共享步骤...

    延伸:mac创建wifi热点方法:苹果mac设置无线网络wifi共享步骤 描述:...给大家的就是mac创建wifi热点的方法,机友们可以来看一看.首先,连接网线,进入设置,选择共享.在互联网共享这一 ...

  9. Wifi P2p连接步骤整理

    原文:http://developer.android.com/training/connect-devices-wirelessly/wifi-direct.html 标题:Creating P2P ...

最新文章

  1. 计算机科学与技术讲座psd,计算机科学的技术基本.ppt
  2. python写一个表白程序-用Python写一个表白神器让你脱单
  3. 霍金:AI或许能根除疾病和贫穷,但也可能摧毁人类 | GMIC 2017
  4. 中国海洋生物医药产业专项应用调研及战略展望规划分析报告2021-2027年
  5. 阿里云视频点播-视频上传失败(一直显示上传中)
  6. 两个list怎么对比数据_基于日志的回放对比系统设计
  7. 使用Gradle禁止Java和Spring Boot Web应用程序中的FindBugs警告
  8. 编辑器eslint格式_ESlint 代码格式大坑vscode vetur,eslint 冲突
  9. oracle修改redo路径,oracle修改redo log files路径
  10. opencv火焰检测小项目
  11. 指数函数对数函数导数定义推导
  12. Netd 服务的 netd 套接字创建
  13. JavaWeb实训项目案例开发之在线图书网站开发【非常适合初学者】
  14. 大数据工作流开源系统之DRAKE
  15. 爱代挂php源码,爱代挂外包,爱准挂外包,代挂系统218元秒搭建
  16. 【HTML第二个综合案例】----相亲App注册页面
  17. 高企审计报告包括哪些内容?
  18. 显示器还有卖的吗_[电脑]显示器参数被乱标?深度体验ThinkVision顶级超宽带鱼屏显示器...
  19. 很抱歉,EXCEL遇到错误,使其无法正常工作,因此需要关闭EXCEL。是否希望我们立即修复?...
  20. sysctl设置系统参数

热门文章

  1. C语言例程:元音字母的统计
  2. pubmed搜索基因的小技巧
  3. python矩阵运算大全(linalg模块)
  4. shell编程心得体会
  5. Zero date value prohibited问题Error attempting to get column ‘effective_date‘ from result set
  6. 分型图z=z*z+c的画法
  7. python实现注册登录系统_python实现登录与注册系统
  8. 环视相机代码调试日记
  9. linux奶瓶U盘使用方法,CDlinux如何制作U盘启动及Beini(奶瓶)制作U盘启动的方法...
  10. 世界国家省份城市县区街道村地址邮编常用通用功能最全API - 多级联动 - 淘宝天猫阿里巴巴技术赏析...