2012-06-19 2 views
5

Мне нужно получить уникальный идентификатор экземпляра активности Android. Я хотел бы взять строку, которую оператор активности записывает в журнал (например: ActivityManager: Тайм-аут активности для HistoryRecord {450495a0 ...}), но я не знаю, как его получить.Уникальный идентификатор активности андроида

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

+0

Определите домен для уникальности. – m0skit0

+0

Извините, но я не знаю, что вы имеете в виду. – anel

+1

Уникальный где? Уникально в устройстве? Уникальный на Земле? Уникальный во вселенной? – m0skit0

ответ

7

Возможно, вы можете использовать hashCode Activity.

+0

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

0

hashCode() метод Activity, он возвращает уникальный идентификатор экземпляра андроида деятельности, но getTaskId() не может возвращать уникальное значение

1

где каждый в проекте:

MainActivity.class.hashCode(); 

в деятельности

this.hashCode(); 

Вы можете получить hashCode из контекста

1

Я знаю, что этот вопрос немного устарел, но мне это нужно по некоторым причинам.

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

Смежные вопросы