Можно ли изменить основной пакет приложения для iOS? - PullRequest
2 голосов
/ 07 июня 2011

Я хочу предоставить две версии моего приложения для iOS: платную и бесплатную с рекламой.Моя цель состоит в том, чтобы сохранить кодовую базу неизменной и изменить только флаг, чтобы указать, какую версию я хочу собрать.

Я подготовил две цели сборки для своего приложения для поддержки этого разделения, как описано здесь .Эти цели различаются по идентификатору пакета.

Теперь я хотел бы изменить флаг на основе данного идентификатора пакета.Я попытался прочитать основной идентификатор пакета, и он работал отлично.И тут начинается мой вопрос.

Можно ли после загрузки бесплатного приложения изменить основной идентификатор пакета, чтобы получить несанкционированный доступ к платной версии?Я нашел здесь , здесь и здесь , что это не так.

Но ... как насчет взломанных телефонов?Я читал в некоторых комментариях, это так.

Если так, как я могу защитить мое приложение?

Я также думал об определении директивы препроцессора, например #define FREE_APP.Тогда я бы проверил:

#ifdef FREE_APP
    //show ads
#endif

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

1 Ответ

3 голосов
/ 07 июня 2011

Чтобы прямо ответить на ваш вопрос, почти наверняка да. Но я бы сказал, что это не имеет значения.

Люди, которые хотят пиратствовать в вашем приложении, вероятно, просто подождут, пока кто-нибудь купит и взломает ваше платное приложение; Я сомневаюсь, что они прошли бы через взлом вашей бесплатной версии.

Лично у меня есть две цели в моем проекте. Два приложения имеют разные значения Info.plist, а в бесплатной версии - #define в настройках сборки. В моем коде у меня много #ifdef s, как вы предлагаете. Можно автоматизировать (но иногда это может быть немного грязно).

Конечно, другим вариантом будет одно приложение с InAppPurchase для обновления до полной версии. Просто будьте осторожны с патентными троллями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...