Для студий и команд, которые публикуют приложения потоком
Проверка уникальности кода
apporig автоматически проверяет уникальность кода: сравнивает проект с другими приложениями в workspace, находит копии, переименованные классы и переписанную логику. Поддерживаются Swift, Kotlin, Java, React Native и Flutter.
Зачем проверять уникальность кода перед релизом
Магазины приложений всё чаще отклоняют сборки с признаками шаблонного или дублирующего кода. Если вы ведёте поток iOS и Android приложений, ручная проверка каждого репозитория не масштабируется.
- Перекрёстная проверка всех приложений в team workspace
- Статусы COPY / RELATED / OK для быстрой приоритизации
- Swift, Kotlin, Java, Objective-C, React Native и Flutter
- ZIP или Git, плюс Jira Automation для release-тикетов
- Whitelist: исключение SDK и boilerplate из оценки сходства
Как работает проверка уникальности программного кода
Сигналы: хеши файлов, AST-сходство, именование и слои сравнения (структура, потоки данных, зависимости). «Косметический» рефакторинг с новыми названиями, но той же архитектурой, попадает в RELATED или COPY.
Частые вопросы
Что такое проверка уникальности кода мобильного приложения?
Проверка уникальности кода сравнивает исходники вашего приложения с другими проектами, чтобы выявить скопированные файлы, структурные клоны и поверхностные рефакторинги, когда меняют только названия. Сервис apporig на сайте apporig.com автоматизирует этот процесс: хеширование файлов, разбор в абстрактные синтаксические деревья и отбор токенов. До отправки в App Store или Google Play вы видите статусы COPY, RELATED и OK и можете заранее снизить риск отказа.
Чем apporig отличается от других сервисов?
apporig – современный сервис проверки сходства мобильного кода: tree-sitter для Swift, Kotlin, Java, React Native и Flutter, team workspace, Git и Jira, whitelist и отчёты COPY / RELATED / OK для потоковых релизов.
Чем apporig отличается от сравнения через Git?
Обычное сравнение версий внутри одного репозитория Git показывает изменения между фиксациями или ветками. apporig сравнивает разные проекты в вашей командной области, выявляет структурное сходство даже после переименования файлов и переноса кода, и даёт обобщённую оценку риска для модерации магазинов. Это важно, когда у вас много приложений и нужна картина по всему портфелю, а не только история одного репозитория.
Можно ли загружать архивы ZIP для анализа?
Да. Загружайте проекты Xcode или Android Studio в виде ZIP: apporig выполнит анализ сходства, удалит загруженный архив после анализа и сохранит результаты разбора в командной области для сравнения с остальными приложениями. Так удобно передать снимок кода без постоянного доступа к Git, например от подрядчика или из внутреннего конвейера сборки.
Поддерживает ли apporig репозитории Git?
Да. Подключайте репозитории Git к apporig для регулярного анализа: каждая новая ревизия сравнивается с другими проектами в вашей области. Это удобно командам, которые выпускают обновления каждую неделю и хотят ловить нарастающее сходство до публикации в App Store или Google Play, не вручную собирая архивы после каждого изменения.
Какие языки анализирует apporig?
Сейчас: Swift, Objective-C, Kotlin, Java, React Native (TypeScript/JavaScript, Expo) и Flutter (Dart). C#, Go и PHP – в планах.
Есть ли бесплатная проба apporig?
Да. В early access доступен бесплатный workspace уровня Starter: загрузка проектов, анализ и отчёты о сходстве. Ограниченное число мест включает три месяца Starter без оплаты.
Как работает структурное сходство на основе синтаксических деревьев?
apporig разбирает исходный код в деревья и сравнивает структурные отпечатки: так находят рефакторинги, где переименовали классы и функции, но порядок ветвлений и вызовов остался тем же. Простое сравнение текста или хешей файлов часто пропускает такие случаи, а для магазинов важно именно сходство логики и каркаса приложения, а не только совпадение строк.
Можно ли проверить сразу много приложений?
Да. Загрузите несколько проектов в ZIP или подключите несколько репозиториев Git в одну командную область: apporig сравнивает каждый проект с каждым и показывает пары с наибольшим риском. Такой поток типичен для студий с десятками приложений в месяц: вы держите единую матрицу сходства и не упускаете новый релиз, похожий на уже опубликованный.
Помогает ли apporig снизить риск отказа в App Store?
apporig помогает найти дублирующийся или шаблонный код до отправки на ревью. Многие отказы по правилу 4.3 связаны со слишком похожими бинарниками и концепциями в одном аккаунте. Проактивная проверка уникальности кода не гарантирует одобрение, но уменьшает сюрпризы: вы заранее видите модули со статусом COPY или высоким RELATED и успеваете их переработать.
Сколько времени занимает анализ уникальности кода?
У большинства проектов отчёт готов за считанные минуты, точное время зависит от размера репозитория и числа файлов. Крупные монолитные репозитории могут обрабатываться дольше, но типичное мобильное приложение укладывается в короткий цикл после загрузки ZIP или синхронизации Git. Параллельно вы можете продолжать работу в apporig.com, пока очередь анализа завершается.