Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это важно
Центр приложений Visual Studio был прекращен 31 марта 2025 г., за исключением функций аналитики и диагностики, которые будут поддерживаться до 30 июня 2026 г. Подробнее.
ProGuard, DexGuard и R8 — это средства для оптимизации и скрытия кода приложений Android. Он удаляет неиспользуемый код, переименовывает классы, поля и методы с семантически скрытыми именами, что делает кодовую базу меньше и сложнее для проведения обратного проектирования. Чтобы включить маскировку с помощью ProGuard или R8 в приложении Android, следуйте официальной документации разработчика Android.
При включении ProGuard, DexGuard или R8 в вашем приложении для Android, трассировки стека должны быть деобфускированы. App Center автоматически декодирует трассировки стека для приложений Java, Kotlin и React Native Android при отправке mapping.txt
файла, созданного при каждой сборке. Этот файл сопоставляет исходный класс, метод и имена полей с закодированными именами, делая трассировки стека возможными для чтения.
Служба сборки и распространения Центра приложений может автоматически создавать файлы сопоставления и отправлять их в службу диагностики. Если вы используете Центр приложений для создания и автоматического распространения приложения для конечных пользователей, вам не нужно вручную получать и отправлять файлы сопоставления, как описано в приведенных ниже шагах.
Отправка файла mapping.txt
Портал Центра приложений
-
mapping.txt
Скачивание файла из каталога сборки модуля приложения - Войдите в Центр приложений и выберите приложение
- В меню слева перейдите к разделу "Диагностика"
- Выбор сопоставлений
- Нажмите кнопку "Отправить сопоставления" в правом верхнем углу
- Заполните Имя версии и Код версии (они должны соответствовать конфигурации Gradle сборки, чтобы сопоставление работало для конкретной сборки).
-
mapping.txt
Отправьте файл из каталога сборки модуля приложения. - Нажмите кнопку Сохранить.
API Центра приложений
Процесс отправки файлов сопоставления через API включает в себя ряд трех вызовов API: один для выделения пространства на серверной части, один для отправки файла и один для обновления состояния отправки. Тело первого вызова API должно установить symbol_type
, AndroidProguard
, build
и version
свойства, которые соответствуют коду версии и имени версии соответственно, а также file_name
.
-
POST
Активируйте запрос к API symbol_uploads. Этот запрос выделяет пространство в серверной системе для вашего файла и возвращает свойстваsymbol_upload_id
иupload_url
.
curl -X POST 'https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/symbol_uploads' \
-H 'accept: application/json' \
-H 'X-API-Token: {API TOKEN}' \
-H 'Content-Type: application/json' \
-d '{JSON BODY}'
- Используя свойство, возвращенное на первом шаге, выполните
upload_url
запрос с заголовком:PUT
и укажите путь к вашему файлу на диске. Этот запрос отправляет файл на наши серверные учетные записи хранения. Узнайте больше о заголовках запросов PUT для BLOB.
curl -X PUT '{upload_url}' \
-H 'x-ms-blob-type: BlockBlob' \
--upload-file '{path to file}'
-
PATCH
Выполните запрос к API symbol_uploads с помощью свойстваsymbol_upload_id
возвращенного на первом этапе. В тексте запроса укажите, нужно ли задать состояние отправкиcommitted
(успешно завершено) процесса отправки илиaborted
(неудачно завершено).
curl -X PATCH 'https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}' \
-H 'accept: application/json' \
-H 'X-API-Token: {API TOKEN}' \
-H 'Content-Type: application/json' \
-d '{ "status": "committed" }'
Замечание
API отправки символов не работает для файлов, размер которых превышает 256 МБ. Используйте интерфейс командной строки Центра приложений для отправки этих файлов. Вы можете установить CLI App Center, следуя инструкциям в репозитории CLI App Center.
Интерфейс командной строки Центра приложений
Вы также можете использовать интерфейс командной строки для отправки файлов сопоставления:
appcenter crashes upload-mappings --mapping {mapping file} --version-name {version name} --version-code {version code}
Замечание
Центр приложений не может проверить, отправлен ли правильный mapping.txt
файл. Мы рекомендуем отправить файл непосредственно после создания файла .apk или отправить его в репозиторий кода, если вы хотите отправить его позже.
Пересылка сопоставления из сборки в Центре приложений
Если сборка настроена для создания mapping.txt
файла, Центр приложений создает файл как доступный для загрузки. Автоматическое распространение сборки или вручное распространение его позже перенаправит файл в систему диагностики mapping.txt
, чтобы расшифровать входящие отчеты о сбоях. После распространения сборки не требуется вручную отправить mapping.txt
файл.
Удаление файла сопоставления
-
GET
Выполните запрос к API symbols_list. Это извлекает идентификаторы для файлов сопоставления, которые вы загрузили. -
DELETE
Выполните запрос к API symbols_upload с идентификатором файла сопоставления. При этом удаляется указанный файл сопоставления.