2011-10-29 22 views
9

sbt android eklentisi ile bir demo uygulaması oluşturduk.sbt android eklentisi ile uzun yapım süreleri

Uygulama çok basit. /src/main/java/my/package/ altında bir MainActivity.java dosyasını yerleştirdim ve bir düğmeye bastığınızda, bir Activity saniyenizi alır, ancak Scala içinde yapılır.

Her şey yolunda, ancak yapım süreleri beni öldürüyor. Ben kullanarak benim cihazda çalıştırmak da değişiklik olduğunda:

> android: paket-ayıklama

> android: start-cihaz

Sorunum neredeyse tam bir dakika sürer olmasıdır iki etkinlik projesi inşa etmek. Derlemek ve çalıştırmak için başka bir yolu var mı? paket-ayıklama

> android: paket-hata ayıklama [bilgi] yazdı /Users/macarse/Belgeler/demo/hedef/src_managed/ana/scala/benim/

Bu android benim çıkışı package/TR.scala [info] 1 Scala kaynağını /Users/macarse/Documents/demo/target/scala-2.9.0-1 /classes ... ProGuard, sürüm 4.6 ProGuard GNU Genel altında yayımlandı Genel Lisans. Bu nedenle, 'a (scala, ...) bağlantı veren programların GNU Genel Kamu Lisansını da taşımasını sağlamalısınız. Alternatif olarak, ProGuard yazarıyla bir istisna başvurusunda bulunabilirsiniz. Program dizini okuma [/Users/macarse/Documents/demo/target/scala-2.9.0-1/classes] Okuma Program kavanozu [/Users/macarse/.sbt/boot/scala-2.9.0-1/ lib/scala-library.jar] (filtrelenmiş) Kitaplık küpünü okuma [/Users/macarse/Documents/android-sdk-mac_86/platforms/android-4/android.jar] Not: Tüm uyarıları göz ardı ediyorsunuz! [/Users/macarse/Documents/demo/target/classes.min.jar] Program dizini program dizininden kopyalanıyor [/Users/macarse/Documents/demo/target/scala-2.9.0-1/classes ] kaynak program havuzundan kopyalanıyor [/Users/macarse/.sbt/boot/scala-2.9.0-1/lib/scala-library.jar] (filtrelenmiş) [bilgi] Dexing /Users/macarse/Documents /demo/target/classes.dex [info] Paketleme /Users/macarse/Documents/demo/target/demo-0.1.apk [başarı] Toplam zaman: 56 s, tamamlandı 29 Eki 2011 4:22:54 PM

cevap

3

Proguard'ın işlenmesi gerektiğinden uzun zaman alır Aldığınız .apk dosyasını en aza indirmek için Scala standart kütüphanesi ve Scala standart kütüphanesi çok büyük.

Sana Scala 2.9 özelliklerini kullanmak olmasaydı 2.8 daha küçük bir standart kütüphane bulunmaktadır, çünkü Scala 2.8 geçmek önerir.

Gerektiğinde, android:package-debug'u kullanmayın. compile kaynak kodunuzu derler, sadece programınızın derlenebildiğinden emin olmak için yeterlidir.

Android cihazda test etmek üzereyken sadece android:package-debug kullanın, bu size zaman kazandırır.

+0

Cevabınız için teşekkür ederiz. AFAIK derlemesi aynı zamanda proguard geçişini de yapar, bu yüzden uzun zaman alacaktır. – Macarse

+1

Bu doğru değil, en azından android eklenti 0.6.x içinde. 'compile' proguard geçişini yapmayacaktır. –