В этом уроке узнаем, как получить список всех установленных приложений на Android. Но начать я его хочу с небольшого обзора полезного приложения — оно называется Hexlock, и позволяет блокировать доступ к выбранным приложениям на вашем устройстве, с помощью пароля или графического ключа. Я уже слышу ваши неодобрительные возгласы, но не спешите уходить — по ходу обзора расскажу вам одну историю, с этим приложением связанную.

Исходный код примера из урока — под видео:

Итак, получение списка всех android приложений, установленных на устройстве полезен, когда вы разрабатываете приложение для обмена apk файлов с другими устройствами, или когда вы разрабатываете приложение app локер, наподобие того, который я показал вам в начале урока.

Взгляните на код простого приложения, которое позволяет это делать. Макет главного сласса содержит список ListView, второй макет содержит разметку элемента списка. Он используется адаптером для представления сведения о приложении. Он показывает значок приложения, название приложения и пакет приложения.

activity_main.xml:

list_item.xml:

Класс MainActivity наследуется от ListActivity. Это главный класс, который используется для инициализации списка установленных приложений.

MainActivity.java:

Класс PackageManager используется для получения информации о пакетах приложений, которые в настоящее время установлены на устройстве. Получить экземпляр класса PackageManager можно методом getPackageManager(). PackageManager предоставляет методы для выполнения запросов об установленных пакетах и связанных разрешениях, и т.д. В этом примере мы получаем список установленных приложений в Android.

Так как получение списка приложений от PackageManager является продолжительной задачей, это делается в AsyncTask.

Метод packageManager.getInstalledApplications() возвращает список всех пакетов приложений, которые установлены на устройстве. Флаг GET_META_DATA позволяет извлекать любые мета данные, связанные с разрешениями. Если мы установим флаг GET_UNINSTALLED_PACKAGES, будет возвращен список всех приложений, включая те, которые удалены с признаком DONT_DELETE_DATA , то есть частично удалены, и после них остались папки данных.

Кроме того этот класс использует listadapter — объект пользовательского класса AppAdapter для ListView. Он унаследуется от ArrayAdapter.

AppAdapter.java:

Здесь мы объявляем список, контекст и packageManager.

В методе getView строим элемент списка. Получаем LayoutInflater методом контекста getSystemService(Class) для наполнения макета.

Затем в главном классе в методе onPostExecute выводим список. Метод setListAdapter предоставляет курсор для представления списка. На вход ему идет listadapter.

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

device-2015-11-12-171536

Скачать приложение Hexlock от Liquidum Limited

Приложение Applications Info: ссылка

<<Git – работаем с удаленным репозиторием на GitHub | Инструменты android разработчика

Как создавать android приложения без среды разработки | Инструменты android разработчика>>

Как получить список всех установленных приложений на Android обновлено: Ноябрь 26, 2015 автором: admin

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

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

*
*
Website