Salve galerinha!
Bem galera…
Estou desenvolvendo um APP para android para controlar o mouse(e futuramente o teclado) de um PC via socket…
Bem… Eu criei 4 botões…
1 para fazer o mouse ir para cima
outro para direita…
E 1 botão para clickar…
Bem… quando a pessoa pressiona o botão e solta ele está enviando beleza o comando… Mas se a pessoa ficar segurando ele só move o mouse quando o cara soltar o bt…
Mas como fazer para que enquanto a pessoa esteja pressionando o botão, a cada(sei lá) 1/10 seg ele movimente o mouse??
Estou usando este codigo:
[code]btCima.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(conectado){
try {
con.streamSaida.writeUTF("mC");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
});[/code]
Grato pela atenção!
Fiquem com DEUS!
Você precisa usar um outro evento que seja disparado antes do usuário soltar o botão. Não conheço bem esta parte da API do Android, mas dê uma olhada no onKeyDown:
http://developer.android.com/reference/android/view/View.html#onKeyDown(int, android.view.KeyEvent)
Mas cara esse onKeyDown é enquanto uma “tecla”(fisico) é pressionada né??
Mas eu preciso de quando o usuario pressionar um “botão”(virtual), entendes??
Mas muito obrigado pela tua atençao!
Fica com DEUS!
Voce pode usar o onTouchEvent e tratar ACTION_DOWN e ACTION_UP.
Eu tava pensando em usar o onTouchListener mesmo…
E criar uma Thread para verificar… se o bt estiver pressionado ele envia o comando via o Socket…
Essa é a melhor forma??
Vou fazer aqui e depois posto como ficou o codigo para a galera…
Grato pela atenção:!:
Galerinha eu fiz assim:
Por a conexao ser via Socket… Para não sobrecarregar muito o celular… Eu apenas criei um comando para o celular enviar para o servidor começar a mover o mouse e outro para enviar para o servidor parar de mover o mouse…
No servidor é rodada uma Thread q a cada 0,6 seg ele checa um boolean se é para mover o mouse para cima, para baixo, …
Ficou marromeno assim:
[code]btBaixo.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN){ // Quando o bt é pressionado
if(conectado){ // Checa se está conectado
try { // Se sim
con.streamSaida.writeUTF("mB"); // Escreve para o servidor comecar a mover o mouse
} catch (IOException e) { // Exeption de IO ;)
e.printStackTrace(); // Retorna o exeption
}
}
}
if(event.getAction() == MotionEvent.ACTION_UP){ // Quando o bt é "solto"
if(conectado){ // Checa se está conectado
try { // Se sim
con.streamSaida.writeUTF("nB"); // Escreve para o servidor parar de mover o mouse
} catch (IOException e) { // Exeption de IO ;)
e.printStackTrace(); // Retorna o exeption
}
}
}
return false; // Retorna false o onTouch
}
});[/code]
Muito obrigado pela atenção de todos!
Fiquem com DEUS:!:
landantas, eu vi que já faz tempo que já fez esse pergunta. Mas acontece que estou querendo criar um programa parecido com o seu, teria como me dizer como faço para enviar arquivos via socket no android?