отклонение приложения iPhone для использования ICU (расширения Unicode) - PullRequest
7 голосов
/ 11 марта 2010

Я получил следующую почтовую форму Apple, учитывая мою заявку:


Благодарим Вас за отправку обновления в Storeομοθεσία в App Store. В ходе проверки вашего приложения мы обнаружили, что оно использует частные API-интерфейсы, что нарушает раздел 3.3.1 Лицензионного соглашения программы для разработчиков iPhone; «3.3.1 Приложения могут использовать документированные API только в порядке, установленном Apple, и не должны использовать или вызывать какие-либо частные API». Хотя ваша заявка не была отклонена, было бы целесообразно решить эту проблему в следующем обновлении. В ваше приложение включены следующие непубличные API: u_isspace ubrk_close ubrk_current ubrk_first ubrk_next ubrk_open Если вы определили методы в своем исходном коде с теми же именами, что и вышеупомянутые API, мы предлагаем изменить имена ваших методов, чтобы они больше не конфликтовали с частными API Apple, чтобы избежать пометки вашего приложения будущими представлениями. Пожалуйста, решите эту проблему в следующем обновлении до Νομοθεσία. С уважением, Команда iPhone App Review


Функции, упомянутые в этом письме, используются в библиотеке ICU (Международные компоненты для Unicode). Хотя мое приложение не отклонено на данный момент, я не чувствую себя в безопасности для будущего моего приложения, потому что оно в значительной степени зависит от протокола Unicode и, в частности, от этих компонентов. Другое дело, что я не вызываю эти функции напрямую, но они вызываются пользовательской сборкой sqlite (с включенными расширениями FTS3).

Я что-то здесь упускаю? Есть предложения?

Ответы [ 3 ]

4 голосов
/ 12 марта 2010

Я бы порекомендовал не публично высказывать свое мнение о проблеме (которая только навредит вам в долгосрочной перспективе), а вежливо отвечать на указанный вами адрес электронной почты для проверки приложения, объясняя, что вы используете пользовательскую сборку SQLite, которая ссылается на ICUфреймворк.Учитывая, что это стандартная сторонняя платформа, я бы сказал, что это не частные API Apple, которые вы используете.Возможно, они просто переусердствовали во включении символов в свои программы сканирования.

Если вы не можете убедить их в обратном, вы можете подумать о переходе с SQLite с FTS3 на что-то вроде Aaron Hillegass 'BNRPersistence , которое только что добавило быстрый полнотекстовый поиск.

1 голос
/ 20 декабря 2012

Хммм ... возможно, что Apple также использует компоненты ICU. Лучшим ответом было бы вежливо объяснить, что происходит, и, надеюсь, все должно быть в порядке.

1 голос
/ 12 марта 2010

Если у них возникают проблемы с подключением к системному ICU, почему бы просто не импортировать исходный код ICU в ваш проект?

...