0

私はAndroidSDKプラグインでEclipseHeliosを使用しており、Android2.2用に作成しています

Webサービスに送信される通信を暗号化するアプリを作成しようとしていますが、エラーが発生します

で失敗します

    // wrap with RSA public key
    ObjectInputStream keyIn = new ObjectInputStream(getResource(getFileLocation(PUBLIC_KEY, localTest)));
    Key publicKey = (Key) keyIn.readObject();
    keyIn.close();

コンソールにエラーがあります。

java.lang.ClassNotFoundException:com.sun.net.ssl.internal.ssl.JSA_RSAPublicKey

これはjsse.jarファイルのクラスです。ビルドパスにjsse.jarファイルを含めようとすると、警告エラーが発生し、コンパイラから文句が表示されます。

"" javax / net / ServerSocketFactory.class "の処理で問題が発生しました:"

このライブラリをどのように参照するか、またはコアandroidのライブラリを正しく参照するのですか?

参考までに、これはJavaアプリとしては問題なく機能しますが、Androidモジュールでは機能しません。

4

2 に答える 2

1

Androidのライブラリの多くは、既存のライブラリのカスタムバージョンであり、javaxはサーバー向けです。

BouncyCastlesなどの暗号化APIを見てみてください。

古いバージョンのAndroidを使用している場合は、すでに少し弾む城がありますが、使用しているバージョンのような新しいバージョンの場合は、そのうちの1つをインポートすることをお勧めします。

于 2011-06-16T16:04:53.353 に答える
0

最後のコメントを投稿するとすぐに、問題はキーを開発したJREにある可能性があることに気付きました。したがって、Androidシステムは少なくともJRE 1.5を使用しているため、JRE1.5を使用してキーを再作成する必要がありました。それはうまくいったようです!

于 2011-06-17T13:26:58.160 に答える