ШІ-інструменти та скрипти
Перевірка релізної збірки Android Gradle
Перевірте релізну збірку Android перед завантаженням: паролі підпису та сховища ключів у репозиторії, релізні збірки з налагодженням або підписані налагоджувальним ключем, targetSdk нижче вимоги Google Play щодо API 36, секрети в BuildConfig, вимкнений R8 і готовність до сторінок 16 КБ.
Що ви отримаєте: 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
ШІ-інструменти та скрипти
Перевірка релізної збірки Android Gradle
Перевірте релізну збірку Android перед завантаженням: паролі підпису та сховища ключів у репозиторії, релізні збірки з налагодженням або підписані налагоджувальним ключем, targetSdk нижче вимоги Google Play щодо API 36, секрети в BuildConfig, вимкнений R8 і готовність до сторінок 16 КБ.
Getly відкрив завантажені файли й не знайшов нічого, що завадило б їх відкрити. Це не антивірусна перевірка і не оцінка якості.
Теги
Поширені запитання
Чи отримаю я доступ одразу?
Так. Це цифровий товар: ви можете завантажити його одразу після оплати, просто зі своєї бібліотеки.
Чи можна використовувати його в комерційних проєктах?
Так. Комерційне використання дозволено: користуйтеся в особистому бізнесі та в тому, що продаєте. Ви не можете перепродавати чи поширювати сам файл.
Яка у вас політика повернення коштів?
Ви можете запросити повернення коштів протягом 30 дн. Якщо щось не так, подайте запит зі свого замовлення, і команда Getly його розгляне.
Які формати та розміри файлів я отримаю?
Ви завантажите 1 файл - ZIP - загалом 56.37 KB.
Чи отримую я безкоштовні оновлення?
Так: коли продавець випускає нову версію, ви можете повторно завантажити свіжі файли зі своєї бібліотеки безкоштовно. Останні оновлення дивіться в журналі змін.
Ціна
$5.00



