Как устанавливать приложения с SD карты?

Мой код должен установить мое приложение под названием «xadb-build.apk», но он ничего не делает, без ошибок, без принудительного закрытия, я вижу только тост с разрешением суперпользователя. Вот мой подход

File sdCard = Environment.getExternalStorageDirectory();
    String fileStr = sdCard.getAbsolutePath() + "/download";// +
                                                            // "app-release.apk";

    File file = new File(fileStr, "xadb-build.apk");

    if (file.exists()) {
        try {
            String command;
            command = "adb install -r " + file;
            Process proc = Runtime.getRuntime().exec(
                    new String[] { "su", "-c", command });
            proc.waitFor();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}

Я получил этот код из здесь (см. ответ Палака)


person bad mom    schedule 26.12.2016    source источник
comment
Вы пытались использовать pm install вместо adb install, как предполагает один из комментариев к ответу Палака?   -  person Ted Hopp    schedule 26.12.2016
comment
getExternalStorageDirectory();. Это не SD-карта, а внешняя память. Где ты говоришь?   -  person greenapps    schedule 26.12.2016


Ответы (1)


Android поддерживает этот метод.

File apkFile = new File({path to APK});
        Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setDataAndType(Uri.fromFile(apkFile), "application/vnd.android.package-archive");
        startActivity(intent);

И ваш метод не рекомендуется.

person Star_Man    schedule 26.12.2016
comment
Это означает, проверить ответ! - person Star_Man; 26.12.2016
comment
root only. . Нет. Путь! - person greenapps; 26.12.2016