Чем открыть resources arsc
Расширение файла ARSC
Что это за файл — ARSC?
ARSC files are associated with Android operating system. ARSC file contain application resources in binary format. ARSC files are typically a part of APK application archives.
ARSC files allow easy access to the application source code when needed. This solution is also used for protecting sensitive data by storing it in binary format.
Файлы ARSC связаны с операционной системой Android. Файл ARSC содержит ресурсы приложения в двоичном формате. Файлы ARSC обычно являются частью архивов приложений APK.
Файлы ARSC обеспечивают легкий доступ к исходному коду приложения при необходимости. Это решение также используется для защиты конфиденциальных данных путем их хранения в двоичном формате.
Программа(ы), умеющие открыть файл .ARSC
Windows
Mac OS
Linux
Android
Как открыть ARSC файлы
В дальнейшей части этой страницы Вы найдете другие возможные причины, вызывающие проблемы с файлами ARSC.
Возможные проблемы с файлами в формате ARSC
Отсутствие возможности открытия и работы с файлом ARSC, совсем не должен значить, что мы не имеем установленного на своем компьютере соответствующего программного обеспечения. Могут выступать другие проблемы, которые также блокируют нам возможность работы с файлом Google Android Resource Format. Ниже находится список возможных проблем.
Если Вы уверены, что все перечисленные поводы отсутствуют в Вашем случае (или были уже исключены), файл ARSC должен сотрудничать с Вашими программами без каких либо проблем. Если проблема с файлом ARSC все-таки не решена, это может значить, что в этом случае появилась другая, редкая проблема с файлом ARSC. В таком случае остается только помощь специалиста.
Похожие расширения
.a | Unix Static Object Code Library Format |
.a2w | Alice Program World Format |
.actx | DS Game Maker Action Description Format |
.ada | ADA Language Source Code Format |
.addin | Microsoft Visual Studio Addin Format |
.ads | Ada Package Specification |
.agi | Asterisk Gateway Interface Format |
.alb | Alpha Five Data Dictionary |
Как связать файл с установленной программой?
Есть ли универсальный метод открытия неизвестных файлов?
Многие файлы содержат данные в виде текста или чисел. Возможно, что во время открытия неизвестных файлов (напр. ARSC) популярный в системе Windows простой редактор текста, которым является Notatnik позволит нам увидеть часть данных, закодированных в файле. Этот метод позволяет просмотреть содержимое многих файлов, однако не в такой форме, как программа, предназначенная для их обслуживания.
Расширение файла ARSC
Google Android Resource Format
Что такое файл ARSC?
Для чего используются файлы ресурсов?
Программы, которые поддерживают ARSC расширение файла
Следующий список содержит программы, сгруппированные по 4 операционным системам, которые поддерживают ARSC файлы. ARSC файлы можно встретить на всех системных платформах, включая мобильные, но нет гарантии, что каждый из них будет должным образом поддерживать такие файлы.
Программы, обслуживающие файл ARSC
Как открыть файл ARSC?
Проблемы с доступом к ARSC могут быть вызваны разными причинами. К счастью, наиболее распространенные проблемы с файлами ARSC могут быть решены без глубоких знаний в области ИТ, а главное, за считанные минуты. Мы подготовили список, который поможет вам решить ваши проблемы с файлами ARSC.
Шаг 1. Получить Google Android SDK Tools
Шаг 2. Убедитесь, что у вас установлена последняя версия Google Android SDK Tools
Если у вас уже установлен Google Android SDK Tools в ваших системах и файлы ARSC по-прежнему не открываются должным образом, проверьте, установлена ли у вас последняя версия программного обеспечения. Иногда разработчики программного обеспечения вводят новые форматы вместо уже поддерживаемых вместе с новыми версиями своих приложений. Причиной того, что Google Android SDK Tools не может обрабатывать файлы с ARSC, может быть то, что программное обеспечение устарело. Все форматы файлов, которые прекрасно обрабатывались предыдущими версиями данной программы, также должны быть открыты с помощью Google Android SDK Tools.
Шаг 3. Назначьте Google Android SDK Tools для ARSC файлов
Если проблема не была решена на предыдущем шаге, вам следует связать ARSC файлы с последней версией Google Android SDK Tools, установленной на вашем устройстве. Процесс связывания форматов файлов с приложением по умолчанию может отличаться в деталях в зависимости от платформы, но основная процедура очень похожа.
Изменить приложение по умолчанию в Windows
Изменить приложение по умолчанию в Mac OS
Шаг 4. Убедитесь, что ARSC не неисправен
Вы внимательно следили за шагами, перечисленными в пунктах 1-3, но проблема все еще присутствует? Вы должны проверить, является ли файл правильным ARSC файлом. Вероятно, файл поврежден и, следовательно, недоступен.
1. Убедитесь, что ARSC не заражен компьютерным вирусом
Если файл заражен, вредоносная программа, находящаяся в файле ARSC, препятствует попыткам открыть его. Немедленно просканируйте файл с помощью антивирусного инструмента или просмотрите всю систему, чтобы убедиться, что вся система безопасна. ARSC файл инфицирован вредоносным ПО? Следуйте инструкциям антивирусного программного обеспечения.
2. Убедитесь, что структура файла ARSC не повреждена
Если вы получили проблемный файл ARSC от третьего лица, попросите его предоставить вам еще одну копию. В процессе копирования файла могут возникнуть ошибки, делающие файл неполным или поврежденным. Это может быть источником проблем с файлом. При загрузке файла с расширением ARSC из Интернета может произойти ошибка, приводящая к неполному файлу. Попробуйте загрузить файл еще раз.
3. Проверьте, есть ли у пользователя, вошедшего в систему, права администратора.
Некоторые файлы требуют повышенных прав доступа для их открытия. Войдите в систему, используя учетную запись администратора, и посмотрите, решит ли это проблему.
4. Убедитесь, что в системе достаточно ресурсов для запуска Google Android SDK Tools
Если в системе недостаточно ресурсов для открытия файлов ARSC, попробуйте закрыть все запущенные в данный момент приложения и повторите попытку.
5. Убедитесь, что ваша операционная система и драйверы обновлены
Регулярно обновляемая система, драйверы и программы обеспечивают безопасность вашего компьютера. Это также может предотвратить проблемы с файлами Google Android Resource Format. Устаревшие драйверы или программное обеспечение могли привести к невозможности использования периферийного устройства, необходимого для обработки файлов ARSC.
Вы хотите помочь?
Если у Вас есть дополнительная информация о расширение файла ARSC мы будем признательны, если Вы поделитесь ею с пользователями нашего сайта. Воспользуйтесь формуляром, находящимся здесь и отправьте нам свою информацию о файле ARSC.
Русские Блоги
Подробное объяснение ресурса Rsources.arsc в приложении Android6.0
Краткое описание процесса упаковки ресурсов
При разработке приложения вам нужны код и ресурсы. Код в конечном сгенерированном apk преобразуется в файл dex, поэтому ресурсы в файле apk остаются теми же файлами ресурсов во время разработки приложения? Или были какие-то изменения в этих файлах ресурсов?
Чтобы процитировать картину Лао Ло о процессе упаковки ресурсов и поиска:
Как видно из рисунка выше:
За исключением ресурсов и ресурсов res / raw, которые упакованы в APK в их исходном виде, другие ресурсы будут скомпилированы или обработаны. XML-файл будет скомпилирован в двоичный XML-файл, поэтому после распаковки apk-файла XML-файл нельзя открыть напрямую.
В дополнение к ресурсам ресурсов другим ресурсам будет присвоен идентификатор ресурса.
Инструмент упаковки отвечает за компиляцию и упаковку ресурсов. После завершения компиляции будет создан файл resources.arsc и файл R.java. Первый сохраняет таблицу индекса ресурсов, а последний определяет различные константы идентификатора ресурса для индексации ресурсов в коде.
Файл конфигурации приложения AndroidManifest.xml также будет скомпилирован в двоичный XML-файл, а затем упакован в APK.
Когда приложение запущено, к ресурсу, наконец, осуществляется доступ через AssetManager, либо через идентификатор ресурса, либо через имя файла.
В сгенерированном apk, только активы и ресурсы res / raw упакованы в apk без изменений. Все остальные ресурсы будут скомпилированы или обработаны. Вы можете использовать следующую команду для просмотра списка файлов в apk:
После распаковки apk напрямую вы обнаружите, что xml не может быть открыт, что указывает на неправильный формат, поскольку он стал двоичным xml. Кроме того, такие изображения, как PNG, также будут соответствующим образом оптимизированы. Есть еще один файл resources.arsc.
Вещи, чтобы подготовить
Проанализируйте файл resources.arsc, он должен существовать. Используйте Android studio для создания проекта ResourceDemo,
Ресурсы можно разделить на две категории: ресурсы типа сумки и ресурсы не сумки.
Ресурс мешка: с точки зрения непрофессионала, этот тип ресурса не может быть назначен случайным образом при назначении значения, только одно назначение может быть выбрано из предварительно определенных значений. Очень похоже на перечисление.
В дополнение к строкам, у ресурсов значений типов есть много других типов ресурсов, некоторые из которых являются более специальными, такие как bag, style, множественное число и ресурсы массива. Эти ресурсы будут определять некоторые специальные значения для себя, и эти ресурсы со специальными значениями вместе называются ресурсами Bag.
Например, диапазон значений атрибута android: direction, предоставляемый системой Android, равен <"vertical", "горизонтальный">, что эквивалентно определению двух пакетов вертикального и горизонтального.
Создайте файл attrs.xml в res / values и настройте в нем ресурс атрибута типа сумки.
Этот файл определяет ресурс атрибута с именем «custom_orientation», который является атрибутом в формате перечисления (также понимаемом как тип перечисления) и может принимать значение «custom_vertical» или «custom_horizontal».
«Custom_orientation» является перечисляемым ресурсом атрибута attr, и для описания его типа атрибута также используются внутренние метаданные. Эти метаданные также представлены сумкой.
Другими словами, custom_orientation состоит из трех пакетов:
Первый пакет: имя «^ type» и значение TYPE_ENUM (TYPE_ENUM = 1
Интеллектуальная рекомендация
Частота амплитуды FFT и характеристики фазовой частоты
Подробное описание построения среды FLEX-BlazeDS-Java
Один. вести Многие люди задавали некоторые вопросы о создании проекта Flex + LCDS (FDS) в сообщениях и группах. Из-за операции ее трудно четко объяснить, поэтому я написал простой учебник (я обещал эт.
PhoneURLConnectGEt
package com.example.phonehttp; import android.os.Bundle; import android.os.Handler; import android.app.Activity; import android.widget.ScrollView; import android.widget.TextView; public class MainActi.
Глава 12 Полиморфизм
[LeetCode] в сочетании с двумя упорядоченными слоями
Вскрываем, модифицируем и запаковываем Android-приложения
Содержание статьи
Иногда некоторые приложения на Android чем-то не устраивают пользователя. В качестве примера можно привести назойливую рекламу. А то бывает и так — всем хороша программа, да только перевод в ней или кривой, или вовсе отсутствует. Или, например, программа триальная, а получить полную версию возможности нет. Как же изменить ситуацию?
Введение
В этой статье мы поговорим о том, как разобрать пакет APK с приложением, рассмотрим его внутреннюю структуру, дизассемблируем и декомпилируем байт-код, а также попробуем внести в приложения несколько изменений, которые могут принести нам ту или иную выгоду.
Чтобы сделать все это самостоятельно, потребуются хотя бы начальные знания языка Java, на котором пишутся приложения для Android, и языка XML, который используется в Android повсеместно — от описания самого приложения и его прав доступа до хранения строк, которые будут выведены на экран. Также понадобится умение обращаться со специализированным консольным софтом.
Итак, что же представляет собой пакет APK, в котором распространяется абсолютно весь софт для Android?
Декомпиляция приложений
В статье мы работали только с дизассемблированным кодом приложения, однако если в большие приложения вносить более серьезные изменения, разобраться в коде smali будет гораздо сложнее. К счастью, мы можем декомпилировать код dex в Java-код, который будет хоть и не оригинальным и не компилируемым обратно, но гораздо более легким для чтения и понимания логики работы приложения. Чтобы сделать это, нам понадобятся два инструмента:
Использовать их следует так. Сначала запускаем dex2jar, указывая в качестве аргумента путь до apk-пакета:
В результате в текущем каталоге появится Java-пакет mail.jar, который уже можно открыть в jd-gui для просмотра Java-кода.
Устройство APK-пакетов и их получение
Пакет приложения Android, по сути, является обычным ZIP-файлом, для просмотра содержимого и распаковки которого никаких специальных инструментов не требуется. Достаточно иметь архиватор — 7zip для Windows или консольный unzip в Linux. Но это что касается обертки. А что внутри? Внутри же у нас в общем случае такая структура:
Перечисленные файлы и каталоги есть если не во всех, то, пожалуй, в абсолютном большинстве APK. Однако стоит упомянуть еще несколько не столь распространенных файлов/каталогов:
Этот каталог используют производители игр, помещая туда движок игры, написанный на C/C++, а также создатели высокопроизводительных приложений (например, Google Chrome). С устройством разобрались. Но как же получить сам файл пакета интересующего приложения? Поскольку без рута с устройства забрать файлы APK не представляется возможным (они лежат в каталоге /data/app), а рутить не всегда целесообразно, имеется как минимум три способа получить файл приложения на компьютер:
Какой из них использовать — дело вкуса; мы предпочитаем использовать отдельные приложения, поэтому опишем использование Real APK Leecher, тем более что написан он на Java и, соответственно, работать будет хоть в винде, хоть в никсах.
После запуска программы необходимо заполнить три поля: Email, Password и Device ID — и выбрать язык. Первые два — e-mail и пароль твоего гуглоаккаунта, который ты используешь на устройстве. Третий же является идентификатором устройства, и его можно получить, набрав на номеронабирателе код ##8255## и затем найдя строку Device ID. При заполнении надо ввести только ID без префикса android-.
Настройка Real APK Leecher
Хакер #170. Малварь для OS X
После заполнения и сохранения нередко выскакивает сообщение «Error while connecting to server». Оно не имеет отношения к Google Play, поэтому смело его игнорируй и ищи интересующие тебя пакеты.
Просмотр и модификация
Допустим, ты нашел интересующий тебя пакет, скачал, распаковал… и при попытке просмотра какого-нибудь XML-файла с удивлением обнаружил, что файл не текстовый. Чем же его декомпилировать и как вообще работать с пакетами? Неужели необходимо ставить SDK? Нет, SDK ставить вовсе не обязательно. На самом деле для всех шагов по распаковке, модификации и упаковке пакетов APK нужны следующие инструменты:
Использовать все эти инструменты можно и по отдельности, но это неудобно, поэтому лучше воспользоваться более высокоуровневым софтом, построенным на их основе. Если ты работаешь в Linux или Mac OS X, то тут есть инструмент под названием apktool. Он позволяет распаковывать ресурсы в оригинальный вид (в том числе бинарные XML- и arsc-файлы), пересобирать пакет с измененными ресурсами, но не умеет подписывать пакеты, так что запускать утилиту signer придется вручную. Несмотря на то что утилита написана на Java, ее установка достаточно нестандартна. Сначала следует получить сам jar-файл:
Далее нам понадобится скрипт-обвязка для запуска apktool (он, кстати, доступен и для Windows), включающий в себя еще и утилиту aapt, которая понадобится для запаковки пакета:
Далее просто сваливаем содержимое обоих архивов в каталог
Если же ты работаешь в Windows, то для нее есть превосходный инструмент под названиемVirtuous Ten Studio, который также аккумулирует в себе все эти инструменты (включая сам apktool), но вместо CLI-интерфейса предоставляет пользователю интуитивно понятный графический интерфейс, с помощью которого можно выполнять операции по распаковке, дизассемблированию и декомпиляции в несколько кликов. Инструмент этот Donation-ware, то есть иногда появляются окошки с предложением получить лицензию, но это, в конце концов, можно и потерпеть. Описывать его не имеет никакого смысла, потому что разобраться в интерфейсе можно за несколько минут. А вот apktool, вследствие его консольной природы, следует обсудить подробнее.
Импорт APK в Virtuous Ten Studio
Рассмотрим опции apktool. Если вкратце, то имеются три основные команды: d (decode), b (build) и if (install framework). Если с первыми двумя командами все понятно, то что делает третья, условный оператор? Она распаковывает указанный UI-фреймворк, который необходим в тех случаях, когда ты препарируешь какой-либо системный пакет.
Рассмотрим наиболее интересные опции первой команды:
Пользоваться apktool очень просто, для этого достаточно указать одну из команд и путь до APK, например:
После этого в каталоге mail появятся все извлеченные и дизассемблированные файлы пакета.
Препарирование. Отключаем рекламу
Теория — это, конечно, хорошо, но зачем она нужна, если мы не знаем, что делать с распакованным пакетом? Попробуем применить теорию с пользой для себя, а именно модифицируем какую-нибудь софтину так, чтобы она не показывала нам рекламу. Для примера пусть это будет Virtual Torch — виртуальный факел. Для нас эта софтина подойдет идеально, потому что она под завязку набита раздражающей рекламой и к тому же достаточно проста, чтобы не потеряться в дебрях кода.
Поиск кода рекламы в jd-gui
После этого в каталоге com.kauf.particle.virtualtorch появится файловое дерево, похожее на описанное в предыдущем разделе, но с дополнительным каталогом smali вместо dex-файлов и файлом apktool.yml. Первый содержит дизассемблированный код исполняемого dex-файла приложения, второй — служебную информацию, необходимую apktool для сборки пакета обратно.
Первое место, куда мы должны заглянуть, — это, конечно же, AndroidManifest.xml. И здесь мы сразу встречаем следующую строку:
Нетрудно догадаться, что она отвечает за предоставление приложению полномочий на использование интернет-соединения. По сути, если мы хотим просто избавиться от рекламы, нам, скорее всего, достаточно будет запретить приложению интернет. Попытаемся это сделать. Удаляем указанную строку и пробуем собрать софтину с помощью apktool:
В каталоге com.kauf.particle.virtualtorch/build/ появится результирующий APK-файл. Однако установить его не получится, так как он не имеет цифровой подписи и контрольных сумм файлов (в нем просто нет каталога META-INF/). Мы должны подписать пакет с помощью утилиты apk-signer. Запустили. Интерфейс состоит из двух вкладок — на первой (Key Generator) создаем ключи, на второй (APK Signer) подписываем. Чтобы создать наш приватный ключ, заполняем следующие поля:
Остальные поля, в общем-то, необязательны — но необходимо заполнить хотя бы одно.
Создание ключа в apk-signer
WARNING
Чтобы подписать приложение с помощью apk-signer, ты должен установить Android SDK и указать полный путь до него в настройках приложения.
Вся информация предоставлена исключительно в ознакомительных целях. Ни редакция, ни автор не несут ответственности за любой возможный вред, причиненный материалами данной статьи.
Теперь этим ключом можно подписать APK. На вкладке APK Signer выбираем только что сгенерированный файл, вводим пароль, алиас ключа и пароль к нему, затем находим файл APK и смело жмем кнопку «Sign». Если все пройдет нормально, пакет будет подписан.
Так как мы подписали пакет нашим собственным ключом, он будет конфликтовать с оригинальным приложением, а это значит, что при попытке обновить софтину через маркет мы получим ошибку.
Цифровая подпись необходима только стороннему софту, поэтому если ты занимаешься модификацией системных приложений, которые устанавливаются копированием в каталог /system/app/, то подписывать их не нужно.
После этого скидываем пакет на смартфон, устанавливаем и запускаем. Вуаля, реклама пропала! Вместо нее, однако, появилось сообщение, что у нас нет интернета или отсутствуют соответствующие разрешения. По идее, этого могло бы и хватить, но сообщение выглядит раздражающе, да и, если честно, нам просто повезло с тупым приложением. Нормально написанная софтина, скорее всего, уточнит свои полномочия или проверит наличие интернет-соединения и в противном случае просто откажется запускаться. Как быть в этом случае? Конечно, править код.
Обычно авторы приложений создают специальные классы для вывода рекламы и вызывают методы этих классов во время запуска приложения или одной из его «активностей» (упрощенно говоря, экранов приложения). Попробуем найти эти классы. Идем в каталог smali, далее com (в org лежит только открытая графическая библиотека cocos2d), далее kauf (именно туда, потому что это имя разработчика и там лежит весь его код) — и вот он, каталог marketing. Внутри находим кучу файлов с расширением smali. Это классы, и наиболее примечателен из них класс Ad.smali, по названию которого нетрудно догадаться, что именно он выводит рекламу.
Мы могли бы изменить логику его работы, но гораздо проще будет тупо убрать вызовы любых его методов из самого приложения. Поэтому выходим из каталога marketing и идем в соседний каталог particle, а затем в virtualtorch. Особого внимания здесь заслуживает файл MainActivity.smali. Это стандартный для Android класс, который создается Android SDK и устанавливается в качестве точки входа в приложение (аналог функции main в Си). Открываем файл на редактирование.
Внутри находится код smali (местный ассемблер). Он довольно запутанный и трудный для чтения в силу своей низкоуровневой природы, поэтому мы не будем его изучать, а просто найдем все упоминания класса Ad в коде и закомментируем их. Вбиваем строку «Ad» в поиске и попадаем на строку 25:
Здесь создается поле ad для хранения объекта класса Ad. Комментируем с помощью установки знака ### перед строкой. Продолжаем поиск. Строка 423:
Здесь происходит создание объекта. Комментируем. Продолжаем поиск и находим в строках 433, 435, 466, 468, 738, 740, 800 и 802 обращения к методам класса Ad. Комментируем. Вроде все. Сохраняем. Теперь пакет необходимо собрать обратно и проверить его работоспособность и наличие рекламы. Для чистоты эксперимента возвращаем удаленную из AndroidManifest.xml строку, собираем пакет, подписываем и устанавливаем.
Наш подопытный кролик. Видна реклама
Он же, но уже без рекламы
Оп-па! Реклама пропала только во время работы приложения, но осталась в главном меню, которое мы видим, когда запускаем софтину. Так, подождите, но ведь точка входа — это класс MainActivity, а реклама пропала во время работы приложения, но осталась в главном меню, значит, точка входа другая? Чтобы выявить истинную точку входа, вновь открываем файл AndroidManifest.xml. И да, в нем есть следующие строки:
Они говорят нам (и, что важнее, андроиду) о том, что активность с именем Start должна быть запущена в ответ на генерацию интента (события) android.intent.action.MAIN из категории android.intent.category.LAUNCHER. Это событие генерируется при тапе на иконку приложения в ланчере, поэтому оно и определяет точку входа, а именно класс Start. Скорее всего, программист сначала написал приложение без главного меню, точкой входа в которое был стандартный класс MainActivity, а затем добавил новое окно (активность), содержащее меню и описанное в классе Start, и вручную сделал его точкой входа.
Открываем файл Start.smali и вновь ищем строку «Ad», находим в строках 153 и 155 упоминание класса FirstAd. Он тоже есть в исходниках и, судя по названию, как раз и отвечает за показ объявлений на главном экране. Смотрим дальше, идет создание экземпляра класса FirstAd и интента, по контексту имеющего отношение к этому экземпляру, а дальше метка cond_10, условный переход на которую осуществляется аккурат перед созданием экземпляра класса:
Скорее всего, программа каким-то случайном образом вычисляет, нужно ли показывать рекламу на главном экране, и, если нет, перескакивает сразу на cond_10. Ок, упростим ей задачу и заменим условный переход на безусловный:
Больше упоминаний FirstAd в коде нет, поэтому закрываем файл и вновь собираем наш виртуальный факел с помощью apktool. Копируем на смартфон, устанавливаем, запускаем. Вуаля, вся реклама исчезла, с чем нас всех и поздравляем.
Итоги
Эта статья лишь краткое введение в методы вскрытия и модификации Android-приложений. За кадром остались многие вопросы, такие как снятие защиты, разбор обфусцированного кода, перевод и замена ресурсов приложения, а также модификация приложений, написанных с использованием Android NDK. Однако, имея базовые знания, разобраться во всем этом — лишь вопрос времени.