1 回答

TA貢獻1856條經驗 獲得超5個贊
好吧,我可以給你一個如何實現這一點的例子,但你確實需要研究我將使用的東西。
創建線程來發送和接收數據
public class myReceiveThread extends Thread{
public gotNewData listener;
//Create an interface to pass data to Activity
public interface gotNewData(){
void gotNewDataToDisplay(String data); //or int or data or what ever.
}
//CTor
public myThread(gotNewData listener){
this.listener = listener;
}
@Override
public void run(){
while(myAppisRunnung == true){
//Receive Data
listener.gotNewDataToDisplay("New Data");
}
}
}
在主要活動中:
//In Main activity
public class MainActivity extends AppCompactActiity implements gotNewData{
//what ever
public void startThread(){
myReceiveThread thread = new myReceiveThread(this);
thread.start();
}
@Override
public void gotNewDataToDisplay(String data){
someTextView.setText(data);
}
}
創建發送線程
public class mySendingThread extends Thread{
private BlockingQueue<String> toSendMessages= new BlockingQueue<>();
Public mySendingThread (BlockingQueue<String> toSendMessages){
this.toSendMessages = toSendMessages;
}
@Override
public void run(){
while(myAppisRunnung == true){
String message= toSendMessages.take();
//Send message
}
}
}
在主要活動中
public void startSendThread(){
mySendingThread threadSend = new mySendingThread(MessageQueue);
thread.start();
}
在 mainActivity 中,您需要一個BlockingQueue<String> MessageQueue 并且可以添加您想要的每條消息。
添加回答
舉報