아래와 같이 안드로이드 프로젝트 상에서 adb shell 을 이용하여 특정 apk 를 설치하려 합니다.
Intent 로 날려 화면을 보고 설치 하는 방법이 있겠지만, 개발 특성상 아래와 같이 진행을 해야 합니다.
사용자가 원하는 apk를 받은 후, 그 특정 apk를 자동으로 설치하게 해주려하는데 보안상 지원이 안될까요?
adb shell을 이용하여 시스템 날짜설정, 시스테 종료 등은 하고 있습니다만, install은 안되네요.
String root = "adb install " + Environment.getExternalStorageDirectory().getPath() + "/Download/TEST.apk";
Process process = Runtime.getRuntime().exec("su");
OutputStream os = process.getOutputStream();
os.write( root.getBytes() );
os.flush();
// Intent 형식으로 하는 일반적인 방법
Uri apkUri = Uri.fromFile(apkfile);
try {
Intent packageinstaller = new Intent(Intent.ACTION_VIEW);
packageinstaller.setDataAndType( apkUri, "application/vnd.android.package-archive");
startActivity(packageinstaller);
} catch (Exception e) {}