嗨,我正在用Javacv开发一个应用程序.该应用程序可以正常工作,直到我保护构建.进行保护后,该应用程序将在jni函数调用的位置崩溃.
-dontshrink
-dontoptimize
-dontpreverify
-dontwarn android.support.**
-keep class com.googlecode.javacv.**
-dontwarn com.googlecode.javacv.**
-keep class com.googlecode.javacpp.**
-dontwarn com.googlecode.javacpp.**
-keepclasseswithmembernames class * {
native <methods>;
}
-keepattributes *Annotation*
我找不到解决我问题的答案.我收到NoSuchMethodError.有人帮我.我正在使用最新版本的Javacv库.
解决方法:
您必须保留本机方法(您已经在做)以及从本机代码调用的Java方法.
您可以像这样保留所有javacv和javacpp方法:
-keep class com.googlecode.javacv.**{ *; }
-keepclassmembers class com.googlecode.javacv.** {
<methods>;
}
-keep class com.googlecode.javacpp.**{ *; }
-keepclassmembers class com.googlecode.javacpp.** {
<methods>;
}
另外,如果您想减少构建输出中的警告:
-dontwarn com.googlecode.javacv.**, com.googlecode.javacpp.**
-dontnote com.googlecode.javacv.**, com.googlecode.javacpp.**