2013-04-03 100 views
1

我爲我的論文項目使用jfuzzylogic應用程序。當我嘗試在Android平臺上運行jfuzzylogic應用程序時,我遇到了一個問題。在我運行下面的代碼後,fcl文件無法加載。我猜Android平臺無法檢測或識別fcl文件。但是,當我在普通計算機上運行這個相同的jfuzzylogic代碼塊時,fcl文件加載得很好。有人對此問題有任何建議嗎?可以在Android平板電腦上運行jfuzzylogic應用程序嗎?下面是代碼:Android平板電腦可以支持Fcl文件嗎?

import net.sourceforge.jFuzzyLogic.FIS; 

import android.widget.TextView; 


public class Mixing implements Runnable { 


public Interfacekit mixkit,sonarkit; 
public TextView[] Rfidviews; 

int count; 


public Mixing(Interfacekit sonarkit,Interfacekit dishkit,Interfacekit mixkit,Rfid mrfid1,Rfid mrfid2, Rfid mrfid3,Rfid mrfid4,Rfid dishrfid,Rfid sinkrfid,Rfid stoverfid,Temperature eggtemp,Temperature stovetemp,final TextView[] Rfidviews) 
{ 
    this.sonarkit=sonarkit; 
    this.Rfidviews = Rfidviews; 

    new Thread(this).start(); 
} 



public void run() 

{ 
    while(count==1){ 


       //////////////////////////initial states 

     if(mixkit.getattach()==true||sonarkit.getattach()==true) 


     { 


        Rfidviews[20].post(new Runnable() { 
         public void run() { 
          { 




           // Vassiliki 


           // Load from 'FCL' file 

           String vassiliki_fileName1= "vassiliki_examinable.fcl"; 

           // Vassiliki Examinable  

           /* I FACED PROBLEM IN THIS LINE. THIS FCL FILE WASN'T LOADED SINCE I GUESS ANDROID TABLET CAN'T DETECT 
           * OR RECOGNIZE FCL FILE. 
           */ 
           FIS vassiliki_examinable_obj1 = FIS.load(vassiliki_fileName1,true); 

           // Error while loading? 
           if(vassiliki_examinable_obj1 == null) { 
            System.err.println("Can't load file: '" 
                  + vassiliki_fileName1 + "'"); 
            return; 
           } 


           int sonar1 = sonarkit.getsonar(2); 
           if (sonar1 != 0){ 


           vassiliki_examinable_obj1.setVariable("proximity", sonar1); 
           vassiliki_examinable_obj1.setVariable("obj_orient_perception", 1); 
           vassiliki_examinable_obj1.setVariable("obj_size", 40); 

           vassiliki_examinable_obj1.evaluate(); 

           double ex_toaster=vassiliki_examinable_obj1.getVariable("examinable").getValue(); 

           if(ex_toaster>10){ 

            Rfidviews[20].setText("Toaster"); 

           } 


           } 

           else 
            Rfidviews[20].setText(" "); 








          } 
         } 
        }); 









     }   



    } 

} 

}

回答

0

使用jfuzzylite代替。它是免費且開源的。它不需要第三方庫,包含比jfuzzylogic更多的功能(參數優化除外),二進制大小小於300KB,並且它在Android上非常完美。訪問www.fuzzylite.com。

相關問題