Android 如何看待用户提出的无法从我方模拟的问题

Android 如何看待用户提出的无法从我方模拟的问题,android,ios,xcode,debugging,Android,Ios,Xcode,Debugging,我的客户提出了一个关于我们的应用程序的问题,即应用程序在长时间使用时速度变慢,但我们无法模拟问题,因为我们不在他们的实际工作环境中,我们无法在知道错误之前解决问题。任何人都可以提供帮助?如果这是一个“随着时间的推移”而引起的问题,你应该寻找任何你可能正在运行和重复的任务。 您应该检查您使用的不同类型的功能。 例如,如果您的应用程序正在使用本地数据库: 查找未关闭的游标 I/O工作 如果您正在使用动画: 查找跳过的帧 复杂视图层次结构 如果使用后台任务或线程: I/O工作 未加工的螺纹

我的客户提出了一个关于我们的应用程序的问题,即应用程序在长时间使用时速度变慢,但我们无法模拟问题,因为我们不在他们的实际工作环境中,我们无法在知道错误之前解决问题。任何人都可以提供帮助?

如果这是一个“随着时间的推移”而引起的问题,你应该寻找任何你可能正在运行和重复的任务。 您应该检查您使用的不同类型的功能。 例如,如果您的应用程序正在使用本地数据库:

  • 查找未关闭的游标
  • I/O工作
如果您正在使用动画:

  • 查找跳过的帧
  • 复杂视图层次结构
如果使用后台任务或线程:

  • I/O工作
  • 未加工的螺纹
  • 增加线程数
如果使用网络和Web服务:

  • 服务器数据库出现问题
  • 连接问题
  • Proxys
您还可以使用Firebase+Crashlytics之类的工具来查看是否有任何警告提示,但会以静默方式处理


提供有关应用程序及其功能的更多信息可能有助于制定更准确的解决方案。

减缓应用程序速度的一个常见原因是内存泄漏

在iOS上,您可以激活目标上的
内存管理
标志并监视日志,您还可以使用Xcode内存图和仪器泄漏工具来检测泄漏

在安卓系统上,你可以使用一些工具,比如在发生泄漏时收到通知


一旦检测到泄漏,您可以检查代码以识别源代码并更好地管理内存。

@axierjhtjz提到了许多好的起点。 它是否同时出现在iOS和Android、特定设备和供应商上

如果它主要在一个平台(Android/iOS)上,在不同的设备上,并且主要的抱怨是随着时间的推移速度变慢,我会怀疑以下几点:

  • 内存泄漏(可能是UI、碎片)
  • 数据持久数据随时间增加或/或随时间增加更多IO操作
  • 如果您无法在客户站点上调试该问题,我建议您通过相关参数和日志添加远程实时监控功能


    我们过去使用的一个好工具是。也许他们有免费试用

    嗨,Axier,给你真实的场景吧。。。我们的客户总是抱怨我们的应用程序在使用数天/数小时后速度变慢,我们为他们提供的临时解决方案是关闭该应用程序。但这不是一个好的解决方案,我们仍然无法修复,我们已经多次检查了代码。应用程序做什么?HTTP呼叫、I/O、照片等,。。。?