2013-10-07 1 views
0

Я разрабатываю многоплатформенное приложение, которое будет использовать «стеганографию F5», чтобы скрыть сообщение внутри изображения JPG, снятого с камеры устройства. В настоящее время мои задачи состоят в том, чтобы создать приложение для Android и настольное приложение Java. Я нашел файл jar файла «F5 Steganography» от here Я успешно реализовал библиотеку в настольном приложении Java, но проблема в реализации android. Я импортировал файл jar в проекте Android, но при вложении и извлечении сообщения я столкнулся с проблемами на Android.Стеганография в андроиде с поддержкой поддержки библиотеки Java

  • Extract выпуск

На Extract, вопрос я столкнулся в настоящее время является то, что импортируемая библиотека использует «sun.security.provider.SecureRandom», но андроид не может найти его. здесь ошибка входа-кошка:

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); 
} 
  • Код Issue

На Embed, я столкнулся вопрос, аналогичный ранее. Ошибка говорит о том, что он не смог найти класс «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); 
} 

Что я должен сделать, чтобы противостоять этой проблеме? Я пришел сюда после решения многих вопросов, но застрял здесь. Я искал в Интернете и не мог найти правильное решение, даже отдаленно относящееся к моей проблеме.

ответ

0

Если вы хотели бы использовать в Android инструмент вы упомянули (https://code.google.com/p/f5-steganography), вы должны импортировать некоторые библиотеки из солнца или включить в проект следующие классы от sun.security.provider:

Это сообщение немного старый, но может помочь другим в Futre ... Я просто пробовал себя и работает как шарм :)