Защитите свои ключи API от обратного проектирования Android ⇐ Android

Форум для тех, кто программирует под Android
Anonymous
Защитите свои ключи API от обратного проектирования Android

Сообщение Anonymous »

Я немного разочарован ProGuard.
Я использую Gradle, чтобы скрыть свои КЛЮЧИ API Google MAP. Я также прочитал этот вопрос здесь «Управление ключом API Карт Google с помощью Gradle в Android Studio
» и сделал то же самое. Если вы последуете принятому ответу в этом вопросе, ProGuard не запутает ваш ключ API. Вопрос: почему?
Есть два хороших ответа. Один с ManifestPlaceHolder, другой с использованием @string

Тем не менее, если я декомпилирую свое приложение, мой ключ API погоды все равно будет виден.
Я использую частную строку myweatherapikey = BuildConfig.MY_API_WEATHER_KEY; и удивительно (в плохом смысле), как ProGuard НЕ запутывает это, даже когда используя Gradle.
Когда вы выполняете реверс-инжиниринг, это выглядит как частная строка myweatherapikey ="MY KEY IN PLAIN TEXT";

Я пытаюсь запутывал мои ключи уже несколько дней, но ничего не получалось, даже с помощью Gradle.
Как вы прячете ключи? Меня очень раздражает, что все мои ключи становятся общедоступными, когда вы декомпилируете мое приложение.

Второй вопрос: я думаю, что невозможно скрыть ключ API Google Maps. Есть 2 ключа: один для релизной версии и один для отладочной версии. Оба они хранятся в src/debug и src/release. Вы же не сможете это скрыть, верно?

Подробнее здесь: https://stackoverflow.com/questions/466 ... ng-android

Вернуться в «Android»