Частота сбоев приложения для iOS - уровень фонового шума? - PullRequest
15 голосов
/ 27 марта 2012

Мы только что выпустили приложение с использованием фреймворка Crittercism. Через некоторое время у нас было около 125 тыс. Загрузок приложений и 95 сбоев - частота менее 0,08%.

Один сбой произошел 19 раз, еще 10, но остальные 41 произошли 3 или менее. Если бы были какие-то серьезные проблемы с приложением, я бы ожидал увидеть значительно больше сбоев в определенных областях, поэтому я доволен уровнем цифр, которые я вижу.

Беглый взгляд показывает, что многие из них являются сбоями низкого уровня, не вызванными явно, но ошибкой программиста.

Примеры

  • Самая большая группа связана с CFNetworking в фоновом потоке, в то время как статический HTML-код отображается в веб-представлении основного потока.
  • Есть некоторые ошибки KVO в free_list_checksum_botch

Но у меня вопрос , в достаточно сложной ОС (в данном случае iOS), с достаточно сложным приложением (которое, я думаю, есть), должно I, как Разработчик, ожидаете увидеть этот уровень «фонового шума»?

Стоит ли ожидать сбой одного приложения на 1-2000 загрузок только потому, что ОС не идеальна? У кого-нибудь еще был подобный опыт?

(я не ищу решения для самих ошибок .. спасибо!)

Ответы [ 5 ]

6 голосов
/ 31 мая 2012

На самом деле еще один выстрел в темноте нетехнического ответа может быть. Какую дополнительную ценность это принесет вам (разработчику) продолжать заниматься этой конкретной проблемой, когда вы могли бы тратить больше времени и усилий либо на разработку дополнительных возможностей в своем инструменте, либо полностью на другой инструмент.

Если ваше приложение просто для развлечения и обучения, то я мог бы усмотреть в этом вопросе забавное приключение. С точки зрения бизнеса, сколько времени вы тратите и рассчитываете, что проблема в 0,08% - продать достаточно (больше) копий, чтобы ваши усилия стоили того.

Аналогично было бы, какие требования необходимы, а какие - желания? Просто пища для размышлений. Я знаю, что многие компании, в которых я работал, не видят смысла в том, чтобы подчеркивать столь низкую доходность.

6 голосов
/ 30 мая 2012

Crittercism провел анализ сбоев приложений.Их отчет был основан на сбоях Android и iOS.

Они пришли к выводу, что самые популярные приложения на iOS дают сбой 0,51% запусков приложений.Так что @Ashley Mills, если вы получаете 0,08% ... у вас все хорошо.(в любом случае, я думаю, что мои цифры верны).

Не знаю, где находится исходный отчет, но я читаю его здесь:

Частота сбоев в приложении Forbes, проведенная Crittercism

4 голосов
/ 27 марта 2012

Я разработчик iOS, работаю профессионально. Я воспринимаю это лично, когда мои приложения рушатся, потому что это не тот пользовательский опыт, к которому я стремился. Авария - плохой пользовательский опыт. Один сбой на пользователя - это слишком много. Авария - это ошибка.

При этом я определенно видел журналы сбоев, которые кажутся неразрешимыми, потому что они, похоже, указывают на проблему в глубине SDK. Однако я узнал, что, скорее всего, в моем собственном коде есть что-то, что в конечном итоге и является причиной.

Есть много странных сбоев, которые могут быть вызваны проблемами синхронизации между потоками или блоками или просто потому, что я сделал что-то не так. Совсем недавно я обнаружил, что я делаю что-то совершенно не так в отношении сложной таблицы, которую я обновлял. Журналы сбоев для этой проблемы не предоставили почти никаких подсказок, за исключением общей области кода, на которую я мог бы взглянуть. Когда я начал копаться в коде и начал экспериментировать, я осознал свою ошибку, которая в конечном итоге была проблемой синхронизации, вызванной, как мне показалось, умным разделением активности основного потока и не основного потока. В этом случае я был слишком умен для своего же блага. : -)

Итак, подведем итог:

  • Один сбой - это слишком много сбоев и, в конечном итоге, плохой пользовательский опыт.
  • Часто причудливые низкоуровневые сбои являются результатом сложности вашего собственного кода и, возможно, проблем с синхронизацией.

Наконец, я предлагаю рассмотреть этот вопрос:

  • Готовы ли вы разозлить или уволить некоторых из ваших пользователей просто потому, что они попадают в 0,08% пользователей, испытывающих сбои?

Пища для размышлений. : -)

2 голосов
/ 01 мая 2012

Я профессиональный разработчик для iPhone, и то, что я видел, это то, что частота сбоев - это не то, что расстраивает пользователей, а воронка того, как происходят сбои.

Если они с перебоями, с вами обычно все в порядке, проблема начинает возникать, когда один пользователь испытывает конкретный сбой несколько раз. Это недопустимо.

Стремление устранить каждую аварию - это всегда хорошо, но во многих случаях это просто нереально, вам нужно решить, где лучше всего провести время. Если у вас есть возможность переделать часть потока UX или исправить прерывистый сбой, вам нужно решить, какой из них принесет больше пользы.

Важно помнить, что если вы решите не устранять сбой, который происходит в 0,08% случаев, вы не списываете пользователей, которые испытывают его, если они не испытывают его несколько раз.

0 голосов
/ 27 марта 2012

Хотя это и не технический ответ, на моем iPhone я бы лично ожидал, что приложение, которое я использую, часто падает, по крайней мере, один или два раза в год. Я бы сказал, что этот уровень вполне приемлем, и, поскольку в первый раз, когда я запускаю его, я нахожу, что они гораздо сильнее, я полагаю, что этого следует ожидать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...