Постоянство iTunes TrackID и DatabaseID

Я использую COM-объект для чтения библиотеки iTunes (версия 11, Windows). Я вызываю функцию GetITObjectByID для извлечения набора треков из списка, сохраненного в текстовом файле в предыдущем сеансе iTunes.

GetITObjectByID(SourceID, PlaylistID, TrackID, DatabaseID)

Я хотел бы знать, в какой степени эти идентификаторы являются постоянными? Если они меняются со временем, какие события могут вызвать эти изменения? Это поможет мне оценить, насколько надежны сохраненные идентификаторы и нужно ли мне обновлять базу данных идентификаторов при каждом выполнении моего приложения.

Спасибо.


person JnLlnd    schedule 15.01.2014    source источник


Ответы (1)


Согласно документации iTunes COM, все идентификаторы действительны только для сеанса, в котором они получены: «IITObject однозначно идентифицирует источник, плейлист или дорожку в iTunes, используя четыре отдельных идентификатора. Это идентификаторы времени выполнения, они действительны только во время текущий экземпляр iTunes запущен».

person dwpj65    schedule 13.02.2014
comment
Можете ли вы поделиться ссылкой на документ, содержащий эту цитату? - person TheDude; 13.02.2014
comment
Это правда. В доке не видел. RTFM... Я знаю... Тем временем я нашел, как получить трек, используя постоянные идентификаторы, которые остаются действительными. См. [stackoverflow.com/questions/21058852/ вопрос), особенно последний ответ. - person JnLlnd; 14.02.2014
comment
Я не видел ссылки на документ в течение некоторого времени, хотя это CHM (скомпилированный гипертекстовый файл) под названием ITunesCOM.CHM. К сожалению, похоже, что Apple требует, чтобы вы зарегистрировались для получения идентификатора разработчика для этого контента на данный момент, если он все еще доступен. - person dwpj65; 14.02.2014