iPhone - использует ли TouchXML недокументированные API?

Недавно я слышал, что Apple использует инструменты для поиска ссылок на недокументированные API и из-за этого отклоняет приложения для iPhone из App Store.

Популярная структура Three20 заставляет людей получать отказ.

Я также только что увидел, что в библиотеке KissXML также есть вызвал отклонение.

Мне нужен синтаксический анализатор XML на основе Objective C DOM, и теперь я рассматриваю возможность использования TouchXML .

Может ли кто-нибудь подтвердить, что TouchXML не ссылается на какие-либо недокументированные API? Я не хочу рисковать отклонением приложения на основании этого.


person philfreo    schedule 18.11.2009    source источник


Ответы (5)


Я могу подтвердить, что я не включил частные фреймворки в несколько проектов, использующих TouchXML, которые все стали приложениями в App Store. Я бы задал вопрос на сайте кода Google, чтобы убедиться, но Джон Уайт, написавший библиотеку, пишет очень чистый и жесткий код. Я был бы удивлен, если бы он использовал какие-либо недокументированные API.

Кроме того, я бы не стал слишком об этом беспокоиться. Создайте свое приложение и отправьте его, и если оно будет отклонено, исправьте его. Apple даже скажет вам, на какой API вы ссылаетесь, что вам не нужно, если это так. Если вам все равно придется пройти через их бюрократию, вы можете извлечь из этого выгоду, заставив их сказать вам, что не так. Также имейте в виду, что, вероятно, все получат отказ хотя бы один раз, особенно если это ваше первое приложение. ;-)

person Matt Long    schedule 18.11.2009
comment
Похоже на хороший совет. Я знаю, что у многих людей были приложения, принятые с помощью TouchXML, но похоже, что совсем недавно Apple начала проводить новый вид анализа, который выявил недокументированные API в этих других библиотеках. Спасибо! - person philfreo; 19.11.2009
comment
Ты прав. Я слышал то же самое. Я отправлю новую версию нескольких приложений, которые появятся в ближайшие несколько недель. Мне будет интересно узнать, затрудняют ли их новые процессы получение одобрения. С наилучшими пожеланиями. - person Matt Long; 19.11.2009
comment
Проблема, похоже, связана с классом CTidy, который компилируется только в том случае, если вы #define TOUCHXMLUSETIDY - person IlDan; 09.11.2011

Тиди знает. Мое приложение было отклонено из магазина приложений на этом основании.

«3.3.1 Приложения могут использовать только Документированные API в порядке, предписанном Apple, и не должны использовать или вызывать какие-либо частные API».

Следующие непубличные API включены в ваше приложение: tidyBufAlloc tidyBufFree tidyBufInit tidyCleanAndRepair tidyCreate tidyOptSetBool tidyParseBuffer tidyParseString tidyRelease tidySaveBuffringSaveBufferSavecuffring

person Jameson    schedule 16.12.2009

Я знаю, что в магазине приложений есть как минимум одно приложение, использующее TouchXML. Но в процессе разработки я обнаружил там некоторые ошибки, поэтому сейчас пытаюсь найти какую-то альтернативу.

person Morion    schedule 18.11.2009

Рассмотрите возможность использования libxml2. У него более крутая кривая обучения, но скорость и гибкость того стоят.

person Alex Reynolds    schedule 18.11.2009
comment
Разве TouchXML не является оболочкой в ​​Objective C для libxml2, то есть C? - person philfreo; 19.11.2009

Мне только что отклонили приложение именно потому, что оно использует touchXML

person ollyb303    schedule 20.09.2011
comment
Обязательно отмените определение #define TOUCHXMLUSETIDY и удалите CTidy.m из целевого членства приложения! Приложение пройдет валидацию - person Xav; 19.09.2012