0

我正在开发一个基于 Google 的 wifi p2p API 的应用程序,我想获取我正在使用的设备的名称(而不是对等设备),但我发现检索名称的唯一方法是如果我通过使用更改它像这样的东西:

if (WifiP2pManager.WIFI_P2P_THIS_DEVICE_CHANGED_ACTION.equals(action)) {  
          // this device details has changed(name, connected, etc)
          mApp.mThisDevice = (WifiP2pDevice) intent.getParcelableExtra(WifiP2pManager.EXTRA_WIFI_P2P_DEVICE);

          mApp.mDeviceName = mApp.mThisDevice.deviceName;
          PTPLog.d(TAG, "processIntent: WIFI_P2P_THIS_DEVICE_CHANGED_ACTION " + mApp.mThisDevice.deviceName);
          if( mApp.mHomeActivity != null ){
              mApp.mHomeActivity.updateThisDevice(mApp.mThisDevice);
          }
      }

但我不希望那样(等到改变),我想从一开始就知道我自己的名字,以便在我打开应用程序时显示它。这可能吗?

4

2 回答 2

0

我看到的唯一方法是使用反射来更改设备名称,然后使用您的代码获取原始设备名称,之后您可以将设备名称设置回原始设备名称。

于 2016-06-24T10:15:40.943 回答
0

如果启用了 Wi-Fi 并且您注册了 P2P 和加载的所有内容,那么当该意图触发时,设备名称应该立即可用。如果 Wi-Fi 被禁用,那么如果您想从 WifiP2pManager 获取设备名称,则必须等待它启用。这是我知道如何获得这个名字的唯一方法。

于 2016-07-04T02:20:49.230 回答