how to use -assumenosideeffects class android.util.Log in my app

橙三吉。 提交于 2019-12-06 04:20:11

问题


I write -assumenosideeffects class android.util.Log in my app. but how to use this.

-assumenosideeffects class android.util.Log 
{
    public static int d(...);
    public static int v(...);
    public static int i(...);
    public static int e(...);
}

in proguard.cfg file. but not working.


回答1:


The manual says -assumenosideffects is "Only applicable when optimizing".

${sdk.dir}/tools/proguard/proguard-android.txt says: "Optimization is turned off by default. Dex does not like code run through the ProGuard optimize and preverify steps".

http://researcharea.blogspot.com/2012/04/assumenosideeffects-not-working-in.html




回答2:


According to @Sean Owen and @Yevgen Kulik.

In Gradle, use this:

proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'

Then add below to your proguard-rules.pro

-assumenosideeffects class android.util.Log { public * ; }



回答3:


Try -assumenosideeffects class android.util.Log { public * ; }. If that doesn't work, post why you think it isn't working.




回答4:


The below one works exactly

-assumenosideeffects class android.util.Log {

public static *** d(...);

}

Similarly you can use i, v and e.




回答5:


Forgot 'public' access modifier?

-assumenosideeffects public class android.util.Log


来源:https://stackoverflow.com/questions/6408574/how-to-use-assumenosideeffects-class-android-util-log-in-my-app

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!