Android card.io字符串不随proguard更改

Android card.io字符串不随proguard更改,android,obfuscation,proguard,localizable.strings,card.io,Android,Obfuscation,Proguard,Localizable.strings,Card.io,我对card.io上的混淆有问题 我正在使用card.io官方页面上给出的标记更改strings.xml上的字符串,在调试时,应用程序使用更改后的字符串。但当我用proguard导出签名的apk时,应用程序使用了自己的字符串。你能帮我吗?我错过了什么 这是我的proguard.cfg内容:(我使用示例应用程序的proguard文件。) -优化过程5 -dontusemixedcaseclassnames -DontskipnonPublicLibraryClass -不要翻转 -冗长的 -优化!

我对card.io上的混淆有问题

我正在使用card.io官方页面上给出的标记更改strings.xml上的字符串,在调试时,应用程序使用更改后的字符串。但当我用proguard导出签名的apk时,应用程序使用了自己的字符串。你能帮我吗?我错过了什么

这是我的proguard.cfg内容:(我使用示例应用程序的proguard文件。)

-优化过程5
-dontusemixedcaseclassnames
-DontskipnonPublicLibraryClass
-不要翻转
-冗长的
-优化!代码/简化/算术,!字段/*,!类/合并/*
-keep public class*扩展android.app.Activity
-keep public class*扩展android.app.Application
-keep public class*扩展了android.app.Service
-keep public class*扩展了android.content.BroadcastReceiver
-keep public class*扩展了android.content.ContentProvider
-keep public class*扩展了android.app.backup.BackupAgentHelper
-keep public class*扩展了android.preference.preference
-KeepClassSwithMemberNames类*{
本地人;
}
-keepclassswithmembers类*{
public(android.content.Context、android.util.AttributeSet);
}
-keepclassswithmembers类*{
public(android.content.Context,android.util.AttributeSet,int);
}
-keepclassmembers类*扩展了android.app.Activity{
public void*(android.view.view);
}
-keepclassmembers枚举*{
公共静态**[]值();
公共静态**valueOf(java.lang.String);
}
-keep class*实现android.os.Parcelable{
公开静态最终android.os.Parcelable$Creator*;
}
-保留类io.卡。**
-keepclassmembers类io.卡。**{
*;
}
##良好的做法,使您不会最终记录敏感信息。
#删除调试、详细和信息日志调用
-assumenosideeffects类android.util.Log{
公共静态***d(…);
公共静态***v(…);
公共静态***i(…);
##取消注释以删除警告和错误
#公共静态***w(…);
#公共静态***e(…);
}

这里是card.io中的Jeff

从版本3.1.0+开始,card.io不再支持strings.xml文件,因为SDK提供翻译。您使用的是最新版本吗


如果没有,请下载。您可以依靠设备语言设置自动调出正确的本地化,也可以使用CardIOActivity.EXTRA_language_或_locale强制设置区域设置(请参阅)

为了补充杰夫的回答,如果翻译有问题,我们想解决它!求你了


我还更新了示例应用程序以删除示例中的字符串。谢谢你告诉我们它已经过时了。

嗨,杰夫,我用的是3.0.6,下载的是3.1.1。我设置为tr-scanIntent.putExtra(CardIOActivity.EXTRA\u LANGUAGE\u或_LOCALE,“tr”)——感谢它改为tr,但应用程序使用了您的本地化字符串。我不能用地雷来改变。我用它作为“价值观”。我还需要补充什么吗?没有。这些值-*文件现在已过时。请让我们知道翻译是否需要修改!如果我可以改变我的自定义字符串,它会更好。但是,只要在设定的本地化条件下给出合适的结果,就足够了。谢谢
-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontpreverify
-verbose
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*

-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends android.app.backup.BackupAgentHelper
-keep public class * extends android.preference.Preference

-keepclasseswithmembernames class * {
    native <methods>;
}

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet);
}

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet, int);
}

-keepclassmembers class * extends android.app.Activity {
   public void *(android.view.View);
}

-keepclassmembers enum * {
    public static **[] values();
    public static ** valueOf(java.lang.String);
}

-keep class * implements android.os.Parcelable {
  public static final android.os.Parcelable$Creator *;
}

-keep class io.card.** 
-keepclassmembers class io.card.** {
   *;
}

## Good practice so that you don't end up logging sensitive info.
# Remove debug, verbose, and info Log calls
-assumenosideeffects class android.util.Log {
    public static *** d(...);
    public static *** v(...);
    public static *** i(...);
    ## Uncomment to remove warnings and errors as well
    # public static *** w(...);
    # public static *** e(...);
}