如何调试已发布的本机应用程序(C ++)?

问题描述 投票:1回答:2

我需要在Google Play中发布使用QT / C ++制作的应用。在Google Play中开发和测试测试版时,我使用了调试版本和大量日志来发现错误。我要么通过adb连接到测试人员的设备,要么他们发给我一个存储在系统“下载”目录中的日志。如果我的应用程序发布,我担心几个问题:

  1. 我觉得必须发布一个发布版本。我是否会在Google Play控制台中为发布版本获取本机应用的核心转储?如果我这样做,恐怕没有调试信息就没用了。
  2. 发布调试版本是个坏主意吗?是否对本机代码或二进制文件有任何混淆支持?如果是这样,它是否会帮助我仍然获得核心转储和/或调试日志,同时防止应用程序被逆向工程?
  3. 我正在考虑记录到一个文件并捕获SIGSEGV,使用http POST请求将日志文件发送到我们的服务器。您对此解决方案有什么缺点/问题?
  4. 您建议使用哪些其他技术有助于追踪和修复已发布应用中的问题?
android debugging google-play publishing
2个回答
0
投票

您可以使用其他技术或功能(如firebase或fabric)进行崩溃报告以及其他不需要发送日志的事情。每当发生任何崩溃时,他们也会提供日志

为了更好的性能,禁用生产构建中的所有日志


0
投票

解决方案:1:是的,您可以通过将所有调试日志更改为错误日志(Log.d() - > Log.e())来执行此操作。因为调试日志在发布版本中不可见,但您可以在任何变体中看到错误日志。希望它会有所帮助。

解决方案2:您可以使用Fabric并查看所有日志到Fabric帐户。这可以通过使用它的Answer module来完成。

注意:我在实时项目中使用了两种方案,但它们运行正常。

© www.soinside.com 2019 - 2024. All rights reserved.