私はAndroid開発に不慣れです。アプリケーションに署名しようとすると、次のエラーが発生します。誰もがこの問題について私を助けることができますか?
keytool error :java.io.IoException:Incorrect AVA format
フォーラムでいくつかの解決策を見つけました。たとえば、実行する必要がありますdebug.keystore
が、成功しませんでした。
私はAndroid開発に不慣れです。アプリケーションに署名しようとすると、次のエラーが発生します。誰もがこの問題について私を助けることができますか?
keytool error :java.io.IoException:Incorrect AVA format
フォーラムでいくつかの解決策を見つけました。たとえば、実行する必要がありますdebug.keystore
が、成功しませんでした。
回答:
おそらく、名前、組織、またはその他の場所のフィールドに不正な文字(、(コンマ)など)を入力した可能性があります。
もちろん、本当に必要な場合は\記号でエスケープできます
署名付きの.apkファイルをEclipse ADTでエクスポートしようとしたときにエラーが発生しました。エラーはあなたのエラーと同じでした。私の場合、国コードの前に+記号を使用しました。この名前から+記号を削除することで問題が修正され、署名済みの.apkファイルを完全にエクスポートできるようになりました。また、このエラーは、コンマ、スラッシュ、セミコロン、引用符を使用すると発生する可能性があります。
apkのエクスポート中に特殊文字を使用しようとしました。apkの作成中に表示されるフィールドでこれらの特殊文字を使用することはできません。特殊文字セットには以下が含まれます。
識別名オプションをまったく設定しなかったときにこのエラーが発生しました。これは、オプションを有効な形式の文字列に設定することで修正されました。
このコマンドはAVA形式の例外で失敗しました:(読みやすくするために改行が追加されています)
C:\Program Files\Java\jdk1.6.0_45\jre\bin>keytool
-genkey -v -dname PatrickTaylor -validity 10000
-keystore C:\drops\patrickkeystore
このコマンドは正常に完了しました:
C:\Program Files\Java\jdk1.6.0_45\jre\bin>keytool
-genkey -v -dname PatrickTaylor -validity 10000
-keystore C:\drops\patrickkeystore
-dname "cn=Patrick Taylor, ou=engineering, o=company, c=US"
これは、「名前、組織、またはその他の場所のフィールドに不正な文字(、(コンマ)など)を入力した可能性があります。私は州または州にカンマを入れました。この回答を規則で回答としてマークしてください。+91の+は特殊文字です。
特殊文字/すべての良い答えをエスケープすることが問題になる可能性があります。実際の「keytool」コマンドラインを共有しなかったため、正確な答えを出すのが難しくなりました。pub / privキーペア( "-genkeypair" param)を生成しようとしている場合、1つの問題は、証明書のサブジェクト識別名( " -dname " arg)が正しいX.500 AVAで指定されていないことです。 ( " A ttribute- V alue- A ssertion")形式。たとえば、サブジェクトの共通名(CN)の前にある「CN =」を省略します。Paramは次のようになります。
keytool ... -dname="CN=SomeCertSubject" ...
この識別名のparamでは、「CN」(「共通名」)「であるttribute」、「SomeCertSubjectは」「であるVの ALUE」。