Я искал, чтобы перейти к OAuth для моего кода интеграции с Твиттером, и теперь, когда есть срок менее чем через 7 недель (см. Ссылку обратного отсчета), еще более важно перейти к OAuth. Я делал базовую аутентификацию, которая очень проста. К сожалению, OAuth, похоже, не то, что я бы собрал за пару часов.
http://www.countdowntooauth.com/
Так что я хочу использовать библиотеку. Я собрал следующий список.
- MPOAuth
- MGTwitterEngine
- OAuthConsumer
Я вижу, что в MPOAuth есть несколько замечательных функций с хорошим тестированием кода, но есть одна большая проблема. Это не работает. Пример проекта iPhone, который должен проходить аутентификацию в Twitter, вызывает ошибку, которую другие опознали и зарегистрировали как ошибку.
http://code.google.com/p/mpoauthconnection/issues/detail?id=29
Последнее изменение кода было 11 марта, и эта ошибка была подана 30 марта. Прошло более месяца, и эта критическая ошибка еще не исправлена. Итак, я перешел на MGTwitterEngine.
Я вытащил исходный код и загрузил его в Xcode. Сразу же я обнаружил, что есть несколько зависимостей, и в файле README нет четкого списка шагов для извлечения этих зависимостей и их интеграции с проектом, чтобы он успешно создавался. Я рассматриваю это как признак того, что проект недостаточно зрел для прайм-тайма. Я также вижу, что проект ссылается на 2 библиотеки для JSON, когда одной должно быть достаточно. Одним из них является TouchJSON, который хорошо сработал для меня, поэтому я снова не рекомендую полагаться на этот проект для своих приложений.
Я обнаружил, что MGTwitterEngine использует OAuthConsumer, который является одним из многих проектов OAuth, размещенных проектом OAuth в Google Code.
Похоже, OAuthConsumer - хороший выбор на первый взгляд. Он размещен в других библиотеках OAuth и содержит хорошую документацию. Я вытащил код, и он собирается без ошибок, но у него есть много предупреждений. И когда я запускаю новую функцию Build and Analyze в Xcode 3.2, я вижу 50 результатов анализатора. Многие из них помечены как потенциальные утечки памяти, которые могут привести к нестабильности в любом приложении, использующем эту библиотеку.
Кажется, что нет явного победителя, и мне нужно что-то предпринять до большого срока OAuth в Twitter.
Есть предложения?