Im creating an image converter app and need the user to select the image file from the device, im using an emulator and when i start the intent to pick a file from the gallery it displays the images in their folders but on clicking a folder, it just reopens the gallery and not the folder here's my code
private void showFileChooser() {
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
intent.addCategory(Intent.CATEGORY_OPENABLE);
try {
startActivityForResult(
Intent.createChooser(intent, getString(R.string.selectf)),
FILE_SELECT_CODE);
} catch (ActivityNotFoundException ex) {
// Potentially direct the user to the Market with a Dialog
Toast.makeText(this, "Please install a File Manager.",
Toast.LENGTH_SHORT).show();
}
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK && resultCode == Activity.RESULT_OK) {
// Get the Uri of the selected file
Uri uri = data.getData();
//Log.d(TAG, "File Uri: " + uri.toString());
// Get the path
try {
Path = getPath(this, uri);
if( Path.endsWith("png") || Path.endsWith("gif") || Path.endsWith("jpg") || Path.endsWith("bmp")){
startprogress2();
progressDialog.onStart();
asyncTask = new loadAction();
asyncTask.execute();
}
else{
Toast.makeText(this, R.string.selecti,
Toast.LENGTH_SHORT).show();
}
}catch (URISyntaxException e) {
e.printStackTrace();
failtoloadtoast();
}catch(Exception e){
e.printStackTrace();
failtoloadtoast();
}
}else{
failtoloadtoast();
}
super.onActivityResult(requestCode, resultCode, data);
}
keep in mind i have to enable the user to be able to select image files also from a file manager not only gallery as some formats aren't read by gallery.