2017-11-25 9 views
0

i importiert diese Abhängigkeiten in meinem Android-Projekt:Welche Abhängigkeiten sollte ich nicht mit Proguard verdecken?

dependencies { 
compile fileTree(include: ['*.jar'], dir: 'libs') 
compile 'com.android.support:appcompat-v7:26.1.0' 
compile 'com.android.support:design:26.1.0' 
compile 'com.google.code.gson:gson:2.8.0' 

compile project(':openCVLibrary330') 
compile 'de.hdodenhof:circleimageview:2.2.0' 

compile 'com.google.android.gms:play-services-ads:11.6.0' 

compile 'com.android.support:recyclerview-v7:26.1.0' 
compile 'com.android.support:cardview-v7:26.1.0' 

}

Nun meine Frage: Welche Abhängigkeiten sollte ich nicht mit proguard verschleiern und wie dieses Ziel zu erreichen?

Vielen Dank!

Antwort

0

Im Allgemeinen müssten Sie sich überhaupt keine Sorgen machen. Abhängigkeiten werden mit einer eigenen Proguard-Datei geliefert, die beim Erstellen der App mit Ihrer eigenen zusammengeführt wird. Googles Bibliotheken folgen dieser Regel definitiv. Das einzige Mal, wenn Sie sich darüber Gedanken machen müssen, ist, wenn Sie eine Bibliothek von Drittanbietern verwenden, die nicht gut gestaltet ist. In diesem Fall müssten Sie überprüfen, ob die Bibliothek Reflektionen verwendet, um auf Methoden oder Klassen zu verweisen. In diesem Fall müssten Sie diese Methoden oder Klassen davon abhalten, verschleiert zu werden.

+0

Nun, ich verstehe. Zum Beispiel verwende ich in meinem Projekt Bibliotheken von Drittanbietern wie openCV und circleImageView. Wenn ich richtig verstanden habe, sollte ich in der Datei proguard-rules.pro angeben, diese beiden Abhängigkeiten nicht zu verschleiern, indem ich '-keep class org.opencv. *'? Ist das die korrekte Syntax? Vielen Dank. –

+0

Ja, das wäre die korrekte Syntax. –

Verwandte Themen