我使用DexGuard,用这个在发布模式下构建项目:
proguardFile getDefaultDexGuardFile('dexguard-library-release-aggressive.pro')
一切都很好,但现在我需要阻止另一个类进行加密,我添加了行以不加密ExampleBuilder:
-verbose
# do not encrypt API package
-keep public class com.justexample.api** {
public protected private *;
}
#these 3 lines below I added
-keep public class com.justexample.ExampleBuilder.** {
public protected private static *;
}
-repackageclasses com.justexample
现在,当我尝试使用库时,我得到一个错误:
error: attribute 'android:name' in <service> tag must be a valid Java class name.
Message{kind=ERROR, text=error: attribute 'android:name' in <service> tag must be a valid Java class name.
生成的清单(来自dexguard影响的AAR),其中是此错误,片段中是错误:
<service
android:name="com.justexample.services.゚"
android:exported="false" />
android:name应该有表示活动的类路径的引用。它不能包含任何特殊字符或空格。
我相信你在Android系统下的清单:姓名标签u保留了额外的空间和句号(.)
尝试将其移除并检查
<service
android:name="com.justexample.services"
android:exported="false" />
如果您的服务类有一个特定的名称,请完整地提及它,并在下面进行检查
<service
android:name="com.justexample.services.SampleIntentService"
android:exported="false" />
更新:从你的评论,
从Dexgaurd上拆下此管路并检查
-repackageclasses com.justexample
我使用DexGuard v7.3.18,我想加密存储在中的JSON文件,我在类中访问这些文件,就像这样: 我配置了具有各种选项,如: 但是两者都没有帮助加密JSON文件。根据DexGuard文档: -EncryptAssetFile[file_filter]指定应加密的Android资产文件。资产文件存储在资产目录中,可以包含任何数据。模糊处理步骤可以自动加密它们,并确保它们在运行时被动态解密。为
我有一个类列表,其中包含事件名称、时间戳和持续时间(timespan)。有许多重复的事件名称。我想通过事件名称合并它们,并添加它们的持续时间,并保留最早的时间戳,除非事件具有特定的名称。即,删除重复的事件名称,为相似的事件名称添加持续时间,并保留偶数名称的最早时间戳。 有更好的方法吗?可能是用LINQ吗? 下面是我尝试过的,它似乎没有正确地合并(仍然有重复的但更少) 类: 我的尝试: 例如,如果a
问题内容: 如何合并列表列表? 进入 如果我可以在合并列表之前在每个项目的开头和结尾添加一个值(例如html标签),那就更好了。 即,最终结果将是: 问题答案: 要串联列表,可以使用 要添加HTML标签,您可以使用列表推导。
我使用dexGuard来混淆我的应用程序,但当我这样做时,我在运行应用程序时崩溃了。下面是堆栈跟踪。 这是我从ACRA lib初始化方法得到的,因为我们在它里面有getAnnoming方法。我已经使用了和 但没有任何运气... 有人知道吗? 谢谢,吉姆。
问题内容: 所以我正在尝试bcrypt。我有一类(如下所示,该类来自http://www.firedartstudios.com/articles/read/php- security-how-to-safe-store-your- passwords ),其中包含3个功能。第一个是生成随机的Salt,第二个是使用第一个生成的Salt生成哈希,最后一个是通过将提供的密码与哈希密码进行比较来验证所提
问题内容: 球衣1.6可以产生: 但是不能用: 给出错误: 这样可以防止使用HTTP状态代码和标头。 问题答案: 可以通过以下方式在响应中嵌入: 客户必须使用以下行来获取: