2012-01-04 8 views
9

EclipseでScalaを使用してAndroidアプリケーションを作成しようとしています。私が実行している問題は、展開されたAPKファイルが非常に大きいことです。Androidアプリを外部ライブラリにリンクすることはできないため、使用するコードはすべてAPKファイルにコピーする必要がありますが、ほとんどのScalaアプリではほとんどのScalaライブラリ私が読んだところでは、大規模なアプリケーションでさえScalaライブラリのほんの50kb程度しかパッケージ化することができませんでしたが、私のAndroidアプリが私のテストアプリケーションを引き上げると言っていた4MBと比較して読んでいます。アンドロイド用のスカラーアプリケーションは、どのようにファイルサイズを縮小できますか?

私は既にEclipse用のTreeshakerプラグインを試していますが、実行中のウィンドウでは実行されていますが、何もしないようです。私のプロジェクトからそれを分解しても、最終的なファイルサイズには影響しません。私もProguardを自分で設定しようとしましたが、ファイルサイズに影響を与えない設定は見つけられません(ProguardはEclipseのエクスポートウィザードを使用して実行するだけです) "1"のような潜在的なエラーメッセージが表示されます。 (まあ、大丈夫、エラーメッセージ全体が「Dalvik形式への変換はエラーコード1で失敗しました」というエラーメッセージの明確な文書が見つからず、私のコードまたは構成が問題を引き起こしています...)

So.どのように私はこれを動作させることができるかについての任意の洞察?

+0

新しいEclipseプラグイン(https://github.com/banshee/AndroidProguardScala)を試してみてください。 googleグループhttps://groups.google.com/forum/?fromgroups#!forum/scala-on-android –

答えて

6

多くの人がProGuardでSBTを使用しています(私が知っている限り、sbt android pluginで自動的に実行されます)。

さらに、ship with two dex files in a apkの可能性があります。ほとんどの制限は最終apkではなくdexファイルに適用されるため、これは多くの問題も解決します。

これは古いですが、多くの有用な一般的な情報を持っていますhttp://lamp.epfl.ch/~michelou/android/

1

ここに与えられたとして、私はAndroidProguardScalaを使用します。

https://stackoverflow.com/a/11084146/1287856

アプリケーションをエクスポートするときには、ProGuardのを使用し、それはかなりうまく動作します。

+0

を読んでみてください。プラグインへの直接リンク:https://github.com/banshee/ AndroidProguardScala –

関連する問題