【问题标题】:Proguard for android obfuscation用于 android 混淆的 Proguard
【发布时间】:2016-03-28 01:34:17
【问题描述】:

有没有一种简单的方法来处理这个而不是更改包名称。例如:我有以下 10 个包名,我希望只对其中一个包进行模糊处理,并保留其他包的其余部分。

  • com.myOrg.myApp.pkgNameA
  • com.myOrg.myApp.pkgNameB
  • com.myOrg.myApp.pkgNameC
  • com.myOrg.myApp.pkgNameD
  • com.myOrg.myApp.pkgNameE
  • com.myOrg.myApp.pkgNameF
  • com.myOrg.myApp.pkgNameG
  • com.myOrg.myApp.pkgNameH
  • com.myOrg.myApp.pkgNameI
  • com.myOrg.myApp.pkgNameJ

我希望混淆“com.myOrg.myApp.pkgNameA”并保留其他包。我目前在我的 proguard 文件中列出了包 B-J 以避免混淆它。如果我输入“com.myOrg.myApp.**{*;}”,这也不会混淆“com.myOrg.myApp.pkgNameA”。

我的 proguard 文件的一部分:

-keep class com.myOrg.myApp.pkgNameB.** { *; }
-keep class com.myOrg.myApp.pkgNameC.** { *; }
-keep class com.myOrg.myApp.pkgNameD.** { *; }
-keep class com.myOrg.myApp.pkgNameE.** { *; }
-keep class com.myOrg.myApp.pkgNameF.** { *; }
-keep class com.myOrg.myApp.pkgNameG.** { *; }
-keep class com.myOrg.myApp.pkgNameH.** { *; }
-keep class com.myOrg.myApp.pkgNameI.** { *; }
-keep class com.myOrg.myApp.pkgNameJ.** { *; }

有什么简单的方法让 proguard 文件知道保留所有包,除了需要混淆的包?

【问题讨论】:

    标签: android proguard obfuscation android-proguard


    【解决方案1】:

    你能在类名上使用否定运算符吗?

    -keep class !com.myOrg.myApp.pkgNameA.** { *; }
    

    【讨论】:

      猜你喜欢
      • 2011-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多