2013-10-07 33 views
0

我正在開發一個多平臺應用程序,它將使用「F5隱寫術」隱藏從設備攝像頭捕獲的JPG圖像內的消息。 目前我的目標是製作一個android應用程序和桌面Java應用程序。 我從here 找到了「F5 Steganography」的jar文件我已經在Java桌面應用程序中成功實現了這個庫,但問題出現在android實現中。 我已經在android項目中導入了jar文件,但是在嵌入和提取消息時,我面臨着android上的問題。Android中的隱寫和原生Java庫支持問題

  • 提取問題

在提取物,我現在面臨的問題是,進口圖書館使用「sun.security.provider.SecureRandom」,但Android是無法找到它。 這裏是登錄貓錯誤:

10-06 22:25:44.324: E/dalvikvm(32150): Could not find class 'sun.security.provider.SecureRandom', referenced from method crypt.F5Random.<init> 

現在我猜測的Android系統並不支持「sun.security.provider.SecureRandom」庫,如果是這樣,我該怎麼辦?我可以手動導入庫嗎? P.S我不想在「F5 Steganography」庫代碼中改變任何東西,因爲它正在Java平臺上使用。下面是引用代碼:

public void clk1(View v){ 
    EditText eto=(EditText) findViewById(R.id.editText2); 
    EditText ett=(EditText) findViewById(R.id.editText3); 
    Extract e=new Extract(); 
    String information[] = new String[5]; 
    information[0]="-p"; 
    information[1]="123"; 
    information[2]="-e"; 
    information[3]=ett.getText().toString(); 
    information[4]=eto.getText().toString(); 
    e.main(information); 
} 
  • 嵌入問題

在嵌入,我面對類似於之前的問題。錯誤是說它無法在庫中找到「james.JpegEncoder」類,但它存在於attached image中。

這裏是數貓跟蹤:

10-06 23:00:39.678: E/dalvikvm(410): Could not find class 'james.JpegEncoder', referenced from method main.Embed.main 

這裏是參考代碼:

public void clk0(View v){ 
    EditText eto=(EditText) findViewById(R.id.editText2); 
    EditText ett=(EditText) findViewById(R.id.editText3); 
    EditText eti=(EditText) findViewById(R.id.editText1); 
    Embed e=new Embed(); 
    String information[] = new String[8]; 
    information[0]="-e"; 
    information[1]=ett.getText().toString(); 
    information[2]="-p"; 
    information[3]="123"; 
    information[4]="-q"; 
    information[5]="100"; 
    information[6]=eti.getText().toString(); 
    information[7]=eto.getText().toString(); 
    e.main(information); 
} 

我應該怎麼做來解決這個問題呢?解決了很多問題之後,我到達了這裏,但卻陷入了困境。我已經通過互聯網進行搜索,甚至找不到與我的問題有關的適當解決方案。

回答