예제 #1
0
  public void DD() throws FailedExecuteCommand, IOException, InterruptedException {
    String Command = "";
    if (isJobFlash() || isJobRestore()) {
      if (mDevice.getName().startsWith("g2") && Build.MANUFACTURER.equals("lge") && isJobFlash()) {
        File aboot = new File("/dev/block/platform/msm_sdcc.1/by-name/aboot");
        File extracted_aboot = new File(mContext.getFilesDir(), "aboot.img");
        File patched_CustomIMG = new File(mContext.getFilesDir(), CustomIMG.getName() + ".lok");
        File loki_patch = new File(mContext.getFilesDir(), "loki_patch");
        File loki_flash = new File(mContext.getFilesDir(), "loki_flash");
        mShell.execCommand(
            "dd if=" + aboot.getAbsolutePath() + " of=" + extracted_aboot.getAbsolutePath(), true);
        mShell.execCommand(
            loki_patch.getAbsolutePath()
                + " recovery "
                + CustomIMG.getAbsolutePath()
                + " "
                + patched_CustomIMG.getAbsolutePath()
                + "  || exit 1",
            true);
        Command =
            loki_flash.getAbsolutePath()
                + " recovery "
                + patched_CustomIMG.getAbsolutePath()
                + " || exit 1";
      } else {
        Log.i(TAG, "Flash started!");
        Common.copyFile(CustomIMG, tmpFile);
        Command =
            busybox.getAbsolutePath()
                + " dd if=\""
                + tmpFile.getAbsolutePath()
                + "\" "
                + "of=\""
                + CurrentPartition.getAbsolutePath()
                + "\"";
      }
    } else if (isJobBackup()) {
      Log.i(TAG, "Backup started!");

      Command =
          busybox.getAbsolutePath()
              + " dd if=\""
              + CurrentPartition.getAbsolutePath()
              + "\" "
              + "of=\""
              + tmpFile.getAbsolutePath()
              + "\"";
    }
    mShell.execCommand(Command, true);
    if (isJobBackup()) placeImgBack();
  }
예제 #2
0
 private void placeImgBack() throws IOException, FailedExecuteCommand {
   mToolbox.setFilePermissions(tmpFile, "666");
   Common.copyFile(tmpFile, CustomIMG);
 }