Cocoa UI Analytics - PullRequest
       7

Cocoa UI Analytics

4 голосов
/ 21 декабря 2010

Я бы хотел отслеживать взаимодействие с пользователем внутри моего приложения OS X.Цель невероятно проста для начала:

  1. Отслеживать, сколько раз на конкретный элемент нажимают

Я использую Искра , чтобы включить приложениеобновлений и может отправить дополнительную информацию через метод делегата.Читайте: Отправка (на стороне клиента) и хранение (на стороне сервера) данных не проблема.

Мои вопросы:

  1. Как правильно прикрепить «крючок» к моемусистема для сохранения события (например, «нажал»)
  2. Где я могу хранить статистику на локальном компьютере?(увеличивает свойство plist?)
  3. Такая система уже существует?

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

Еще раз спасибо,

Дастин

Ответы [ 6 ]

1 голос
/ 11 апреля 2011

1 - Как я могу аккуратно прикрепить «крючок» в моей системе для хранения события (например, «нажал»)

Как уже упоминалось, выпросто добавьте небольшой фрагмент инструментария в респондент / перезвоните для событий, которые вы ищете.Вы также должны помнить о том, что вы используете, - ваша цель здесь - собрать обобщенные действия, а не информацию или контент, которые можно идентифицировать.Например, если вы создаете приложение для обработки текста, вы ищете:

Пользователь нажал кнопку «полужирный».

НЕ

Пользователь сделал текст«Я холодный пот Джека».полужирный.

2- Где я могу хранить статистику на локальном компьютере?(увеличивая свойство plist?)

Где-нибудь на диске, лично я бы не использовал plist, а скорее выделенный пользовательский файл.Соглашение OSX для конкретных файлов приложения: / Users / * имя пользователя * / Library / Application Support / * имя приложения *

Это пространство зависит от приложения и пользователяи отличное место для хранения файлов конфигурации и всего прочего, относящегося только к вашему приложению.

Но это только информация от одного пользователя, как вы сопоставляете эту информацию со многими разными пользователями?На многих разных компьютерах?

3 - такая система уже существует?

Да.Я строил UserMetrix , чтобы было легко подключаться к новым и существующим приложениям Какао с помощью клиента C или Objective-C.UserMetrix собирает статистику использования и ошибок по каждому пользователю, объединяет их и представляет их в виде простых веб-отчетов.

1 голос
/ 21 декабря 2010

Если вы установите представление в качестве методов первого респондента, таких как - (void) mouseDown: (NSEvent *), событие будет запущено при требуемых щелчках.

Это правда, однакоэто потребует от вас подкласса каждого отдельного элемента пользовательского интерфейса, который через некоторое время может стать довольно раздражающим, в зависимости от того, сколько элементов пользовательского интерфейса потребует отслеживания пользовательской аналитики.Тем не менее, я не могу придумать другой способ сделать это - я просто подумал, что упомяну предостережение, чтобы сделать это таким образом.

0 голосов
/ 13 марта 2014

How can I cleanly attach a “hook” into my system to store an event

Если an event является отправкой сообщения, это именно то, что я имел в виду, когда писал BCTrackingClass :

[...] структура, позволяющая Приложению анализировать свое собственное поведение, через журнал отправки сообщения.

Это все еще довольно в бета-версии (и я уже давно не касался этого, хотя вы заставляете меня хотеть вернуться к нему), но вы думаете, это то решение, которое вы ищете?

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

0 голосов
/ 13 марта 2014

вы можете проверить нашу аналитику DeskAppTrack.Это бесплатная и хорошая платформа для приложений MAC OS X. Это все для вас, и вы можете получить то, что хотите на их веб-сайте.

0 голосов
/ 21 декабря 2010

Если вы установите представление в качестве первого респондента, такие методы, как -(void)mouseDown:(NSEvent *)theEvent, будут срабатывать при требуемых щелчках.Все, что вы делаете, это увеличиваете вашу переменную / plist / что угодно в этом методе.Посмотрите на это .

0 голосов
/ 21 декабря 2010

Возможно, вы захотите воспользоваться аналитическим сервисом, таким как Flurry .

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