从/到字节转换的整数

时间:2014-05-05 01:10:26

标签: java android samsung-mobile-sdk

我正在开发基于Samsung Chord SDK的应用程序。我需要在sendDataToAll()中发送视频的当前位置,该位置接受byte[][]中的数据。我的问题是,当我尝试将当前位置(int)类型转换为byte时,我得到负值(在{{1返回。当我尝试将负值转换为byte中的int时,它仍然是相同的负值。 我该如何解决这个问题?

发送代码:

OnDataRecived()

接收代码:

//for sending the message
int currPos = mVideoView.getCurrentPosition();
logView.append("Duration sent= " + currPos);
//Integer resume = -3;

Byte msgByte = new Byte("-3");
byte [] [] pay = new byte [1] [2];
pay[0] [0] = msgByte;

Byte msgByte2 = new Byte((byte) currPos);
logView.append("Duration sent= " + msgByte2);
pay[0] [1] = msgByte2;
mChordchannel.sendDataToAll("Integer", pay);

// im sending -3 so that im checking that the user pressed the resume .

1 个答案:

答案 0 :(得分:0)

您正在将这些语句中的字节类型转换为字节

    pay[0] [0] = msgByte;
    pay[0] [1] = msgByte2;

试试这个而不是上面的

   pay[0] [0] = msgByte.byteValue();
   pay[0] [1] = msgByte2.byteValue();

这是我假设的问题的原因。