Код: Выделить всё
KeyStore keyStore;
try {
keyStore = KeyStore.getInstance(KeyStore.getDefaultType());
} catch (KeyStoreException e) {
e.printStackTrace();
return;
}
try {
FileInputStream fileInputStream = thisClass_Context.getApplicationContext().openFileInput("Subs2IPA_Crypto.keystore");
} catch (FileNotFoundException e) {
e.printStackTrace();
try {
keyStore.load(null);
FileOutputStream fileOutputStream = thisClass_Context.openFileOutput("Subs2IPA_Crypto.keystore", Context.MODE_PRIVATE);
keyStore.store((KeyStore.LoadStoreParameter) fileOutputStream);
fileOutputStream.close();
< /code>
Android Studio не позволит мне написать команду, которую я видел в других примерах для хранения хранилища ключей: < /p>
keyStore.store(fileOutputStream);
keyStore.store((KeyStore.LoadStoreParameter) fileOutputStream);
< /code>
Но если я на самом деле запускаю приложение с помощью этого кода, оно затем бросает ошибку из той же строки, говоря, что оно не может поднять на предложенный тип: < /p>
java.lang.ClassCastException: java.io.FileInputStream cannot be cast to java.security.KeyStore$LoadStoreParameter
< /code>
Эта ошибка также генерируется, если я запускаю аналогичную команду: < /p>
keyStore.load((KeyStore.LoadStoreParameter) fileInputStream);
< /code>
Должно быть что -то, чего мне не хватает, но я не могу найти примеры кода с помощью альтернативной реализации. Как я могу решить это? < /P>
Кроме того, мне любопытно. Кто -то предложил мне просто реализовать магазин ключей Android, а не Java. Я не знал, что они на самом деле разные !!! Что мне явно нужно, так это реализация магазина ключей Android. Если вы можете указать мне на хороший пример с полным кодом, пожалуйста, дайте мне знать.
Подробнее здесь: https://stackoverflow.com/questions/784 ... s-a-cannot