Deaktiviere Abhängigkeitsberechtigungen

8

Ich stehe momentan vor folgendem Problem:

Ich habe die App 'A' entwickelt, die die Berechtigungen 1, 2, 3 verwendet und eine Drittanbieter-Bibliothek 'B' als Abhängigkeit verwendet (hinzugefügt mit maven & amp; grandle).

Bibliothek 'B' verwendet die Berechtigungen 4 und 5. Jetzt, beim Erstellen der App, fügt der Manifest-Merger die Berechtigungen 4 und 5 zur App 'A' hinzu.

Wie kann ich das verhindern und habe nur die Berechtigungen 1, 2 und 3 im endgültigen Manifest?

Meine erste Schätzung wäre die Verwendung eines der Manifest Merger Markers, wie hier zu sehen: Ссылка

    
ThatBigGuy 17.01.2015, 08:33
quelle

2 Antworten

13

Sie müssen Selector verwenden

  

Jede tools: node oder tools: attr-Deklaration kann um a erweitert werden   Werkzeuge: Selektorattribut, das kontextabhängige Information darüber ist, ob oder   nicht die Verschmelzungsstrategie sollte auf die aktuelle niedrigere angewandt werden   Priorität XML-Beschreibung. Dies ist zum Beispiel beim Entfernen eines   Erlaubnis nur, wenn für eine bestimmte Bibliothek im Gegensatz zu irgendwelchen kommt   Bibliothek:

%Vor%

Es wäre nächsten Ihren ursprünglichen Anforderungen entsprechend

%Vor%

Beachten Sie jedoch, dass alle anderen <uses-permissions/> entfernt werden.

    
gio 17.01.2015, 18:01
quelle
0

Wie Sie wissen, haben alle Bibliotheken eine Manifestdatei und werden zusammengeführt. Sie können damit eine Berechtigung in einer Ihrer Bibliotheken entfernen:

%Vor%

für ein Beispiel zum Entfernen der Standortberechtigung:

%Vor%     
sajad abasi 09.01.2018 20:44
quelle