Я видел, что некоторые библиотеки используют отдельные ветви в своих системах контроля версий.Один для ARC, один для не ARC.Я не вижу в этом частичности, так как это требует дополнительного обслуживания.
Метод, который я думал, заключался в использовании флага компилятора: (см. этот вопрос)
#if __has_feature(objc_arc)
Всякий раз, когда мне нужно использовать retain
выпуск и т. Д.Таким образом, если пользователь включил его, код автоматически перефакторируется.