Не удалось установить .apk из /system/priv-app

Я переместил свой apk-файл так /system/priv-app, как вы посоветовали мне в этой теме. Когда я пытаюсь установить его, щелкнув этот .apk, Android сказал мне, что «приложение не установлено». Я пытался использовать adb install myapp.apkдля этой цели, но снова ADB выдал мне ошибку: Failure [INSTALL_FAILED_POLICY_REJECTED_PERMISSION]и я полагаю, что приложение требует разрешения, которое может быть предоставлено только пользователем root. Так что единственный способ, который я вижу сейчас, - это бежать adb shellпозже , и это точка, потому что я совершенно не понимаю эту легенду su:cd /system/priv-appinstall [-cdDsp] [-o USER] [-g GRP] [-m MODE] [-t DIR] [SOURCE]... DEST

    Copy files and set attributes
    -c      Just copy (default)
    -d      Create directories
    -D      Create leading target directories
    -s      Strip symbol table
    -p      Preserve date
    -o USER Set ownership
    -g GRP  Set group ownership
    -m MODE Set permissions
    -t DIR  Install to DIR`

Как установить атрибуты для установки этого apk в качестве системного приложения?

Потому что это installне команда для Android . Это для линукса.

Ответы (3)

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

  1. смонтировать системный раздел в режиме rw
  2. скопируйте и вставьте apk в это место,
  3. установите соответствующие разрешения с помощью chmod и chgrp busybox или с помощью встроенных инструментов:

    adb shell su -c chmod 644 APK    # replace APK with your apk's absolute location, such as /system/priv-app/xyz.apk
    adb shell su -c chown root:root APK   # replace APK as said above
    
  4. сделать перезагрузку.

Неукоснительно следуйте этим инструкциям. Вы можете полностью избежать команд, используя приложение файлового менеджера, такое как Solid File Explorer, ES File Explorer и т. д.

Во время следующей загрузки Android обнаружит apk и установит его автоматически.

Может ли тот факт, что этот APK не имеет подписи, быть препятствием для автоматической установки?
Да. APK без действительной подписи не может быть установлен нормально.
Хорошо. Я понимаю.

Как предложил @Firelord, вы можете избавиться от суеты при вводе команд (и, возможно, уменьшить вероятность ошибок) с помощью проводника, такого как уже упомянутый.

Например, в ES проводнике просто нажмите и удерживайте целевой .apkфайл и выберите свойства, а затем отредактируйте:

введите описание изображения здесь

После этого вы получаете соответствующие разрешения, т.е. -rw- r-- r--и владельца, т.е root.:

введите описание изображения здесь

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

Вы должны переместить APK-файл в папку /system/priv-app, затем изменить его файловый режим на 0664 (-rw-r--r--) и изменить его владельца на root:root.

chmod 0644 your.apk
chown 0.0 your.apk

Тогда все должно быть в порядке.