Нет, вам не нужно освобождать постоянную строку NSString, хотя это не вызывает никаких проблем, если вы это делаете. Постоянные строки являются частным случаем системы управления памятью. Поскольку их содержимое известно во время компиляции, оно статически определяется в самом двоичном файле приложения, поэтому его никогда не нужно выделять или освобождать во время выполнения. По этой причине его методы сохранения и освобождения являются noops.
Это верно только для констант NSStrings (строк, начинающихся с @) и их двоюродного брата с бесплатными мостами, константы CFStrings (определенной с помощью макроса CFSTR ()).