Как “количество Представления” лучше всего реализовано?

Когда вы устанавливаете APK через Play Store или через adb на телефон, встроенный носимый APK автоматически устанавливается на носимый.

Если вы разрабатываете и хотите поэкспериментировать с вещами, или если вы делаете отладочные сборки, которые не поддерживают встроенный APK, вам нужно будет использовать adb uninstall как для телефона, так и для носимых устройств.

Вы можете использовать устройства adb для обнаружения названий подключенных устройств, а затем adb -s, а затем имя устройства. Вы используете внутреннее имя пакета с командой удаления.

22
задан nopole 3 June 2009 в 23:33
поделиться

4 ответа

На мой взгляд, у вас есть несколько вариантов.

Файлы cookie

Вы можете сохранить файл cookie в браузере пользователя для каждой страницы, на которой вы регистрируете просмотры. Проверьте наличие этих файлов cookie и не t записывать просмотр, если cookie уже существует.

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

С другой стороны, вам не нужно беспокоиться о хранении потенциально миллионов / миллиардов строк табличных данных.

База данных

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

Таким образом, у вас будет, например, таблица со следующими столбцами,

  • ArticleID (Внешний ключ)
  • UserID (Внешний ключ)
  • Дата

Дата будет полезна по нескольким причинам.

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

Если ваше приложение станет популярным в этой ситуации, вам придется иметь дело с последствиями для хранения. Я запускаю популярное приложение Facebook, в результате которого каждый день добавляется более 100 000 строк просмотра. На самом деле, если ваше приложение станет настолько популярным, что станет проблемой, вам придется решать гораздо более серьезные проблемы.

11
ответ дан 29 November 2019 в 05:21
поделиться

Краткий ответ: это зависит!

  • Это действительно зависит от того, насколько точен вам нужно, чтобы ваше количество просмотров было, допустимо ли, чтобы один человек мог быть зарегистрирован два или три раза?
  • Это зависит от того, для чего вы собираетесь использовать данные. Если вы хотите делать другие аккуратные вещи с данными (статистика, список последних представлений и т. Д.), Вы можете рассмотреть возможность сохранения всех отдельных представлений в базе данных. Это может привести к огромной таблице, так что вам нужно это продумать, прежде чем реализовывать.

Я ранее использовал файлы cookie в сочетании с базой данных в памяти для хранения индивидуальных представлений (по очевидным причинам я сохранил фактическое количество просмотров в таблице базы данных, сохраненной на диске).

4
ответ дан 29 November 2019 в 05:21
поделиться

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

Я не уверен, считает ли SO просмотры гостей. Думаю, я мог бы проверить, но уже поздно.

1
ответ дан 29 November 2019 в 05:21
поделиться

Попробую дать ответ с функциональной точки зрения.

count просмотров на пользователя - для зарегистрированных пользователей. для анонимных пользователей - за сеанс.

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

просмотр плаката во время создания не должен засчитываться

, вы можете себе представить, что это будет проще, но я попытался придумать идеальное решение.

0
ответ дан 29 November 2019 в 05:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: