android - 如何调试已发布的本机应用程序 (C++)?
问题描述
我需要在 Google Play 中发布一个使用 QT/C++ 制作的应用程序。在 Google Play 中开发和测试 beta 时,我使用了调试版本和大量日志来发现错误。我要么通过 adb 连接到测试人员的设备,要么要求他们向我发送存储在系统“下载”目录中的日志。如果我的应用程序发布,我担心几个问题:
- 我觉得必须发布发布版本。我会在 google play 控制台中获得本机应用程序的核心转储版本吗?如果我这样做了,恐怕没有调试信息就没有用了。
- 发布调试版本是个坏主意吗?本机代码或二进制文件是否有任何混淆支持?如果是这样,它会帮助我在防止应用程序被逆向工程的同时获得核心转储和/或调试日志吗?
- 我正在考虑记录到文件并捕获 SIGSEGV,使用 http POST 请求将日志文件发送到我们的服务器。您认为此解决方案有哪些缺点/问题?
- 您会建议使用哪些其他技术来帮助追踪和修复已发布应用程序中的问题?
解决方案
您可以使用其他技术或功能(例如 firebase 或 fabric)进行崩溃报告和其他不需要发送日志的东西,每当发生任何崩溃时,它们也会提供日志
为了获得更好的性能,禁用生产构建中的所有日志
推荐阅读
- jpa - Crieria API 查询使用具有不存在关系的条件生成器.construct
- .net-core - 全局查询过滤器 - 这是如何工作的?
- android - 通过 Android Media Store 将图像存储在新文件夹中
- python - 形状不匹配、2D 输入和 2D 标签
- python - 如何检查此 CheckButton 的状态?
- python - 当一个是多级索引而另一个不是时,如何对具有不同形状的两个数据框的值求和
- javascript - 在 javascript 中调用的 C# 函数,它在页面加载之前执行。为什么?
- python - 为什么从我的自定义分布中抽取的随机样本不遵循 pdf?
- .htaccess - 在 .htaccess 中重写 URL - PHP
- javascript - 在电子内部使用时,Howler 抛出“解码音频数据失败”