Android Proguard ist nicht inline

Ich verwende das neueste Android SDK (4.1) und habe versucht, ein signiertes Glas mit aktiviertem Proguard zu exportieren. Nach dem Dekompilieren der optimierten APK stellte ich jedoch fest, dass Methoden, von denen ich erwartet hätte, dass sie inline sind, nicht inline sind.

Ich weiß, dass Proguard ausgeführt wurde, weil der Code korrekt verschleiert wurde. Um dies zu bestätigen, habe ich meiner Aktivität diese Methode hinzugefügt:

private void testInlining()
{
    mConfig = null;
}

Diese private Methode wird in meiner Aktivität nur einmal aufgerufen. Da sie privat ist, sollte es für das Optimierungsprogramm sehr offensichtlich sein, dass sie nur einmal aufgerufen und inline gesetzt werden sollte.

Die Dokumentation besagt, dass alle Optimierungen standardmäßig aktiviert sind und dass Proguard "Inline-Methoden, die kurz sind oder nur einmal aufgerufen werden".

Gibt es ein bestimmtes Flag, das ich Proguard geben sollte, um Inlining zu aktivieren?

BEARBEITEN

Meine proguard Konfigurationsdatei enthält

-optimizationpasses 5
-allowaccessmodification
-overloadaggressively
-repackageclasses ''
-dontskipnonpubliclibraryclasses

BEARBEITEN

Nach dem Gebrauch

-whyareyoukeeping class com.templatecompany.templateappname.EntryPointActivity {*;}

Ich verstehe den Grund, warum die Methode nicht inline ist:

 [proguard] com.templatecompany.templateappname.EntryPointActivity: void testInlining() (20:21)
 [proguard]   is invoked by    com.templatecompany.templateappname.EntryPointActivity: com.td.media.ivConnection.IvConfig getIvConfig() (14:15)
 [proguard]   implements       com.td.widget.MainActivity: com.td.media.ivConnection.IvConfig getIvConfig()
 [proguard]   is invoked by    com.td.widget.MainActivity: void onCreate(android.os.Bundle) (140:175)
 [proguard]   implements       android.app.Activity: void onCreate(android.os.Bundle)
 [proguard]   is a library method.

Aber ich bin mir nicht sicher, wie die Tatsache ist, dass die MethodetestInlining wird in der Methode verwendetgetIvConfig die wiederum von einer anderen methode verwendet wird, verhindert das inlining auftestInlining imgetIvConfig.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage