Application vnd android package archive apk

Download and Install APK Programmatically

Hello guys, as per title in this post I ‘ll tell you how to download the app using a download manager and install it programmatically. For doing that will create a sample app, for more detail you can watch feature video as well. So let’s get started

Download and Install APK (Demo APP)
Create a new Project

Open Android Studio and create a new android project with any default template. Once project sync is finished, open app-level build.gradle. In this android example we’ll use Snackbar for that we have to add material io dependencies. so let’s do that

Add uses permission

I’m going to download the APK file so we need storage permission and Internet permission. Once the app is download successfully than we will install it programmatically. For doing that we must need REQUEST_INSTALL_PACKAGES permission. Let’ s all needed permission in android manifest.

Create a file provider

You guys, already aware that in android N or above we have to write a file provider. Let’s create a resource file inside res=>xml=> named is file_provider_paths.xml

Now declare the file provider inside the manifest
Add some value inside strings.xml file
Create a download controller

Let’s create a file named is DownloadController, It’s controller is responsible to download file install it. This DownloadController we are using download manager for downloading APK.

Open the main activity layout file add one button
Create an extension file

For better coding practice, removing boilerplate code. We’ll write few extensions for AppCompatActivity and Snackbar. let’s create extension file and paste below code

Open main activity file

Let’s open the file and paste the below code. In this activity, we are checking storage permission first. If permission is granted than calling download function otherwise requesting for storage permission.

Conclusion

All done, In this tutorial, we have learned how to download APK and Install it programmatically. I hope it’s helpful for you, Help me by sharing this post with all your friends.

Get Solution Code

Keep in touch

If you have any queries, feel free to ask them in the comment section below. 🙂

Источник

APK – Пакет приложения Android (Android Package File)

Расширение APK

Чем открыть файл APK

В Windows: Google Android SDK, BlueStacks, Corel WinZip 16.5, Smith Micro StuffIt Deluxe 2010, 7-Zip, WinRAR, Eclipse с плагином ADT, IntelliJ IDEA
В Mac OS: Google Android SDK, Apple Archive Utility, Smith Micro StuffIt Deluxe 2011, BlueStacks App Player для Mac, Eclipse с плагином ADT, IntelliJ IDEA
В Linux: Google Android SDK, Eclipse с плагином ADT, IntelliJ IDEA
В Google Android: Google Android

Читайте также:  Blackberry q10 прошивка android

Описание расширения APK

Популярность:

Разработчик: Google

Расширение APK файла связано с операционной системой смартфона Google Android, разработанный компанией Google и Open Handset Alliance. APK-файл представляет собой архив, содержащий исходные данные Android приложения (скомпилированные файлы с кодом DEX, скомпилированные файлы ресурсов ARSC, файлы настроек AndroidManifest.xml). Файлы APK хранятся в каталоге /data/app. Каталог «App» доступен только через проводник. Для разработки приложений можно использовать Google’s Android SDK, набор для разработки, основанный на Java.

.APK файлы используют алгоритм сжатия ZIP. Содержание .APK архива можно получить с использованием утилит сжатия таких как WinRAR, WinZip и т.д. Чтобы открыть архив APK архиватором, необходимо переименовать APK файл в файл с расширением ZIP.

Новые приложения доступны в магазине Google Play. Приложения в Google Play подписаны и протестированы, но Google Play так же поддерживает установку неподписанных приложений через USB.

Для установки Android APK приложение на телефон через USB:

1. Подключите телефон к компьютеру с помощью USB кабеля и скопируйте .APK файл на карту памяти.
2. Используйте файловый менеджер, например, ASTRO и откройте содержимое карты памяти.
3. Выберите файл APK.

Некоторые производители отключают сервис установки приложений через USB в своих телефонах. Чтобы включить эту опцию, идите в раздел Настройки -> Приложения и установите опцию Неизвестный источник (Unknown sources) в Доступно (enabled).

Источник

Пишем свой Android Market

В рамках работы над большим количеством android приложений появилось желание создать свой Android Market на локальном сервере (с шахматами и поэтессами).
Свой маркет должен решать две простые задачи:

  • Распространение и обновление корпоративных приложений. У нас есть набор внутри корпоративных приложений, которые нельзя публиковать на Google Play. Сейчас пользователи оповещаются о новых версиях по емайлу, что не удобно.
  • Бета тестирование заказных приложений на большой группе коллег, с обратной связью.

И так, нам необходимо реализовать небольшое Android приложение, которое будет скачивать список доступных приложений, проверять наличие обновлений для уже установленных, устанавливать/удалять приложения.

Серверная часть

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

В моем случае серверной частью фактически выступает http шара.
Данный xml файл в приложении трансформируется в список приложений, доступных для установки.

Установка

Пользователь выбирает нужное ему приложение и устанавливает,
Маркет скачивает apk файл на флешку устройства и инициирует установку приложения, конечно, должна быть разрешена установка из сторонних источников.
Установить незаметно в фоне мы не можем, поэтому после выполнения данного кода:

Пользователь увидит стандартное окно установки приложений:

Обновление

Приложение Market может по определенному интервалу проверять наличие новых версий, делается это достаточно просто, так как доступен список всех установленных приложений:

В случае необходимости обновления приложения, повторяем процесс Установки, приложение будет обновлено.

Удаление

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

Обратная связь

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

Читайте также:  Как отключить от точки доступа устройство андроид

Для этого в каждое приложение, распространяемое через наш Маркет добавляем следующий класс

Как видно из кода, это хендлер, который получает ошибки (Exception), генерит строку со стеком, сохраняет ее в локальный файл и отправляет ошибку в виде броадкаст сообщения.

А в Application классе включаем переадресацию всех сообщений об ошибках в этот хендлер

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

В самом Маркете мы просто отлавливаем данное сообщение:

И дальше маркет уже может переслать это сообщение на почту разработчику, загрузить в какой нибудь веб-сервис или попросить пользователя добавить комментарий к ошибке

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

ps: В статье использован исходный код и картинки взятые из прототипа приложения.

Источник

Установить приложение программно на Android

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

Вы можете легко запустить ссылку на магазин Play Play или приглашение к установке:

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

У меня была такая же проблема, и после нескольких попыток у меня все получилось. Я не знаю почему, но установка данных и типа по отдельности провалила мои намерения.

Решения, предоставленные на этот вопрос, все применимы к targetSdkVersion с 23 и ниже. Однако для Android N, то есть уровня API 24 и выше, они не работают и аварийно завершают работу со следующим исключением:

Это связано с тем, что, начиная с Android 24, Uri изменился адрес для загруженного файла. Например, установочный файл с именем, appName.apk хранящимся в основной внешней файловой системе приложения с именем пакета, com.example.test будет иметь вид

для API 23 и ниже, тогда как что-то вроде

за API 24 и выше.

Более подробную информацию об этом можно найти здесь, и я не собираюсь проходить через это.

Чтобы ответить на вопрос targetSdkVersion о 24 и выше, необходимо выполнить следующие шаги: Добавьте следующее в AndroidManifest.xml:

2. Добавьте следующий paths.xml файл в xml папку res в src, main:

Это pathName то, что показано в приведенном выше примере содержимого и pathValue является фактическим путем в системе. Было бы неплохо поставить «.» (без кавычек) для pathValue в приведенном выше, если вы не хотите добавлять какие-либо дополнительные подкаталоги.

Напишите следующий код для установки apk с именем appName.apk в основной внешней файловой системе:

Разрешение также не требуется при записи в личный каталог вашего приложения во внешней файловой системе.

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

Читайте также:  Драйвера для андроид micromax

Источник

Скачать apk и установить

Здравствуйте. У меня такая задача — приложение А должно обновить приложение Б. Для этого пользователь жмет кнопку в приложении А, качается ласт версия приложения Б.apk с веб сервера, запускается установка приложения Б(обновление).

Подскажите, пожалуйста, как реализовать скачивание apk файла и сразу же установить его?

Вот так я качаю apk с веб сервера:

Оно качает, в шторке видно прогресс скачивания, но я так и не понимаю в какую директорию идет скачка. И что совсем не понимаю, как этот файл сразу же после скачивания запустить на установку?

Приложение нацелено на широкие массы дешевых аппаратов, поэтому пишу для андроида 4.4. и выше. Приложение выкладываться в маркет не будет.

Скачать и установить apk при нажатии на кнопку
Здравствуйте, у меня вопрос как при нажатии на кнопку скачать apk файл по ссылке с сервера и.

В Intelij Idea в меню перед запуска выбивает Error:The apk for your currently selected variant (app-release.apk) is not
В Intelij Idea в меню перед запуска выбивает Error:The apk for your currently selected variant.

Как скачать и установить Android ?
Можно ли бесплатно скачать Android ? И если да, то как это сделать ?

Нашел сниппет, который в случае api меньше 24 запускает по одному способу, а при 24 и более с помощью file provider.
В 1ом случае установка начинается. А вот через файл провайдер не получается. Что я делаю не так?

Код лога ошибки

А подскажите, пожалуйста, что в таком случае писать в манифесте и xml файл провайдера?

Добавлено через 6 минут
И мне бы на яве все же, а то я в андриод деве 2ой день с нуля учу)

Тут описаны варианты https://developer.android.com/. ider?hl=ru
Что касается манифеста, у вас все верно. Этого достаточно.

Добавлено через 1 минуту

Подскажите, списал код с видеоурока. На девайсе 23 и ниже загрузка файла без проблем начинается. А вот на девайсах апи 24 и выше она работает ТОЛЬКО в эмуляторах, а на реальном устройстве пишет «Не удалось загрузить файл» в шторке уведомлений. Что я делаю не так?

Добавлено через 30 минут
Добавил android:usesCleartextTraffic=»true»
в манифест и это частично решило проблему, но опять же не на всех устрйоствах. Если на Samsung galasy s9+ с Андроид 10 качается, то на Huawei p30 lite индикатор загрузки появляется и сразу пропадает..

Добавлено через 26 минут
Update.
Теперь и на гелекси не качает.. хотя ничего не менял

Нужно скачать APK
Нашел на Google Play приложение Airthings Wave. А на Xiaomi Redmi 5 GP его в упор не видит. Это как.

Как установить .apk без файлменеджера?
Недавно отремонтировали мой Acer liquid e (android 2.2.2), теперь он немного пустоват (можно.

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

Как установить/скачать Halo 3 и 4 на PC?
Здравствуйте, извините может быть не там тему расположил, но у меня есть такой вопрос, как скачать.

Источник

Оцените статью