我有20多个从MyFragment扩展的片段,例如:
LoginFragment extends MyFragment
UploadFragment extends MyFragment
CameraFragment extends MyFragment
和MyFragment
依次从Fragment
扩展。因此,在我的Android应用程序中,每当我为其中之一充气时,我都会在我的抽象类中将其称为showFragment(MyFragment f)
,在其中触发Adjust事件,
AdjustEvent event = new AdjustEvent(EVENT_LOAD_FRAGMENT);
// Add callback parameters to this parameter.
event.addCallbackParameter("LoadFragment",
f.getClass().getSimpleName());
Adjust.trackEvent(event);
以便我可以测量哪个片段作为kay值对的使用频率。到目前为止,一切都很好,并且在调试阶段,效果很好。
您现在可以想象,getClass().getSimpleName()
在生产环境中被混淆了。我不想触及所有的20个片段,如果对这些类进行了混淆,那会很好。但是我仍然想获得该类的有效getSimpleName()
字符串..
混淆了getSimpleName()
的类如何有效?
答案 0 :(得分:0)
将以下内容添加到您的proguard配置文件中。
-keep,allowobfuscation class * extends com.you.package.name.MyFragment
答案 1 :(得分:0)
我用过
-keepnames class * extends com.you.package.name.MyFragment
打开aar和classes.jar的包装,并检查构建forlder中的seed.txt和mapping.txt以查看混淆情况