Проверяете ли вы CardIOActivity.canReadCardWithCamera(this) в своей деятельности onResume() или что-то подобное? Card.io нуждается в некоторой статической инициализации. Если его можно запустить раньше, это не обязательно должно происходить, когда пользователь ждет.
persontomwhippleschedule12.06.2014
comment
@timwhipple, спасибо, сэр. Это значительно улучшает открытие активности в портретном режиме, но по какой-то причине это все еще очень медленно при открытии активности в ландшафтном режиме. Есть идеи, Том?
- personDick Lucas; 13.06.2014
comment
Присутствует ли такая же разница между альбомной и портретной ориентацией на других устройствах? Как насчет примера приложения на Nexus 10?
- persontomwhipple; 13.06.2014
comment
На других устройствах ведет себя нормально. И пример приложения отлично работает в портретной и альбомной ориентации.
- personDick Lucas; 20.06.2014
SampleApp действительно испытывает те же проблемы с производительностью, просто делает это при запуске приложения. CardIOActivity.canReadCardWithCamera(this) может занять до 4 секунд на Nexus 10. Я повозился и обнаружил, что вызов CardIOActivity.canReadCardWithCamera(this) в AsyncTask значительно улучшает взаимодействие с пользователем. Я рекомендую запускать AsyncTask, когда пользователь входит в действие непосредственно перед тем, как ему будет предложено отсканировать карту. Еще раньше было бы идеальнее, но становится сложнее управлять.
В случае, если пользователь попытается отсканировать карту до возврата этого метода, Card.io изящно вернется к ручному вводу.