【问题标题】:Testing the "proguarded" application测试“proguarded”应用程序
【发布时间】:2013-05-05 16:03:58
【问题描述】:

首先 - 我并不想真正混淆我的代码,只是优化和缩小。

我查看了 android 开发者网站,查看了 proguard 文档,并在 Google 上搜索了几个小时。但我仍然找不到明确的答案 - 我如何实际测试我的应用程序在被“保护”后是否继续工作?

有一种方法可以导出它,手动安装到模拟器上,然后运行,看看它是否有效,修复某些东西(有时在 proguard 配置中,有时在代码中),重新导出,重新安装。这有点乏味。

缩小和优化的应用程序与我测试过的应用程序完全不同。在我实际测试它之前,我不能确定它是否能在这些更改下正常工作。无法实际测试我要发布的应用程序意味着我正在发布未经测试的应用程序。这不是我想要的。

虽然我可以远离 proguard,但它确实显着减小了我的应用程序的大小,这是我不能忽视的。

编辑:我现在明白,要测试应用程序,我只需对导出的包运行验收测试。但是还有一个问题——如何测试我的 proguard 配置?

【问题讨论】:

    标签: android proguard


    【解决方案1】:

    与您在使用 ProGuard 处理它之前对其进行测试的方式相同。您会发现,一旦您的配置正确,最终结果将只需要在部署之前进行一次最终测试即可确认。

    但我会混淆,这会大大减少大小并避免优化,这些年来我已经多次引入错误。

    【讨论】:

    • “最后一次测试”实际上可能意味着通过“一长串测试”进行“最后一次运行”,如果需要对具有中等复杂性的应用程序进行全面覆盖的话。但是 QA 在要发布的候选版本上正式完成的,而不是开发/调试版本,所以这就是答案。
    • 我更担心“保护”过程引入的变化。也就是说,来自优化的那些,因为我宁愿优化我的应用程序。并且实际上尽可能积极。
    • 另外,“正确配置”也不是一件容易的事。测试 proguard 配置是这里的另一个问题。
    • @aragaer - 优化引入的问题正是您需要测试包含这些的发布版本的一个示例。
    • 现在不是“优化引入的问题”,更像是“不正确的proguard配置引入的问题”,比如不保留一些实际使用的类。
    猜你喜欢
    • 1970-01-01
    • 2018-07-13
    • 2010-11-01
    • 2023-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多