Я хочу пакетно установить apks прямо с моего рабочего стола. Например, я загрузил много apks на рабочий стол и хочу установить apks, фактически не касаясь своего Android.
Как это сделать?
Проще всего это сделать с помощью adb ( подробности о том, что такое ADB и как получить/установить его на свой компьютер, см. в вики-теге ADB ). Поскольку вы не указываете ОС, которую используете на своем рабочем столе, я пишу, как это можно сделать в Linux (с которым я работаю); должна быть легко адаптирована к другим платформам:
.apk
файлы в одну папкуadb devices
должно быть указано подключенное устройство).apk
находятся ваши файлыfor file in *.apk; do adb install $file; done
ПРИМЕЧАНИЕ. Если у вас есть .apk
файлы, в именах которых есть пробелы, такие как «Xposed Framework», «Adobe Flash Player» и т. д., вам придется переименовать их, так как ADB не может с этим справиться. Либо полностью удалите пробелы, либо замените их, например, символами подчеркивания. Linux предоставляет Perl-скрипт для этого ( /usr/bin/rename
), который вы можете использовать:
rename 's/ /_/g' *.apk
Он заменяет все space
символы на , _
что делает такие имена распознаваемыми adb.Xposed_Framework
Adobe_Flash_Player
Если у вас есть apks в разных папках (например, если вы использовали adb pull
), вы можете использовать мой скрипт ниже:
for /r %f in (*.apk) do adb install -r "%f"
Просто запустите его в папке над всеми вашими APK-файлами, и он рекурсивно установит их все.
Для окон откройте командную строку:
set PATH=%PATH%;C:\path_to_your_platform-tools\
затем
for %e in (*.apk) do adb install %e
Таким образом, у вас есть проблема, заключающаяся в том, что вам нужно установить множество приложений, и вы не сделали резервную копию, такую как Titanium Backup или другое приложение для резервного копирования и восстановления. Но установка, подтверждение и ожидание один за другим заняли бы целую вечность, не говоря уже о том, что это так утомительно!
Я попытался найти приложение, которое могло бы сделать это, чтобы сэкономить мне усилия, но, попробовав их все, ни одно из них не сработало. Поэтому я делал это один за другим, и это заняло так много времени, что я решил просто сделать это с помощью ADB.
Не беспокойтесь, я здесь, чтобы спасти вас, если вы используете Windows. Вы можете решить это с помощью ADB. Возможно, вы не знаете, как использовать ADB, поэтому я напишу полные инструкции здесь. Не волнуйтесь, это легко.
Как это сделать в Windows:
На вашем телефоне,
Settings > Developer Options
(Нажмите Settings > About Phone > Software > Build Number
7 раз, чтобы активировать режим разработчика)USB Debugging
Verify apps over USB
Теперь вы готовы к следующему шагу.
На вашем компьютере с Windows:
platform-tools
папку на свой компьютер. Я рекомендую корень вашего C:
диска, чтобы он находился по адресуC:\platform-tools\
C:\platform-tools\apks\
Теперь ваш телефон подключен, и на вашем компьютере установлен ADB, поэтому вы готовы ввести следующее в командную строку.
Сначала проверьте, подключено ли ваше устройство.
cd C:\platform-tools\
adb devices
Если ваш телефон правильно подключен, вы увидите что-то вроде этого:
* daemon not running: starting now at tcp:5037
* daemon started successfully
List of devices attached
Z1Z1Z1Z1Z1Z1 device
где Z1Z1Z1Z1Z1Z1
находится идентификатор устройства вашего телефона.
Если вы это увидели, вы добились успеха. Приступайте к установке команды:
for %e in (apks\*.apk) do adb install %e
Если это сработало, успехов! Наслаждайтесь просмотром того, как все устанавливается быстро. Это, вероятно, быстрее сделать, чем вручную установить 300+ apks на свой телефон.
ПРОБЛЕМЫ И РЕШЕНИЯ
Если вы получили ошибку more than one installed
и увидели emulator-5556
под своим устройством, попробуйте это (или вы можете пропустить до конца и посмотреть, как обойти эту проблему):
adb kill server
в окне CMDadb devices
adb kill server
в окне CMD (не проверяйте устройства adb снова)Затем запустите последнюю команду и посмотрите, как все будет установлено.
Все приложения могут не устанавливаться, потому что ваш компьютер слишком быстр для командной строки, и некоторые могут сказать «более одного устройства/эмулятора», в то время как другие устанавливаются нормально. В этом случае у меня есть решение.
adb devices
. Обратите внимание на идентификатор вашего устройства, как Z1Z1Z1Z1Z1Z1
в приведенном выше выводе.-s
.См. пример команды ниже:
for %e in (apks\*.apk) do adb -s Z1Z1Z1Z1Z1Z1 install %e
где Z1Z1Z1Z1Z1Z1
находится идентификатор устройства вашего телефона.
Это гарантирует, что ADB игнорирует любые другие устройства, и предотвратит ошибку «несколько устройств».
Надеюсь, это поможет!
В дополнение к adb install
, вы можете напрямую использовать package manager
from adb shell
для установки приложений. Поместите .apk
файлы /data/local/tmp
и убедитесь, что файлы доступны для чтения, контекст SELinux должен быть u:object_r:shell_data_file:s0
. Сейчас:
~$ cd /data/local/tmp
~$ ls *.apk | xargs -I {} pm install '{}'
Другое простое корневое решение — хотя и не с компьютера — это использовать какой-нибудь файловый менеджер, например MiXplorer, для пакетной установки приложений. Выберите все .apk
файлы и нажмите в Install
меню.
Для Linux в каталоге, в котором находится APK, откройте терминал и введитеfind . -name "*.apk" -exec adb install {} \;
Для Windows :
Использование ADB (Android SDK установлен и PATH установлен правильно) и командной строки в Windows
Запустите следующее, чтобы убедиться, что ADB работает
adb devices
Поместите все APK в папку
cd C:\your\path\to\folder\of\apks
for %e in (*.apk) do adb install "%e"
Улучшенная версия на основе ответа @thetechreader (работает для имен файлов с пробелами/символами)
Я просто столкнулся с такой же ситуацией. Я пишу это решение, которое является улучшением по сравнению с приведенными по двум причинам
: у вас есть МНОГО приложений для установки, скорее всего, ваша предыдущая резервная копия. Не могу позволить себе держать телефон на связи. Если ваши adb
снимки, вы должны знать, что вы уже установили, а не тратить время, перебирая все заново
-- Если некоторые приложения ошибаются - нужно знать, какие из них, и избегать их
Я сделал это с помощью adb shell
, но вы можете сделать это снаружи почти так же. Мои приложения лежали у меня на карте памяти partition
.
for apk in `find . -iname *apk -type f` ; do pm install $apk
( test $? -ne 0 && mv $apk $apk.ni ) || mv $apk $apk.ok ; done
пример вывода неудачных установок
# find . -iname *.ni -type f
./org.satok.gweather-bSyZZ3_Zu8ElvJR_4l5sJg==/base.apk.ni
./com.teslacoilsw.launcher-AAZW9c2u4qCjIL3ZmVKsQg==/base.apk.ni
./com.linkedin.android-hLWhs0ddIZ2KWTRO-bZG_Q==/base.apk.ni
./com.google.android.apps.youtube.music-arEVgcC5NTbNUAwP-oYz6A==/base.apk.ni
./com.udemy.android--4YWw0rFLDSA-koaYxCsRA==/base.apk.ni
./com.theporter.android.customerapp-rKFfqbF4WgXvCouQ4ZcvUQ==/base.apk.ni
./com.vested.investing.android-tx7OKTeaemkmdOnomJqTGg==/base.apk.ni
./com.inscripts.namaste-TnRILvo6qbtjjen2r-BTSw==/base.apk.ni
./com.google.android.soundpicker-13nSUeHMYf5qIkXTC1I56Q==/base.apk.ni
и хорошие установки
find . -iname *.ok -type f
./org.videolan.vlc-UMth4_20QtXe66eAx1qzRw==/base.apk.ok
./com.zoho.meeting-0fFi8KgjQBd2N0OZcwdyqA==/base.apk.ok
./sulekha.yellowpages.lcf-JGBM0zpT3hVj2XShwoKvRw==/base.apk.ok
./com.teradata.tcapp-BjVV7TLB5aBUfbW32KzN2A==/base.apk.ok
./com.oasisfeng.greenify-_OK3qGqs7MsTO-QY5aKOeQ==/base.apk.ok
Вы можете установить APK прямо со своего компьютера на мобильный Android через ADB. Сначала скачайте ADB и установите его. Вы можете загрузить его из репозитория Google DL, если у вас его еще нет.
Затем включите режим разработчика на своем мобильном телефоне. Вы можете найти его в настройках вашего мобильного телефона.
А затем запустите эту команду.
adb install "path to your apk file"
Например:
C:\Users\Owner>adb install C:\Users\Owner\Downloads\android-agent.apk
Чиро Сантилли OurBigBook.com