Android SDK Tools r12 にバージョンアップする際の注意点
こんにちは~うえじゅんです。
気がついたら最新版のAndroid SDK r13がリリースされています。
修正点は以下のようです。
- パスにスペースがある場合、Antでのコンパイル問題を修正。
- パスにスペースがある場合、エミュレータのインストール問題を修正。
- AVDのパスにスペースがある場合の問題を修正。
- エミュレータのスケーリングを使用する場合、レンダリング問題を修正。
最新版の説明はこんなところで、今回はR12にアップデートした際にAPKが作成できなくなって困った時の対処法についてです。
(Eclipse上からのバージョンアップ時にはまだr12が表示されます)
SDK Tools r12 にバージョンアップ
Eclipseのヘルプから更新の確認を行うと"SDK Tools r12"が表示されるはずです。
"r11"等から無事にバージョンアップが終わるとDDMSのロゴが変わります。(かわいくなくなりますw)
最新版好きとしてはついついバージョンアップしてしまうのですが、r12にバージョンアップするとAPKが作成できなくなってしまうことがあります。
ちなみに確実に発生するのかどうかは未確認です。
APKを作成した際に以下のエラーが発生した方はこれから記載する方法を試してみてください。
"Conversion to Dalvik format failed with error 1"
対処法
どうやら原因は"SDK Tools r12"に内包する「ProGuard」のバージョンが古いからのようです。
解決方法は以下のどちらかを試してみてください。
- 「ProGuard」を最新版にする。
- 「proguard.bat」を書き換える。
ちなみに私は「ProGuard」を最新版にする対応を行って解決しました。
- 「ProGuard」を最新版にする。
ProGuard Java Optimizer and Obfuscator - Browse /proguard at SourceForge.net にアクセスします。
Android SDK Tools に含まれる ProGuard4.4 より新しいものを選ぶ(現在なら 4.6 が最新なので 4.6 が好ましい)
ダウンロードしたファイルを解凍します。
bin フォルダと lib フォルダで Android SDK Tools の proguard フォルダの bin フォルダと lib フォルダを置き換えます。
これでAPKを作成できるようになったのではないでしょうか。
- 「proguard.bat」を書き換える。
[Android SDK]\tools\proguard\bin を開きます。
proguard.bat をエディターで開きます。
内容をコピーします。(おそらく書き換え禁止になっているので)
エディターを新しく開き、コピーしたものを貼り付けます。call %java_exe% -jar "%PROGUARD_HOME%"\lib\proguard.jar %*
を
call %java_exe% -jar "%PROGUARD_HOME%"\lib\proguard.jar %1 %2 %3 %4 %5 %6 %7 %8 %9
に書き換えます。
proguard.bat というファイル名で保存して元の proguard.bat と置き換えます。
この方法でもAPKを作成できるようになるようです。
今回は大事なところはすべて引用ですw
参考にしたサイトは以下になります。
実はリリース前にアップデートしてしまいAPKが作れなくてとても焦りました・・・
同じような問題にぶつかった方はぜひ試してみてください。
ちなみに最新版のr13で発生するかどうかはわかりません。