как узнать имя пакета

Прочитайте имя пакета Android APK

Как я могу извлечь имя пакета APK?

19 ответов

вы можете установить apk на свой телефон, затем

connect используя adb, вы можете запустить adb shell и выполнить PM list packages-f, который показывает имя пакета для каждого установленного apk.

Если вы открываете AndroidManifest.xml с помощью MS Notepad, поиск фразы package и вы найдете следующее:

где XXX.ХХХХХХХ.xxxxxxx-это имя вашего пакета, просто написанное пробелом после каждого символа.

это полезный способ, когда у вас нет каких-либо конкретных установленных инструментов.

следующий скрипт bash отобразит имя пакета и основное имя действия:

apk_package.sh

на dump суб-команда aapt используется для отображения значений отдельных элементов или частей пакет:

если вы хотите увидеть только строку с package: name информация, использовать findstr

надеюсь, что это поможет другому пользователю windows!

Программный Ответа

Если вам нужно сделать это программно, это немного больше, чем просто ответ в ваш мозг. У меня есть скрипт, который я использую для подписи всех наших приложений, но каждый использует другой ключ. Вот 2 способа получить только имя пакета как выход, так что вы можете поместить его в переменную или сделать все, что вам нужно с ним.

пример: com.example.appname (и ничего еще)

требования

Решение 1

недостатком этого метода является то, что он полагается на aapt для вывода информационных полей пакета в том же порядок:

у нас нет обязательств от разработчиков поддерживать этот формат.

решение 2

слабость этого метода заключается в том, что он полагается на aapt для вывода package= только в Android Manifest: раздел вывода. У нас нет обязательств от разработчиков поддерживать это формат.

решение 3

разверните файл apk с помощью apktool d и прочитайте AndroidManifest.XML.

это был бы лучший метод, но AndroidManifest.xml-это двоичный файл, и все ответы SO, которые я вижу для преобразования его в текст, не работают. (Используя apktool d вместо простого unzip должен делать это для вас, но это не так.) прокомментируйте, пожалуйста, если у вас есть решение этой проблемы

Если вы просто хотите знать имя пакета, запустите adb logcat, запустите действие, которое вы хотите, вы получите подсказку об имени пакета.

другое решение-использовать список aapt и использовать sed для анализа этого:

Я думаю, что лучший и самый простой способ извлечь только имя пакета в Linux

вы можете извлечь AndroidManifest.xml из APK, удалите все нулевые байты, пропустите все до тех пор, пока после строки «манифест», а затем вы находитесь в байте длины, за которым следует имя пакета (и что происходит после него). Для трудной задачи я использую великое гема tool, поэтому команда выглядит так:

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

есть очень простой способ, если у вас есть APK allready на вашем смартфоне. Просто используйте одно из этих приложений:

вы можете установить Package_Name_Viewer.apk на эмуляторе, а затем вы можете увидеть имя пакета всех установленных приложений на эмуляторе.

Я также пробовал де-компиляцию, она работает, но недавно я нашел самый простой способ:

Загрузите и установите Appium из веб-сайт Appium

чтобы использовать это в пакетных сценариях, удобно, чтобы скрипт возвращал только имя пакета (например, для удаления приложения, когда у вас есть APK).

вот скрипт, который я использую:

чтобы вы могли написать:

ADB uninstall`. /getPackageName.sh файл.apk’

для Windows следующее работало для меня:

Примечание

пожалуйста, отредактируйте пути АБР, aapt, APKPath по пути АБР, aapt, и место АПК в вашей системе.

работает:

по сути, приведенный выше код устанавливает apk из заданного местоположения на рабочем столе «Desktop\APK\Instant_Instal\» на устройство и запускает приложение.

Источник

Какому пакету принадлежит файл в Linux

В этой краткой заметке я хочу рассказать как узнать какому пакету принадлежит файл Linux, мы рассмотрим как решить эту задачу не только в Ubuntu, но и в других популярных дистрибутивах. Такая задача возникает очень редко. Например, вы чистите систему, увидели странный файл, или файл который занимает много места и хотите узнать какому пакету он принадлежит, и вообще, нужен ли он здесь. Или другая ситуация вы хотите установить или удалить программу но не помните название пакета, но знаете как называется исполняемый файл.

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

Узнаем какому пакету принадлежит файл в dpkg

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

как узнать имя пакета. Snimok ekrana ot 2020 06 20 21 21 29. как узнать имя пакета фото. как узнать имя пакета-Snimok ekrana ot 2020 06 20 21 21 29. картинка как узнать имя пакета. картинка Snimok ekrana ot 2020 06 20 21 21 29.

как узнать имя пакета. Snimok ekrana ot 2020 06 20 21 22 00. как узнать имя пакета фото. как узнать имя пакета-Snimok ekrana ot 2020 06 20 21 22 00. картинка как узнать имя пакета. картинка Snimok ekrana ot 2020 06 20 21 22 00.

Или объедением эти команды:

как узнать имя пакета. Snimok ekrana ot 2020 06 20 21 29 26. как узнать имя пакета фото. как узнать имя пакета-Snimok ekrana ot 2020 06 20 21 29 26. картинка как узнать имя пакета. картинка Snimok ekrana ot 2020 06 20 21 29 26.

Как узнать имя пакета по файлу в apt-file

Утилита apt-file не является стандартной для системы Ubuntu, поэтому сначала ее нужно установить:

sudo apt install apt-file

Затем нужно обновить базу данных программы, при обновлении загрузиться около 30 Мегабайт данных:

sudo apt-file update

как узнать имя пакета. Snimok ekrana ot 2020 06 20 21 30 06. как узнать имя пакета фото. как узнать имя пакета-Snimok ekrana ot 2020 06 20 21 30 06. картинка как узнать имя пакета. картинка Snimok ekrana ot 2020 06 20 21 30 06.

Теперь можно использовать:

apt-file search /usr/bin/ncdu

как узнать имя пакета. Snimok ekrana ot 2020 06 20 21 33 01. как узнать имя пакета фото. как узнать имя пакета-Snimok ekrana ot 2020 06 20 21 33 01. картинка как узнать имя пакета. картинка Snimok ekrana ot 2020 06 20 21 33 01.

Узнаем какому пакету принадлежит файл в rpm

как узнать имя пакета. Snimok ekrana ot 2020 06 20 21 39 22. как узнать имя пакета фото. как узнать имя пакета-Snimok ekrana ot 2020 06 20 21 39 22. картинка как узнать имя пакета. картинка Snimok ekrana ot 2020 06 20 21 39 22.

как узнать имя пакета. otussysadmin. как узнать имя пакета фото. как узнать имя пакета-otussysadmin. картинка как узнать имя пакета. картинка otussysadmin.

как узнать имя пакета. Snimok ekrana ot 2020 06 20 21 40 38. как узнать имя пакета фото. как узнать имя пакета-Snimok ekrana ot 2020 06 20 21 40 38. картинка как узнать имя пакета. картинка Snimok ekrana ot 2020 06 20 21 40 38.

Пакетный менеджер yum, используемый в системах, основанных на Red Hat, тоже умеет искать пакеты по файлу, для этого есть команда whatpovides:

yum whatprovides /bin/ls

как узнать имя пакета. Snimok ekrana ot 2020 06 20 21 41 29. как узнать имя пакета фото. как узнать имя пакета-Snimok ekrana ot 2020 06 20 21 41 29. картинка как узнать имя пакета. картинка Snimok ekrana ot 2020 06 20 21 41 29.

Какому пакету принадлежит файл в Arch Linux

Но этот способ работает только для установленных пакетов, если пакет не установлен, можно использовать утилиту pkgfile. Она не поставляется по умолчанию, но ее можно установить:

Теперь посмотрим какому пакету принадлежит /bin/evince:

Теперь вы можете узнать из какого пакета можно получить нужную вам программу.

Поиск пакета по файлу в Gentoo

Еще один интересный дистрибутив со своеобразной системой работы с пакетами. Здесь пакеты поставляются в виде исходных кодов и скриптов для сборки. Найти пакет по файлу вы можете с помощью утилиты equery, передав ей параметр b. Например:

equery b /usr/bin/qtconfig

Такой способ работает только для установленных пакетов. Из-за специфики дистрибутива для не установленных пакетов способа поиска не существует.

Выводы

Теперь вы знаете как понять какому пакету принадлежит файл в любом из самых популярных дистрибутивов Linux. Во всех дистрибутивах, основанных на Ubuntu и Debian, работает dpkg, для RPM-based дистрибутивов подходит утилита rpm. А два остальных менее популярных, но очень интересных мы рассмотрели отдельно. Если у вас остались вопросы, спрашивайте в комментариях!

Источник

Получение списка приложений в Android

как узнать имя пакета. apps android. как узнать имя пакета фото. как узнать имя пакета-apps android. картинка как узнать имя пакета. картинка apps android.

Android SDK предоставляет много средств для работы с системой. В том числе он позволяет получать список приложений, которые установлены на устройстве. Это может быть полезно, когда нужно получить сведения о сторонних приложениях (размер APK, путь до приложения, имя пакета и т.д.). Например, в наших приложениях получение списка, содержащего сторонние приложения, играет большую роль: в GreenBro с помощью этого списка выводятся сведения о приложениях, а также выполняются различные действия.

как узнать имя пакета. device 2017 11 02 163906. как узнать имя пакета фото. как узнать имя пакета-device 2017 11 02 163906. картинка как узнать имя пакета. картинка device 2017 11 02 163906.

В Менеджере системных приложений и APK Extractor же список приложений необходим, чтобы удалять приложения и извлекать APK из приложений соответственно.

В этой статье мы рассмотрим, как можно получать список приложений, установленных на устройстве, а также как происходит установка приложений на устройство.

Класс PackageManager

PackageManager предоставляет API, который фактически управляет установкой, удалением и обновлением приложений. Когда мы устанавливаем файл APK, PackageManager анализирует этот APK и выводит результат.

Получить экземпляр класса PackageManager можно с помощью метода getPackageManager(). PackageManager предоставляет методы для запросов к установленным пакетам и соответствующим разрешениям.

Где хранятся файлы APK на Android?

В зависимости от типа данных, на Androiid файлы могут храниться в следующих местах:

Как PackageManager хранит информацию о приложении?

Менеджер пакетов хранит информацию о приложении в трёх файлах, расположенных в /data/system.

packages.xml

Этот XML-файл содержит список разрешений и пакеты\приложения. Он хранит две вещи: разрешения и пакет. Например:

Разрешения хранятся в теге

. Каждое разрешение имеет три атрибута: name, package и protection. Атрибут name это имя разрешения, которое мы используем в AndroidManifest.xml. Атрибут package указывает на пакет, которому принадлежит разрешение, в большинстве случаев это «android». Атрибут protection указывает на уровень безопасности.

содержит 10 атрибутов и несколько подтегов.

АтрибутОписание
nameИмя пакета
codePathПуть установки APK
nativeLibraryPathНативная библиотека, расположенная по умолчанию в /data/data/ /lib
flagХранит флаги ApplicationInfo
ftВремя в шестнадцатtричном формате
ltВремя установки в шестнадцатеричном формате
utВремя последнего обновления в шестнадцатеричном формате
versionКод версии из AndroidManifest.xml
sharedUserIdИдентификатор пользователя Linux, который будет использоваться совместно с другими приложениями.
userIdИдентификатор пользователя Linux

Подтеги же здесь следующие:

содержат разрешения, которые разработчик установил в AndroidManifest.xml

packages.list

Это простой текстовый файл, содержащий имя пакета, идентификатор пользователя, флаги и каталог data.

package-stopped.xml

Этот файл содержит список пакетов, которые были остановлены. Остановленные приложения не могут принимать широковещательные сообщения.

Получаем список приложений

Рассмотрим получение списка установленных приложений на примере GreenBro.

При запуске приложения запускается AsyncTask, внутри которого получаем экземпляр PackageManager и затем копируем в список List все данные об установленных приложениях.

Метод getInstalledApplications() принимает в качестве параметра флаг GET_META_DATA, который определяет, что нам нужные метаданные каждого пакета.

Результатом является список объектов ApplicationInfo для каждого установленного приложения. Класс ApplicationInfo предоставляет подробную информацию о пакете, собранную из тега в AndroidManifest.xml, нам оттуда нужны лишь самые важные данные.

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

Здесь с помощью метода getPackageInfo() класса PackageManager мы получаем общую информацию о приложении по заданному имени пакета. После эта информация объединяется с информацией, полученной от getInstalledApplications() и сохраняется в объекте AppInfo со следующими полями:

Чтобы узнать название приложения, можно также воспользоваться PackageManager, как показано ниже.

Проверка же на то, является ли приложение системным, тоже достаточно проста и показана ниже.

В конце работы AsyncTask возвращает результат обратно в основной поток. Вот и всё, мы загрузили себе список всех установленных на устройстве приложений и можем продолжить с ним работу.

Получение списка приложений в Android : 4 комментария

Подскажите пожалуйста, в конструкции:
final PackageManager pm = context.getPackageManager();
List apps = new ArrayList();
List packages = pm.getInstalledApplications(PackageManager.GET_META_DATA);
Чем является «context»?

Это локальная переменная, Вы можете передавать контекст из активити или фрагмента

» List packages = pm.getInstalledApplications( »

а есть ли функция наподобие getRunnedApplications(), которая выдает список запущенных последних приложений?

как отличить приложение от сервиса? Проверка на системное приложение не помогает

Источник

Как получить имя пакета из любого места?

Я знаю о наличии контексте.getApplicationContext() и вид.getContext (), через который я могу назвать контексте.getPackageName() для получения имени пакета приложения.

10 ответов

идея иметь статическую переменную в вашей основной деятельностью, создается, чтобы быть имя пакета. Тогда просто ссылайтесь на эту переменную.

вам придется инициализировать его в основной деятельности onCreate() способ:

глобальный для класса:

Если вы используете Gradle-android-плагин для создания вашего приложения, то вы можете использовать

чтобы получить имя пакета из любой области, в т. ч. статический.

если со словом «где угодно» Вы имеете в виду, не имея явного Context (например из фонового потока), вы должны определить класс в ваш проект, как:

затем в manifest вам нужно добавить этот класс в

Если вы используете Gradle build, используйте это: BuildConfig.APPLICATION_ID получить имя пакета приложения.

вы можете получить свое имя пакета следующим образом:

конечно, это может включать логику для получения имени пакета из системы android; однако, выше меньше, быстрее и чище код, чем получение его от android.

затем, чтобы получить имя пакета из любого другого модуля, введите

использование модуля приложения также дает вам контекст для модулей, которые нуждаются, но не имеют контекста.

можно использовать без документов метод android.app.ActivityThread.currentPackageName() :

предостережение: это должно быть сделано в главном потоке приложения.

надеюсь, что это будет работать.

для тех, кто использует Gradle, как упоминалось @Billda, вы можете получить имя пакета через:

это дает вам имя пакета, объявленное в вашем приложении gradle:

Если вам интересно получить имя пакета, используемое вашими классами java (которое иногда отличается от applicationId ), вы можете использовать

если вы не уверены, какой из них использовать, читать здесь:

Примечание: идентификатор приложения, используемый для быть напрямую привязанным к вашему коду имя пакета; поэтому некоторые API Android используют термин «имя пакета» в метод их имена и имена параметров, но это на самом деле ваш идентификатор приложения. Например, контекст.getPackageName() метод возвращает идентификатор приложения. Нет необходимости делиться своим кодом истинное имя пакета вне кода приложения.

Источник

Как удалить установленные с завода приложения на Android смартфоне или планшете без Root

как узнать имя пакета. bloat. как узнать имя пакета фото. как узнать имя пакета-bloat. картинка как узнать имя пакета. картинка bloat.

Вас не устраивает тот факт, что на вашем только что купленном смартфоне, планшете или другом Android устройстве производитель установил целый набор различных приложений, которыми вы не собираетесь пользоваться и которые нельзя удалить штатными средствами?

Сегодня я хочу рассказать вам как избавиться от «мусорного» (bloatware) программного обеспечения, которое порой занимает достаточно серьезный объем встроенной памяти или которое работая в фоновом режиме замедляет ваше устройство и впустую расходует заряд его батареи.

Способ удаления предустановленных производителем приложений, который я вам сегодня представлю относительно прост и не требует даже наличия root прав (доступа к системе с правами суперпользователя).

Как удалить установленные с завода Android приложения

1. Прежде всего вам потребуется установить на смартфон или планшет приложение Инспектор приложения, которое вы можете скачать с этой страницы Google Play Маркет.

как узнать имя пакета. bloat11. как узнать имя пакета фото. как узнать имя пакета-bloat11. картинка как узнать имя пакета. картинка bloat11.

2. Теперь вам потребуется наличие на своем компьютере программы ADB. Раньше она шла в составе Google SDK, но с недавних пор вы можете скачать её на свой компьютер отдельно.

Скачать ADB (вместе с Fastboot) от Google вы можете по следующим ссылкам:

3. Чтобы ваш смартфон или планшет мог работать с программой ADB (и Fastboot) вам нужно в меню настроек его системы, в скрытом разделе «Для разработчиков» включить режим отладки через USB. Как его найти и включить читайте в этом материале.

4. Подключите ваш смартфон к компьютеру с помощью USB кабеля, перейдите на компьютере в папку с программой ADB и запустите окно командной строки Windows. Для этого в проводнике введите в адресной строке cmd и нажмите «Enter».

как узнать имя пакета. navgest 2. как узнать имя пакета фото. как узнать имя пакета-navgest 2. картинка как узнать имя пакета. картинка navgest 2.

5. В окне командной строки, Power Shell или терминала выполните команду:

Если ранее вы все сделали правильно, то ADB сообщит вам о том, что телефон или планшет, подключен к ПК, а на экране мобильного устройства появится предложение разрешить отладку с этого компьютера. Разрешите её нажав на кнопку ОК.

как узнать имя пакета. aw4. как узнать имя пакета фото. как узнать имя пакета-aw4. картинка как узнать имя пакета. картинка aw4.как узнать имя пакета. gcam2. как узнать имя пакета фото. как узнать имя пакета-gcam2. картинка как узнать имя пакета. картинка gcam2.

6. Теперь вам нужно узнать имя пакета приложения, которое вы хотели бы удалить со своего смартфона или планшета. В этом нам поможет установленное ранее приложение Инспектор приложений (Application Inspector)

Запустите его и в списке установленных приложений («App List») выберите то, которое вам нужно. Например, если я хочу удалить приложение Xperia Transfer Mobile, я нахожу его в списке App List и выбираю.

как узнать имя пакета. bloat7. как узнать имя пакета фото. как узнать имя пакета-bloat7. картинка как узнать имя пакета. картинка bloat7.

При этом откроется окно со сведениями о приложении где под наименованием приложения вы увидите имя его пакета. В нашем случае это com.sonymobile.xperiatransfermobile

как узнать имя пакета. bloat8. как узнать имя пакета фото. как узнать имя пакета-bloat8. картинка как узнать имя пакета. картинка bloat8.

7. На компьютере в окне командной строки введите по очереди две команды:

как узнать имя пакета. bloat2. как узнать имя пакета фото. как узнать имя пакета-bloat2. картинка как узнать имя пакета. картинка bloat2.

после ввода второй команды дождитесь появления на экране строки «Success» сообщающей об успешном её выполнении:

как узнать имя пакета. bloat5. как узнать имя пакета фото. как узнать имя пакета-bloat5. картинка как узнать имя пакета. картинка bloat5.

Всё, приложение Xperia Transfer Mobile со смартфона удалено. Если вы теперь зайдете в раздел «Приложения» меню настроек системы, вы увидите, что напротив его имени стоит пометка «Не установлено».

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *