они делают разные вещи, посмотрите на документы
addPreferencesFromResource: раздувает данный ресурс XML, а добавляет иерархию предпочтений к текущей иерархии предпочтений.
setPreferencesFromResource: раздувает данный XML ресурс, а заменяет текущую иерархию предпочтений (если есть) на иерархию предпочтений с корнем в ключе.
, поэтому, в основном, если у вас есть приложение, в котором вы хотите, чтобы пользователь видел измененные настройки после того, как он что-то сделал или даже изменил настройку, тогда вы должны использовать setPreferences, чтобы добиться изменения.
если ваше приложение большое и имеет различные функции, каждая со своими настройками, тогда addPreferences может помочь вам не писать сразу все предпочтения xml, а позволить органически расширять каждую функцию, имеющую свою собственную предпочтение xml фрагмент
это всего лишь два примера, где различия между функциональными возможностями этих двух методов могут пригодиться, но я уверен, что их гораздо больше.
Если в вашем случае вы действительно не волнует, и у вас есть только один фрагмент предпочтений, я думаю, это действительно не имеет значения. Технически я полагаю, что setPreferences был бы «более правильным», но оба метода являются частью одной и той же библиотеки, и, как вы сказали, в некоторой степени их функциональность перекрывается, так что кого это волнует XD