微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用proguard.cfg保留我的测试方法

如何解决如何使用proguard.cfg保留我的测试方法

| 对于我的Android工具测试,我需要在类中添加一些额外的入口点。这些方法未在实际应用中使用。我的想法是将它们全部以“ 0”开始,并有一条通用规则将它们排除在优化之外。这是我走了多远:
-keepclassmembers class com.xxx.**.* {
    public ** test_* ();
    public ** test_* (**);
    public static ** test_* ();
    public static ** test_* (**);
}
但这仍然行不通。
public static void test_destroy (final android.content.Context context)
private void dropTables (final sqliteDatabase db)
刚刚从代码删除。而且我不知道为什么。 如何将其正确用于通配符模式?     

解决方法

        解决方法是
-keepclassmembers class com.XXX.**.* {
    *** test_* (...);
}
    ,        做到这一点的另一种方法是使用注释(即番石榴的@VisibleForTesting)来标记这些方法。然后,在proguard中,您可以使所有入口点和成员都带有该注释:
-keep @com.google.common.annotations.VisibleForTesting class *

-keepclasseswithmembers class * {
  @com.google.common.annotations.VisibleForTesting *;
}
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。