2017-11-13 86 views
9

Używam znacznika manifestPlaceholder w pliku build.gradle dla projektu biblioteki.Jak ustawić wartość domyślną dla manifestPlaceholder

Osoba korzystająca z biblioteki powinna zdefiniować ją poprawnie.

AndroidManifest.xml w Bibliotece:

<meta-data 
     android:name="library_id" 
     android:value="${libraryId}"/> 

plik Build.gradle po stronie aplikacji:

 manifestPlaceholders = [libraryId: "example"] 

Czy jest jakaś opcja, aby zastąpić tag manifestPlaceholder na stronie biblioteki?

Chcę tylko zdefiniować wartość domyślną, a użytkownik powinien mieć swobodę podawania wartości, jeśli chce ją zmienić.

+1

Czy spróbować umieścić 'manifestPlaceholders' w' defaultConfig' w bibliotece build.gradle biblioteki? To działa dla mnie – DeKaNszn

+1

Jesteś tego pewien? Wstawiłam manifestHolder do biblioteki build.gradle biblioteki, a ta, która umieszcza stronę aplikacji, nie przesłania elementu. – StillHopeForMe

Odpowiedz

1

Czy próbowałeś użyć strategii Manifest Merge, aby uzyskać pożądany efekt?

W aplikacji manifestować można dodać coś

<your-outer-element 
    tools:node="replace"> 
     <meta-data 
      android:name="library_id" 
      android:value="YOUR_APP_ID"/> 
</your-outer-element> 

I że zastąpi library_id meta dane znalezione wewnątrz your-outer-element znalezionej w bibliotece Oczywisty