2015-01-26 3 views
16

Ich habe eine Android-Bibliothek, die eine AAR-Bibliothek ausgibt. Diese Bibliothek wird in verschiedene ProjektFlavors of Mobile, TV und Wear-Apps integriert sein. Ich denke, dass jede dieser Plattformen diejenigen sein sollte, die Variablen wie den App-Namen, das Icon und die Berechtigungen über das Manifest und die Produktflakons festlegen.Benötigt eine Android-Bibliothek ein Manifest, app_name, Icon?

Gibt es eine Möglichkeit, ein AAR ohne eine AndroidManifest.xml und damit Zeichen (für das Symbol) zu erstellen?

Weitere Informationen über das, was ich mache auf das Motiv in meiner letzten Frage zu finden: Android Studio Java Library Module vs. Android Library Module

Antwort

21

Alle Android Bibliothek benötigt eine AndroidManifest.xml Datei haben, aber ein Name oder ein Symbol ist nicht benötigt. Es wird nur benötigt, wenn es eine Aktivität gibt, die MAIN und LAUNCHER ist.

Sie könnten einfach dieses Manifest verwenden und Ihre Bibliothek wird wie ein Charme funktionieren.

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="[your package]" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk android:minSdkVersion="[min supported version]" /> 

    <application/> 

</manifest> 
+0

Warum nicht 'targetSdkVersion' und' maxSdkVersion' verwenden? und was ist mit 'uses-feature' und' uses-permission'? –

+0

@YoushaAleayoub kann nicht für das Plakat sprechen, aber ich nehme an, seine Absicht war es, ein eher unscheinbares Manifest zu zeigen, nicht um ein vollständiges Beispiel zu geben (in dieser Hinsicht ist auch die Verwendung-SDK wahrscheinlich ein Extra, obwohl wer eine minSdkVersion will zu 1 sowieso? :)). Sie sind frei, die frills hinzuzufügen, wie Erlaubnis usw. – Rick77

+0

Müssen Sie jemals etwas in die setzen? Ich habe eine Aktivität in meinem Bibliotheksmodul, aber es scheint mir egal zu sein, ob ich die Aktivität in der Bibliothek AndroidManifest anzeige oder nicht. Es scheint auch, dass ich irgendeinen Wert für das Paket eingeben kann; es muss nicht dem tatsächlichen Java-Paket der Bibliothek –

3

Sie können mit dem AndroidManifest.xml unten gehen, wenn Sie Setup benötigen keine Android-Komponente wie Aktivitäten oder Dienstleistungen oder benutzerdefinierte Eigenschaften hinzufügen.

<?xml version="1.0" encoding="utf-8"?> 
<manifest package="com.your.library.base.package" /> 
+0

Ich gehe mit dieser Antwort. Kurz, süß und auf den Punkt. – Sakiboy