当前位置: 首页 > 知识库问答 >
问题:

Dexguard不加密类,并对清单产生问题

苗学民
2023-03-14

我使用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" />

共有1个答案

马银龙
2023-03-14

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状态代码和标头。 问题答案: 可以通过以下方式在响应中嵌入: 客户必须使用以下行来获取: