Então, esse lance de comunicação entre máquinas é novo pra mim. Eu recebo uma String em formato de JSON, em exemplo:
{
"client_id": randomnumber,
"videos": 4,
"remote_urls": [{
"url": "a nice url"
},
{
"url": "a nice url"
},
{
"url": "a nice url"
},
{
"url": "a nice url"
}
],
"action": "start"
}
Ficam armazenadas numa string chamada textReceived (exemplo apenas). Queria saber como eu posso “quebrar” essas coisinhas em variaveis menores, pra eu poder usar melhor. Por exemplo, “action” será usada em alguns ifs, o “videos” em um int que será passado como parametro e etc.
Ah, eu to ciente que as URLS deverão ficar em um array!
Seguinte, é uma dúvida bem pontual e válida a que você tem. Parece simples, e realmente é, mas é melhor que você trabalhe com a noção de JSON, mesmo.
Crie duas classes, ClientDTO com os campos que você recebe do Json, e o RemoteUrlDTO, que é a lista de urls que voce vai receber. Aí, é getter and setter.
Depois, no seu método de recebimento de mensagens, faz assim:
Gson g = new Gson();
ClientDTO clientDTO = g.fromJson(mensagemRecebida, ClientDTO.class);
Onde o “mensagemRecebida” é sua String e a class é o seu objeto Json que vai retirar os dados. A partir daí, é só trabalhar com os getters and setters e tal.