private void DoExport(string pkgN) { Text = "Exporting package " + pkgN + "...."; StringBuilder cmdBuilder = new StringBuilder(); string path = adbi.GetApkPathByPackageName(device, pkgN); string randomAPKName = IOUtil.GenerateRandomFileName("apk"); string randomTempD = IOUtil.GetRandomDirectoryInTemp(); Directory.CreateDirectory(randomTempD); // Copy out the selected apk file to the sdcard. // cmdBuilder.Append("cp ").Append(path).Append(" /sdcard/").Append(randomAPKName); ShellResponse shr = adbi.RunCommand(device, cmdBuilder.ToString(), false); string tempAPKPath = randomTempD + "\\" + randomAPKName; adbi.PullFileFromDevice(device, "/sdcard/" + randomAPKName, tempAPKPath); //MessageBox.Show(tempAPKPath); SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "Android Package|*.apk"; sfd.Title = "Save the exported package (" + pkgN + ") to: "; DialogResult dr = sfd.ShowDialog(); //MessageBox.Show(dr == DialogResult.OK ? sfd.FileName : "User abort"); if (dr != DialogResult.OK) { return; } if (File.Exists(sfd.FileName)) { File.Delete(sfd.FileName); // Delete the file if user wants to override. } File.Copy(tempAPKPath, sfd.FileName); File.Delete(tempAPKPath); Directory.Delete(randomTempD, true); adbi.RunCommand(device, "rm /sdcard/" + randomAPKName, false); }
private void ChkFS_Click(object sender, EventArgs e) { MessageBox.Show(adbi.RunCommand(device, "df", inRoot).stdOut, "Remaining disk space of device " + device.Serial, MessageBoxButtons.OK, MessageBoxIcon.Information); }