2

我在这里查看了 Android wifi p2p API并查看了“WiFiDirectActivity”中提供的示例代码,它只允许手机将图像文件从一部手机传输到另一部手机。他们为此使用的代码是:

// Allow user to pick an image from Gallery or other
// registered apps
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
startActivityForResult(intent, CHOOSE_FILE_RESULT_CODE);

问题是这只是一种方式,它只传输文件,而我想将它实现到我的 pvp 纸牌游戏应用程序代码中以传输 ArrayList 对象。我怎样才能做到这一点?我不想传输 txt 文件并在我的代码中有一个文件缓冲区。我还没有找到任何好的教程来展示如何将这种 wifi-direct 连接整合到更大的应用程序中。

4

1 回答 1

1

我对这个主题也有点陌生(Android 和特别是 Wi-Fi DIrect p2p),但我认为它传输字节。因此,如果您将 ArrayList 传输到字节数组,如下所示:

byte[] result = new byte[list.size()];
for(int i=0; i<list.size; i++){ 
    result[i] = list.get(i).byteValue();
}

你可能会成功。

请注意,您发布的代码不会进行实际传输,它只是让用户从图库中选择图像。我无法为您指出进行传输的确切代码片段(让我感到厌烦),但我认为它使用了 som OutputStram-s。

于 2014-01-24T21:30:32.823 回答