1

我已经在应用程序中实现了 card.io,并且打开信用卡扫描活动 (CreditIOActivity) 时的性能在大多数设备上都可以快速打开。但是在运行 Android 4.4.2 的 Nexus 10 上,从我的应用程序调用扫描活动可能需要 5 秒才能加载。尽管在 card.io 随其 SDK提供的示例应用程序中不会发生这种长时间的延迟。我认为这可能是一个内存问题,导致从我的应用程序中打开时加载时间缓慢,但这并不能解释为什么性能与其他设备上的示例应用程序几乎相同。

非常感谢所有帮助。

4

2 回答 2

2

您是否正在检查CardIOActivity.canReadCardWithCamera(this)您的活动onResume()或类似活动?card.io 需要一些静态初始化。如果可以提前触发,则不必在用户等待时发生。

于 2014-06-12T20:15:53.943 回答
1

SampleApp 确实遇到了同样的性能问题,它只是在应用程序启动时出现。 CardIOActivity.canReadCardWithCamera(this)在 Nexus 10 上最多可能需要 4 秒。我摆弄了一下,发现调用CardIOActivity.canReadCardWithCamera(this)AsyncTask 极大地改善了用户体验。我建议当用户在被要求扫描卡片之前立即进入活动时启动 AsyncTask。甚至更早会更理想,但变得更难管理。

如果用户在此方法返回之前尝试扫描卡片,Card.io 会优雅地退回到手动输入。

于 2014-08-19T17:34:19.803 回答