Ne yazık ki yapamazsınız. Android Kitaplıklarının size yardımcı olabileceğini düşünebilirsiniz, ancak durum böyle değil. Bunun nedeni, kaynakların derlenmesi durumunda Android Kitaplıklarının "fiziksel olarak" ana uygulamaya birleştirilmesidir.
aapt
bakış açısından, uygulamanızın kaynakları diğer Android Kitaplığı kaynaklarından ayırt edilemez. Daha da fazla, aapt
giriş olarak birden fazla kaynak dizini alır (yani uygulama için res
yolu, artı referansları Android Kitaplıklarından gelen tüm res
dizinleri için yollar), ancak aynı zamanda uygulamadan yalnızca tek bir AndroidManifest.xml
bu kaynakların "sahibi" olarak geçirilir .
Söylemek istediğim, kaynakları (örneğin, stiller gibi) ayrı bir Android Kitaplığı'nda mantıklı bir şekilde gruplayabilmenize rağmen, yine de bu Android Kitaplıklarının paket adlarını kullanarak onlara başvuruda bulunamazsınız. Sadece ana uygulamanın paket adını kullanarak.
Örneğin, paket adı com.test.app
ve com.test.lib
sahip Android Kitaplığı'yla uygulama var. Ve kütüphane testStyle
stilini içerir.
şu çalışmıyor (ve bu geçici çözüm için yardımcı olabilecek bir şey teorik olarak yoktur): Bu çalışıyor iken
<TextView style="@com.test.lib:style/testStyle" .../>
:
<TextView style="@com.test.app:style/testStyle" .../>