Dropbox API 利用時の ProGuard 設定

Dropbox API(Core API) を利用したアプリを作成してみた。
APK を生成するときに ProGuard を動かすけど、以下の設定が必要だったのでメモ。

-dontwarn org.apache.**

-keep class com.dropbox.client2.** { *; }
-keep class org.apache.commons.logging.** { *; }
  • Warning を出力しない(Warning が出ると、なぜか Error も出て失敗するため)
    • Dropbox APIApacheAPI が含まれているが、 Android 標準のと被るので Warning が発生するため
    • 本当は、重複しないようにすべきなんだろうけど
  • Dropbox APIApache Commons Logging API を除外
    • アプリ実行時に ClassNotFoundException が出るため
    • API 内部で、クラス名をリテラルで参照してるから?