Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 使用带匕首的proguard 1.2.2_Android_Proguard_Dagger - Fatal编程技术网

Android 使用带匕首的proguard 1.2.2

Android 使用带匕首的proguard 1.2.2,android,proguard,dagger,Android,Proguard,Dagger,有没有捷径(我知道,我知道,我不应该要求一个神奇的子弹)让匕首1.2.2与proguard一起工作 我们现在遇到了一些问题,我们知道我们必须转到Dagger 2.0,以便让proguard工作,从这个问题开始 然而,ObjectGraph在Dagger 2.0中已经不存在了,所以在我们坐下来进行中等规模的重构之前,我只是想知道是否有任何忽略规则可以放在我的proguard文件中,以便在超短期内编译它 感谢Dagger,您需要保留生成的类: -keep class **$$ModuleAdapt

有没有捷径(我知道,我知道,我不应该要求一个神奇的子弹)让匕首1.2.2与proguard一起工作

我们现在遇到了一些问题,我们知道我们必须转到Dagger 2.0,以便让proguard工作,从这个问题开始

然而,ObjectGraph在Dagger 2.0中已经不存在了,所以在我们坐下来进行中等规模的重构之前,我只是想知道是否有任何忽略规则可以放在我的proguard文件中,以便在超短期内编译它


感谢Dagger,您需要保留生成的类:

-keep class **$$ModuleAdapter
-keep class **$$InjectAdapter
-keep class **$$StaticInjection
不幸的是,您还需要从项目中保留相应的基类:

-keep class com.example.SomeClass
这样,Dagger仍然可以组合相应的类对。您可以通过在项目的gen目录中列出生成的类(例如com/examples/SomeClass$$moduledapter.class)来计算基类

最后,您需要保留一个匕首类:

-keep class dagger.Lazy

对于Dagger,您需要保留生成的类:

-keep class **$$ModuleAdapter
-keep class **$$InjectAdapter
-keep class **$$StaticInjection
不幸的是,您还需要从项目中保留相应的基类:

-keep class com.example.SomeClass
这样,Dagger仍然可以组合相应的类对。您可以通过在项目的gen目录中列出生成的类(例如com/examples/SomeClass$$moduledapter.class)来计算基类

最后,您需要保留一个匕首类:

-keep class dagger.Lazy
您可以使用这个利用Java注释处理的库。

您可以使用这个利用Java注释处理的库

#-dontobfuscate
-keepnames class your.package.**
最大的问题是Dagger1.2.2创建了类似于“method/your.package.YourClass”的字符串,这些字符串不会被-adaptClassString更改

这将允许您在构建过程中运行模糊处理,以及其他人添加的关于在其他答案中保留类的内容

您不会混淆类名,但字段和方法会混淆。总比没有强!或者,您可以在任何地方禁用模糊处理,只需使用收缩

最大的问题是Dagger1.2.2创建了类似于“method/your.package.YourClass”的字符串,这些字符串不会被-adaptClassString更改

这将允许您在构建过程中运行模糊处理,以及其他人添加的关于在其他答案中保留类的内容

您不会混淆类名,但字段和方法会混淆。总比没有强!或者,您可以在任何地方禁用模糊处理,只需使用收缩