私はAES code
暗号化用に書いていますが、異なるバージョンの Android を別の方法で認識しましたencrypt
。getBytes()
私はいつかGoogleに行って、システムの文字セットの影響を受けることについて何かを読んだので、encrypted
文字列は異なります。
から情報を記録しますLog.i("Charset",Charset.defaultCharset().toString());
Android 2.3では次のように表示されます。
06-26 16:10:33.954: I/Charset(453): Charset[UTF-8]
Android 2.2には次のように書かれています。
06-26 16:05:19.140: I/Charset(737): com.ibm.icu4jni.charset.CharsetICU[UTF-8]
Android 4.xは次のように述べています。
06-26 15:53:17.770: I/Charset(16957): java.nio.charset.CharsetICU[UTF-8]
Android 2.3 と 4.x は文字列を暗号化/復号化して同じ結果になりますが、2.2 は異なります。
getBytes()
すべてのバージョンで一貫性を持たせるにはどうすればよいですか?