Перейти к основному содержимому

Меню команд

Перейти на страницу или искать в каталоге

ИИ-инструменты и скрипты

Проверка релизной сборки Android Gradle

Проверьте релизную сборку Android перед загрузкой: пароли подписи и хранилища ключей в репозитории, отлаживаемые или подписанные отладочным ключом релизные сборки, targetSdk ниже требования Google Play об API 36, секреты в BuildConfig, отключённый R8 и готовность к страницам 16 КБ.

$5.00

Что вы получите: 1 файл · 56.37 KB · ZIP

Варианты покупки

Описание товара

storePassword "..." лежит в build.gradle, релизный тип сборки всё ещё подписан signingConfigs.debug, а targetSdk = 35 с 31 августа 2026 года больше не проходит в Google Play для приложений для телефонов. Этот навык находит эти и ещё одиннадцать ошибок релизной сборки в ваших файлах Gradle до загрузки и объясняет, как исправить каждую.

Ваш агент запускает сканер для файлов build.gradle и build.gradle.kts (модули приложений и библиотек, корневой файл сборки, файлы settings и общие файлы, например variables.gradle в Capacitor), gradle.properties, local.properties, keystore.properties, key.properties и signing.properties, gradle/libs.versions.toml, файлов правил R8 (proguard-rules.pro, consumer-rules.pro, keepRules/*.keep) и имён файлов хранилищ ключей. Он пропускает комментарии, разбирает блоки Gradle так же, как их читает Gradle (buildTypes { release { } }, getByName("release"), named("release"), android.buildTypes.release...), читает вызовы Kotlin DSL с аргументами на отдельных строках, отслеживает простые значения, заданные в том же файле (enableProguardInReleaseBuilds в React Native, ext { targetSdkVersion = 33 }), отличает модули Wear OS, TV, Automotive и XR от приложений для телефонов по их зависимостям и пропускает файлы подписи и хранилища ключей, покрытые .gitignore. Он работает с проектами Android Studio, Flutter, React Native, Expo, Capacitor и Kotlin Multiplatform. Он никогда не запускает Gradle или ваш код. Результат: BLOCK, REVIEW или NOT FLAGGED, с указанием файла, строки, причины и более безопасного подхода. Секреты никогда не выводятся.

Что проверяется

BLOCK (исправить до выпуска)

  • A01: storePassword или keyPassword, записанные в файле сборки (в том числе как запасное значение после System.getenv, getOrElse или orElse), пароли подписи в gradle.properties проекта, а также файлы keystore.properties, key.properties, signing.properties или local.properties с паролями, которые не исключены ни одним .gitignore
  • A02: debuggable true или isDebuggable = true в релизном типе сборки
  • A03: релизный тип сборки, подписанный отладочной конфигурацией подписи, или релизная конфигурация подписи, указывающая на debug.keystore (если только это не заглушка из шаблона или проект не подставляет свой релизный ключ: см. A18)
  • A04: targetSdk, который Google Play больше не принимает: ниже 34 где угодно, ниже 35 в модулях Wear OS и Android Automotive OS, ниже 36 в модулях приложений, зависимости которых указывают на приложение для телефона или планшета
  • A05: секреты, токены, пароли и API-ключи, записанные прямо в buildConfigField, resValue или manifestPlaceholders (ключи, которые предназначены для поставки в приложениях, например Google Maps, публикуемые ключи и ключи SDK аналитики, не отмечаются)
  • A06: файлы .jks или .keystore (или их копии в base64) в проекте, которые не исключены ни одним .gitignore

REVIEW (проверить перед релизом)

  • A11: R8 отключён для релизной сборки модуля приложения: minifyEnabled false, optimization { enable = false } или блок release, который его так и не включает
  • A12: targetSdk 34 или 35 там, где форм-фактор не определить (общий блок ext, variables.gradle, gradle.properties, каталог версий)
  • A13: jniDebuggable true в релизном типе сборки
  • A14: плагин Android Gradle старше 8.5.1 (если не задан документированный обходной путь с legacy-упаковкой) или NDK старше r27, не готовые к требованию Google Play о размере страницы 16 КБ
  • A15: -dontobfuscate, -dontoptimize, -dontshrink или правила, сохраняющие всё, в файлах правил R8, getDefaultProguardFile("proguard-android.txt") или android.enableR8.fullMode=false
  • A16: lint checkReleaseBuilds false
  • A17: схема подписи APK Signature Scheme v2 отключена без v3 в релизной конфигурации подписи
  • A18: отладочная конфигурация подписи в релизном типе сборки в роли заглушки: прямо над ней стоит комментарий TODO или Caution из шаблона (Flutter, React Native, Expo), или проект подставляет релизный ключ через EAS Build или android.injected.signing

Что входит в комплект

  • Сканер (Python 3.9+, только стандартная библиотека)
  • Руководство по правилам с причиной, более безопасным подходом и ссылкой на официальную документацию Android для каждого правила
  • Рискованный и безопасный примеры проектов и реальный отчёт сканера по рискованному

Ограничения

Сканер читает каждый файл в том виде, в котором он написан: значения, задаваемые во время сборки, методы доступа к каталогу вроде libs.versions.targetSdk, convention-плагины в buildSrc или build-logic и flutter.targetSdkVersion не отслеживаются, а product flavors, пользовательские типы сборки и variant API не считаются релизной сборкой. Форм-фактор определяется только по собственным зависимостям модуля. AndroidManifest.xml и исходный код приложения не читаются. Файл, который уже отслеживается git, остаётся в репозитории даже после добавления в .gitignore. Правила о целевом SDK и страницах 16 КБ соответствуют требованиям Google Play на ноябрь 2026 года. Шаблоны Flutter и React Native подписывают релиз отладочным ключом; об этом сообщается как A18 (REVIEW), потому что сборка, не получившая релизный ключ от EAS Build, мастера Generate Signed Bundle в Android Studio или вашей CI, будет отклонена Google Play. NOT FLAGGED не является гарантией.

Содержимое

Один ZIP-файл с 27 файлами: SKILL.md, сканер в scripts/ (7 файлов Python), references/rules.md (каждое правило с причиной и более безопасным подходом) и examples/ (17 файлов примеров плюс report.md, реальный вывод сканера для рискованного примера).

Как использовать: Это навык для агента: папка с файлом SKILL.md и скриптами на Python, которые может запускать ИИ-агент для программирования, например Claude Code, Cursor или Codex CLI. Распакуйте архив в папку навыков вашего агента (для Claude Code: ~/.claude/skills/), затем попросите агента проверить ваш проект. Скрипты также работают самостоятельно с Python 3.9 или новее, ничего не нужно устанавливать. Они только читают ваши файлы: без доступа к сети, ничего никуда не отправляется.

Что вы получите

1 файл · 56.37 KB

  • android-gradle-release-check-1.0.0.zipZIP · 56.37 KB
ЛицензияКоммерческое использование разрешено
Проверка пакетаПройдена

Getly открыл загруженные файлы и не нашёл ничего, что помешало бы их открыть. Это не проверка на вирусы и не оценка качества.

Опубликовано12 нояб. 2026 г.
Размер файла56.37 KB
Формат файлаZIP
Версияv1.0

Теги

androidgradlegoogle-playsigningsecurityai agent skill
R
RR HH

Частые вопросы

Доступ открывается сразу?

Да. Это цифровой товар - скачать его можно сразу после оплаты, прямо из своей библиотеки.

Можно ли использовать в коммерческих проектах?

Да. Коммерческое использование разрешено: в своём бизнесе и в том, что вы продаёте. Перепродавать и распространять сам файл нельзя.

Какие условия возврата?

Запросить возврат можно в течение 30 дней. Если что-то не так, оформите заявку в своём заказе - её рассмотрит команда Getly.

Какие форматы и размеры файлов я получу?

Вы скачаете 1 файл - ZIP - всего 56.37 KB.

Обновления бесплатны?

Да - когда продавец выпускает новую версию, вы можете бесплатно скачать актуальные файлы из своей библиотеки. Последние изменения смотрите в истории версий.

Цена

$5.00