【发布时间】:2013-10-13 12:27:02
【问题描述】:
我正在开发一个多平台应用程序,它将使用“F5 隐写术”将消息隐藏在从设备相机捕获的 JPG 图像中。 目前我的目标是制作一个 android 应用程序和桌面 Java 应用程序。 我从here找到了“F5隐写术”的jar文件 我已经在 Java 桌面应用程序中成功实现了该库,但问题出现在 android 实现中。 我已经在android项目中导入了jar文件,但是在消息的嵌入和提取中,我在android上遇到了问题。
- 提取问题
在提取时,我现在面临的问题是导入的库正在使用“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 隐写术”库代码中的任何内容,因为它在 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 中。
这里是 log-cat 跟踪:
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);
}
我应该怎么做才能解决这个问题?在解决了许多问题后,我到达了这里,但被困在这里。我在互联网上进行了搜索,但即使与我的问题远程相关,也找不到合适的解决方案。
【问题讨论】:
标签: java android eclipse random steganography