我正在開發適用於android應用程序的多線程Web服務器,並且在使用外部.css文件和.js文件的頁面上遇到了一些問題,但只與Google Chrome瀏覽器有關!使用Firefox和Opera時,頁面呈現良好,Google Chrome有時會加載.css,有時會加載.js,有時甚至都不加載。適用於Android的多線程Web服務器
這是我的應用程序的結構:
WebServer.java
class WebServer implements Runnable{
protected boolean ON;
public void start(){
if(!ON){
ON=true;
thread=new Thread(this,"WebServer");
thread.start(); }}
public void run(){
while(ON){
listenSocket = new ServerSocket(port);
Socket connectionSocket = listenSocket.accept();
Thread t = new Thread(new Client(connectionSocket));
t.start();
listenSocket.close();}
}}
Client.java
class Client implements Runnable {
public void start(){
thread=new Thread(this,"Client");
thread.start();}
public void run(){
//parse the request and send a file
}
}
myApp.java
public class myApp extends Activity{
onCreate(){
WebServer ws=new WebServer(8080);
}
onClick(){
...
ws.start();
}}
當我點擊活動按鈕時,它調用webserver.start();在我看來,谷歌瀏覽器同時發送更多請求,並且線程出現問題... 你能幫助我嗎?
[編輯] 我忘了寫在run()方法中的循環中的問題
[編輯2] 我只是想與其他電腦,有問題也與火狐..
將ServerSocket創建移出循環。這是行不通的。 – ZeissS
Thank'youuu !!!現在它的作品總是:) – supergiox