2015-04-15 17 views
5

library.aar ve library.jar kullanan bir Android Studio kitaplığı projem var. Ben mylib.aar olarak dışa ve farklı bir uygulama/projeye bu yeni AAR kullandığınızda, library.aar ve library.jar tanımlanan sınıfları bulamıyorum. BöyleAAR, bağımlılıkları dahil olmak üzere nasıl dışa aktarılır?

Benim build.gradle görünüyor:

apply plugin: 'com.android.library' 
android { 
    compileSdkVersion 21 
    buildToolsVersion "21.1.2" 
    defaultConfig { 
     minSdkVersion 15 
     targetSdkVersion 21 
     versionCode 1 
     versionName "1.0" 
    } 
} 
dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    compile project(':library_dot_aar') 
    compile project(':library_dot_jar') 
} 

Ben New -> Module -> Import .JAR or .AAR Package kullanarak ve Project Structure -> Module Settings -> Dependencies -> Add Module Dependencies bağımlılık olarak ekleyebilirsiniz Android Studio AAR ve JAR dosyalarını ithal.

Ben sadece 25KB oldu mylib.aar açıldıktan sonra ( library.aar 300KB bitmişti düşünüyor ben mylib.aar 'ın boyutu aynı aralıkta olacağını varsayıyorum) ve dahil bağımlılıkları buna dahil edilmedi. Tüm bağımlılıklarını içeren bir AAR'ı nasıl ihraç edebilirim?

cevap

2

Sen this answer kontrol etmeli: kütüphane birleştirmek için bir mekanizma yoktur

. olarak biraz karmaşıktır, muhtemelen hangi bağımlılıkların birleştirileceğini kontrol etmek istersiniz ( örneğinde muhtemelen orada support-v4'ü eklemek istemezsiniz). Ayrıca , kaynakları ve Android manifest'ini birleştirmeniz gerekecek. Eğer emin kaynaklardır mesela sen bir lib strings_a.xml ve strings_b.xml olabilir (iki res klasörler arasında herhangi bir çakışma yoksa Şu anda

, kolayca bir şey kesmek için hiçbir yolu yoktur diğer lib). ( android res düzeyinde bir birleştirme yapmak yerine) sadece "birleştirme" Bu şekilde iki res klasörleri aynı yerde içine hem kopyalama. bazı özel koduyla daha karmaşık olurdu Manifest, ama yapılabilir İçin

. Bunun için yerleşik bir mekanizma sağlanması

yüzden yakın zamanda beklemeyin bizim öncelikli çok düşüktür.

+1

teşekkürler. Mylib.aar ile birlikte diğer projede 'library.aar' ve 'library.jar' öğelerini dahil ederek bir iş buldum. – alxcyl

+0

Merhaba alkscy, bağımlılık url ve jar ve lib dahil aar yapmak için herhangi bir yöntem buldunuz. Bize yardım edecek – harikrishnan

İlgili konular