android: reverted export zip cleanup (keep zip files in export subdir for easy usb transfer)

This commit is contained in:
matlabbe
2022-02-02 17:05:49 -05:00
parent c99203bbed
commit 6f8f6d4d8e
@@ -125,7 +125,7 @@ public class RTABMapActivity extends FragmentActivity implements OnClickListener
public static final String RTABMAP_TMP_DB = "rtabmap.tmp.db"; public static final String RTABMAP_TMP_DB = "rtabmap.tmp.db";
public static final String RTABMAP_TMP_DIR = "tmp"; public static final String RTABMAP_TMP_DIR = "tmp";
public static final String RTABMAP_TMP_FILENAME = "map"; public static final String RTABMAP_TMP_FILENAME = "map";
public static final String RTABMAP_SDCARD_PATH = "/sdcard/"; public static final String RTABMAP_SDCARD_PATH = "/Internal storage/";
public static final String RTABMAP_EXPORT_DIR = "Export/"; public static final String RTABMAP_EXPORT_DIR = "Export/";
public static final String RTABMAP_AUTH_TOKEN_KEY = "com.introlab.rtabmap.AUTH_TOKEN"; public static final String RTABMAP_AUTH_TOKEN_KEY = "com.introlab.rtabmap.AUTH_TOKEN";
@@ -3621,22 +3621,7 @@ public class RTABMapActivity extends FragmentActivity implements OnClickListener
File exportDir = new File(mWorkingDirectory + RTABMAP_EXPORT_DIR); File exportDir = new File(mWorkingDirectory + RTABMAP_EXPORT_DIR);
exportDir.mkdirs(); exportDir.mkdirs();
// cleanup old zip final String pathHuman = mWorkingDirectoryHuman + RTABMAP_EXPORT_DIR + fileName + ".zip";
fileNames = Util.loadFileList(mWorkingDirectory + RTABMAP_EXPORT_DIR, false);
if(!DISABLE_LOG) Log.i(TAG, String.format("Deleting %d files in \"%s\"", fileNames.length, mWorkingDirectory + RTABMAP_EXPORT_DIR));
for(int i=0; i<fileNames.length; ++i)
{
File f = new File(mWorkingDirectory + RTABMAP_EXPORT_DIR + "/" + fileNames[i]);
if(f.delete())
{
if(!DISABLE_LOG) Log.i(TAG, String.format("Deleted \"%s\"", f.getPath()));
}
else
{
if(!DISABLE_LOG) Log.i(TAG, String.format("Failed deleting \"%s\"", f.getPath()));
}
}
final String zipOutput = mWorkingDirectory+RTABMAP_EXPORT_DIR+fileName+".zip"; final String zipOutput = mWorkingDirectory+RTABMAP_EXPORT_DIR+fileName+".zip";
if(RTABMapLib.writeExportedMesh(nativeApplication, mWorkingDirectory + RTABMAP_TMP_DIR, RTABMAP_TMP_FILENAME)) if(RTABMapLib.writeExportedMesh(nativeApplication, mWorkingDirectory + RTABMAP_TMP_DIR, RTABMAP_TMP_FILENAME))
{ {
@@ -3678,15 +3663,30 @@ public class RTABMapActivity extends FragmentActivity implements OnClickListener
final File f = new File(zipOutput); final File f = new File(zipOutput);
final int fileSizeMB = (int)f.length()/(1024 * 1024); final int fileSizeMB = (int)f.length()/(1024 * 1024);
// Send to... AlertDialog d = new AlertDialog.Builder(getActivity())
Intent shareIntent = new Intent(); .setCancelable(false)
shareIntent.setAction(Intent.ACTION_SEND); .setTitle("Mesh Saved!")
shareIntent.putExtra(Intent.EXTRA_STREAM, FileProvider.getUriForFile(getActivity(), getActivity().getApplicationContext().getPackageName() + ".provider", f)); .setMessage(String.format("Mesh \"%s\" (%d MB) successfully exported! Share it?", pathHuman, fileSizeMB))
shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
shareIntent.setType("application/zip"); public void onClick(DialogInterface dialog, int which) {
startActivity(Intent.createChooser(shareIntent, "Sharing...")); // Send to...
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, FileProvider.getUriForFile(getActivity(), getActivity().getApplicationContext().getPackageName() + ".provider", f));
shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
shareIntent.setType("application/zip");
startActivity(Intent.createChooser(shareIntent, "Sharing..."));
resetNoTouchTimer(true); resetNoTouchTimer(true);
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
resetNoTouchTimer(true);
}
}).create();
d.setCanceledOnTouchOutside(false);
d.show();
} }
}); });
} }