如何在WifiDirect中设置用户设备名称?有没有在不建立连接的情况下使用WiFiDirect广播自定义字符串的方法?

时间:2019-05-21 08:44:58

标签: android android-wifi wifi-direct wifimanager wifip2p

我正在尝试使用wifi Direct来 BroadCast 长字符串。当我要在设备上同伴点击时,我要操作此字符串。 因此,我决定将此字符串附加到设备名称上,但是设备名称更改代码不起作用。

我尝试使用WifiManger API的反射。 但是这个方法是隐藏的,无法访问。

try {
    Method m = mManager.getClass().getMethod("setDeviceName", new Class[]{Channel.class, String.class, WifiP2pManager.ActionListener.class});
    m.invoke(mManager, mChannel, BroadCastName, new WifiP2pManager.ActionListener() {

        @Override
        public void onSuccess() {
            Log.d(TAG, "Name change successful.");
            Log.println(Log.DEBUG,TAG, "Name change successful.");
        }

        @Override
        public void onFailure(int reason) {
            Log.d(TAG, "name change failed: " + reason);
        }
    });
} catch (Exception e) {
    Log.d(TAG, "No such method");
}

此try catch块尝试访问此方法,并使用它来将自定义字符串BroadCastName设置为设备名称或主机名

我希望将WifiDirect中的设备默认名称修改为String BroadCastName,但我看不到任何变化。

0 个答案:

没有答案