首页 > 解决方案 > Dotfuscator 会混淆独立程序集,但不会混淆 APK 存档

问题描述

我开始在我的 Xamarin.Forms 构建过程中使用带有 Visual Studio 2019 集成的 Dotfuscator Community(全新下载)。

我做了下面列出的步骤: 抢占式

当我构建时,我会从 Dotfuscator 获得正确的构建消息。

我的问题是

  1. 虽然 Dotfuscator 混淆了共享项目的生成程序集,我可以通过在 Release 文件夹中使用 ILSpy 打开 .dll 文件来验证,但生成的 APK 中的“相同”dll 没有被混淆,我可以通过解压缩 APK 并打开来验证使用 ILSpy 共享项目 .dll 程序集。
  2. 我的另一个问题是,preemptive.com 上的 - 否则非常好和详细 - Xamarin.Forms 混淆过程描述没有详细说明 APK 存档过程,特别是关于将带有混淆程序集的 APK 放置在哪里(*)以及如何确保 Visual Studio 中的“存档”命令实际使用正确的 APK 文件。
  3. 我没有看到指南中提到的任何智能混淆器报告(Renaming.xml 仍在文件夹中)

(*) APK 文件夹:Visual Studio 有两个文件夹放置来自相同构建配置的 APK:

  1. 这似乎是直接从“档案”菜单打开的主要位置。 C:\Users\Me\AppData\Local\Xamarin\Mono for Android\Archives\2019-08-27\Ch9.Android 8-27-19 6.00 PM.apkarchive
  2. 这是指定用于混淆的构建配置的文件夹: c:\PROG\Ch9\Ch9\Ch9.Android\bin\DotfuscatedGPlayRelease\
  3. Edit1:我刚刚确认上述位置的两个APK在内容上是相同的(Totalcommander comapre)
  4. Edit2:我刚刚重新检查/确认两个相同 APK-s(如上所述)内的 .dll 文件(程序集)与文件c:\PROG\Ch9\Ch9\Ch9.Android\bin\DotfuscatedGPlayRelease\夹内的独立混淆 .dll 文件不同

_编辑 2019.08.28___________________

我尝试在 Visual Studio 2017(15.9.14,是的,这是一个较旧的版本)上运行 Dotfuscator 准备的构建配置,并且可以确认“存档”命令准备的 APK 包包含 dotfuscated 程序集。所以在这一点上,VS19 的归档过程似乎绕过了 dotfuscated 程序集,而 VS17 在这方面工作正常

标签: dotfuscator

解决方案


错误行为已得到纠正,请参阅评论部分。


推荐阅读