2015-12-14 4 views
11

デックスフェーズでAndroidビルドを送信するときにビルドサーバーでエラーが発生しました。エラーDexフェーズ中に大きなCodename Oneアプリケーションを構築するとき

ちょっとグーグルで調べたところ、64Kの機能(すべてのライブラリ、重いGoogle Playサービスを含む)のハード制限があること、または複数のdexメカニズムを使用できることを学びました。

コードネーム1に対してこれを有効にするにはどうすればよいですか?

私はCodename OneがAntを使用していることを理解しています。私が理解する限り、これはgradleのみで動作します。

FYIこれは、Googleがネイティブアンドロイドとサブライブラリにサービスを果たし分割している、回避策です:

http://android-developers.blogspot.com.es/2014/12/google-play-services-and-dex-method.html

+2

'android.multidex = true' –

答えて

8

私は非常に同様の問題を持っていたし、この上のコードネームOneのプロサポートで対応していました。 Gradle supportは、最近発表されたものなので、文書化されていませんが、次のアップデートで利用できるはずです。

あなたのプロジェクトにヒントを構築し、以下を追加する必要があります。

android.gradle=true 
android.multidex=true 

私はGradleのが唯一のmultidexオプションが必要とされるであろう将来に一度3.3ロールの周りので、デフォルトのビルドになることを理解しています。

6

あなたは、Googleがちょうどビルドヒントにandroid.includeGPlayServices=trueを追加し、あなたのcodenameoneアプリでサービスライブラリを再生追加する必要はありません、それはビルドサーバーに含まれることになります。

+3

うわー速かった、今すぐ試してみよう –

+3

最近、' android.includeGPlayServices'がデフォルトでtrueになったことを知りました。ビルドヒントを追加しなくても、必要な場所で使用されます。オフにするには、falseに設定します。 – Diamond

関連する問題