Мне нужно скрыть свой ключ API Flurry в моем приложении с открытым исходным кодом? [дублировать
-
24-10-2019 - |
Вопрос
Возможный дубликат:
Как открыть источник приложения, которое использует клавиши API
У меня есть приложение для Android с открытым исходным кодом, в которое я планирую добавить отслеживание Flurry. Flurry создает уникальный ключ API для отслеживания вашего приложения.
Нужно ли мне попытаться скрыть этот ключ API в моем исходном коде (то есть не включать его, и я добавляю его каждый раз, когда создаю для выпуска) или просто не беспокоился об этом?
Решение
Я использую Google Code в качестве репозитория SVN, и для любого из моих ключей API я поместил заполнитель в strings.xml и обязательно выясню их, если я что -нибудь проверю.
Другие советы
Приложения такого рода должны иметь файл конфигурации, который стоит в одиночестве за пределами репозитория. Вместо того, чтобы совершать сам файл, создайте «выборку» версии файла, которая привержена репозиторию, которая содержит все необходимые настройки, но имеет фиктивные данные. Затем в вашем приложении динамически загрузите файл «реального» конфигурации.
Когда другой разработчик проверяет код, им придется сделать простую, начальную настройку. Один из этих элементов включает в себя создание копии образца файла конфигурации и переименование его в правильное, правильное имя файла конфигурации, а затем обновить его с помощью собственных частных настроек для ключей, паролей и т. Д.
Будут ли другие люди загружать этот проект с открытым исходным кодом и создавать свои собственные версии? Если это так, я бы оставил клавишу API и положил файл конфигурации (с именем/значением), который загружается через код. Или это будет открытый исходный код, чтобы позволить многим людям работать над этим? В этом случае может быть легче просто оставить это.
Лично я бы пошел с файлом конфигурации, независимо от того, что его оставит. Если бы только потому, что кто -то другой может получить ваш ключ API, добавьте его в приложение и связывайте с вашими данными. Это, и каждый раз, когда вы строите и запускаете в тестовой среде, это повлияет на вашу статистику.