Команда "pm install" не работает на Android - PullRequest
0 голосов
/ 06 июля 2019

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

bool ShellOperation::installPackage(QString packagePath){

LOG << packagePath;

if(!QFile(packagePath).exists()){
    LOG << "packagePath not existed";
    return false;

}else{

    QString cmd =  QString("pm install %1").arg(packagePath);

    QProcess process;
    process.start(cmd);
    process.waitForFinished(-1);

    LOG << "cmd: " << cmd;
    LOG << process.readAllStandardError();
    LOG << process.readAllStandardOutput();

    return true;
}

}

Ожидайте : myApp.apk должен быть установлен

Фактический :

[installPackage] [39] >> cmd: "pm install /storage/emulated/0/Download/myApp.apk"

[installPackage] [40] >> ""

[installPackage] [41] >> ""

Кто-нибудь может мне помочь? Спасибо!

1 Ответ

0 голосов
/ 06 июля 2019

у вас должно быть это разрешение android.permission.INSTALL_PACKAGES для установки apk, попробуйте вручную вызвать "pm install myapp.apk" через эмулятор терминала, возможно, вы обнаружите некоторую полезную ошибку.

...