I am trying to make an app that can open a file from the phone's directory. I will be opening .ddd files but would like to be able to open any file type. I know intents can be used. I have tried this but at the moment it just opens goes into the file selection but doesn't open the file.
import java.io.File;
import java.io.Serializable;
import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
import android.os.Bundle;
import android.os.Environment;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
import ar.com.daidalos.afiledialog.*;
public class AFileDialogTestingActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        // Assign behaviors to the buttons.
        Button buttonActivity1 = (Button)this.findViewById(R.id.activity_simple_open);
        buttonActivity1.setOnClickListener(btnActivitySimpleOpen);
        Button buttonActivity2 = (Button)this.findViewById(R.id.activity_open_downloads);
        buttonActivity2.setOnClickListener(btnActivityOpenDownloads);
        Button buttonActivity3 = (Button)this.findViewById(R.id.activity_select_folders);
        buttonActivity3.setOnClickListener(btnActivitySelectFolders);
        Button buttonActivity4 = (Button)this.findViewById(R.id.activity_create_files);
        buttonActivity4.setOnClickListener(btnActivityCreateFiles);
        Button buttonActivity5 = (Button)this.findViewById(R.id.activity_select_images);
        buttonActivity5.setOnClickListener(btnActivitySelectImages);
        Button buttonActivity6 = (Button)this.findViewById(R.id.activity_ask_confirmation);
        buttonActivity6.setOnClickListener(btnActivityAskConfirmation);
        Button buttonActivity7 = (Button)this.findViewById(R.id.activity_custom_labels);
        buttonActivity7.setOnClickListener(btnActivityCustomLabels);
        Button buttonDialog1 = (Button)this.findViewById(R.id.dialog_simple_open);
        buttonDialog1.setOnClickListener(btnDialogSimpleOpen);
        Button buttonDialog2 = (Button)this.findViewById(R.id.dialog_open_downloads);
        buttonDialog2.setOnClickListener(btnDialogOpenDownloads);
        Button buttonDialog3 = (Button)this.findViewById(R.id.dialog_select_folders);
        buttonDialog3.setOnClickListener(btnDialogSelectFolders);
        Button buttonDialog4 = (Button)this.findViewById(R.id.dialog_create_files);
        buttonDialog4.setOnClickListener(btnDialogCreateFiles);
        Button buttonDialog5 = (Button)this.findViewById(R.id.dialog_select_images);
        buttonDialog5.setOnClickListener(btnDialogSelectImages);
        Button buttonDialog6 = (Button)this.findViewById(R.id.dialog_ask_confirmation);
        buttonDialog6.setOnClickListener(btnDialogAskConfirmation);
        Button buttonDialog7 = (Button)this.findViewById(R.id.dialog_custom_labels);
        buttonDialog7.setOnClickListener(btnDialogCustomLabels);
    }
    // ----- Buttons for open a dialog ----- //
    private OnClickListener btnDialogSimpleOpen = new OnClickListener() {
        public void onClick(View v) {
            // Create the dialog.
            FileChooserDialog dialog = new FileChooserDialog(AFileDialogTestingActivity.this);
            // Assign listener for the select event.
            dialog.addListener(AFileDialogTestingActivity.this.onFileSelectedListener);
            // Show the dialog.
            dialog.show();
        }
    };    
    private OnClickListener btnDialogOpenDownloads = new OnClickListener() {
        public void onClick(View v) {
            // Create the dialog.
            FileChooserDialog dialog = new FileChooserDialog(AFileDialogTestingActivity.this);
            // Assign listener for the select event.
            dialog.addListener(AFileDialogTestingActivity.this.onFileSelectedListener);
            // Define start folder.
            dialog.loadFolder(Environment.getExternalStorageDirectory() + "/Download/");
            // Show the dialog.
            dialog.show();
        }
    };    
    private OnClickListener btnDialogSelectFolders = new OnClickListener() {
        public void onClick(View v) {
            // Create the dialog.
            FileChooserDialog dialog = new FileChooserDialog(AFileDialogTestingActivity.this);
            // Assign listener for the select event.
            dialog.addListener(AFileDialogTestingActivity.this.onFileSelectedListener);
            // Activate the folder mode.
            dialog.setFolderMode(true);
            // Show the dialog.
            dialog.show();
        }
    };    
    private OnClickListener btnDialogCreateFiles = new OnClickListener() {
        public void onClick(View v) {
            // Create the dialog.
            FileChooserDialog dialog = new FileChooserDialog(AFileDialogTestingActivity.this);
            // Assign listener for the select event.
            dialog.addListener(AFileDialogTestingActivity.this.onFileSelectedListener);
            // Activate the button for create files.
            dialog.setCanCreateFiles(true);
            // Show the dialog.
            dialog.show();
        }
    };  
    private OnClickListener btnDialogSelectImages = new OnClickListener() {
        public void onClick(View v) {
            // Create the dialog.
            FileChooserDialog dialog = new FileChooserDialog(AFileDialogTestingActivity.this);
            // Assign listener for the select event.
            dialog.addListener(AFileDialogTestingActivity.this.onFileSelectedListener);
            // Define the filter for select images.
            dialog.setFilter(".*jpg|.*png|.*gif|.*JPG|.*PNG|.*GIF");
            dialog.setShowOnlySelectable(false);
            // Show the dialog.
            dialog.show();
        }
    };
    private OnClickListener btnDialogAskConfirmation = new OnClickListener() {
        public void onClick(View v) {
            // Create the dialog.
            FileChooserDialog dialog = new FileChooserDialog(AFileDialogTestingActivity.this);
            // Assign listener for the select event.
            dialog.addListener(AFileDialogTestingActivity.this.onFileSelectedListener);
            // Activate the button for create files.
            dialog.setCanCreateFiles(true);
            // Activate the confirmation dialogs.
            dialog.setShowConfirmation(true, true);
            // Show the dialog.
            dialog.show();
        }
    };
    private OnClickListener btnDialogCustomLabels = new OnClickListener() {
        public void onClick(View v) {
            // Create the dialog.
            FileChooserDialog dialog = new FileChooserDialog(AFileDialogTestingActivity.this);
            // Assign listener for the select event.
            dialog.addListener(AFileDialogTestingActivity.this.onFileSelectedListener);
            // Activate the folder mode.
            dialog.setFolderMode(true);
            // Activate the button for create files.
            dialog.setCanCreateFiles(true);
            // Activate the confirmation dialogs.
            dialog.setShowConfirmation(true, true);
            // Define the labels.
            FileChooserLabels labels = new FileChooserLabels();
            labels.createFileDialogAcceptButton = "AcceptButton";
            labels.createFileDialogCancelButton = "CancelButton";
            labels.createFileDialogMessage = "DialogMessage";
            labels.createFileDialogTitle = "DialogTitle";
            labels.labelAddButton = "AddButton";
            labels.labelSelectButton = "SelectButton";
            labels.messageConfirmCreation = "messageConfirmCreation";
            labels.messageConfirmSelection = "messageConfirmSelection";
            labels.labelConfirmYesButton = "yesButton";
            labels.labelConfirmNoButton = "noButton";
            dialog.setLabels(labels);
            // Show the dialog.
            dialog.show();
        }
    };
    // ---- Buttons for open an activity ----- //
    private OnClickListener btnActivitySimpleOpen = new OnClickListener() {
        public void onClick(View v) {
            // Create the intent for call the activity.
            Intent intent = new Intent(AFileDialogTestingActivity.this, FileChooserActivity.class);
            // Call the activity            
            AFileDialogTestingActivity.this.startActivityForResult(intent, 0);
        }
    };    
    private OnClickListener btnActivityOpenDownloads = new OnClickListener() {
        public void onClick(View v) {
            // Create the intent for call the activity.
            Intent intent = new Intent(AFileDialogTestingActivity.this, FileChooserActivity.class);
            // Define start folder.
            intent.putExtra(FileChooserActivity.INPUT_START_FOLDER, Environment.getExternalStorageDirectory() + "/Download/");
            // Call the activity            
            AFileDialogTestingActivity.this.startActivityForResult(intent, 0);          
        }
    };    
    private OnClickListener btnActivitySelectFolders = new OnClickListener() {
        public void onClick(View v) {
            // Create the intent for call the activity.
            Intent intent = new Intent(AFileDialogTestingActivity.this, FileChooserActivity.class);
            // Activate the folder mode.
            intent.putExtra(FileChooserActivity.INPUT_FOLDER_MODE, true);
            // Call the activity            
            AFileDialogTestingActivity.this.startActivityForResult(intent, 0);  
        }
    };    
    private OnClickListener btnActivityCreateFiles = new OnClickListener() {
        public void onClick(View v) {
            // Create the intent for call the activity.
            Intent intent = new Intent(AFileDialogTestingActivity.this, FileChooserActivity.class);
            // Activate the button for create files.
            intent.putExtra(FileChooserActivity.INPUT_CAN_CREATE_FILES, true);
            // Call the activity            
            AFileDialogTestingActivity.this.startActivityForResult(intent, 0);  
        }
    };  
    private OnClickListener btnActivitySelectImages = new OnClickListener() {
        public void onClick(View v) {
            // Create the intent for call the activity.
            Intent intent = new Intent(AFileDialogTestingActivity.this, FileChooserActivity.class);
            // Define the filter for select images.
            intent.putExtra(FileChooserActivity.INPUT_REGEX_FILTER, ".*jpg|.*png|.*gif|.*JPG|.*PNG|.*GIF");
            // Call the activity            
            AFileDialogTestingActivity.this.startActivityForResult(intent, 0);  
        }
    };
    private OnClickListener btnActivityAskConfirmation = new OnClickListener() {
        public void onClick(View v) {
            // Create the intent for call the activity.
            Intent intent = new Intent(AFileDialogTestingActivity.this, FileChooserActivity.class);
            // Activate the button for create files.
            intent.putExtra(FileChooserActivity.INPUT_CAN_CREATE_FILES, true);
            // Activate the confirmation dialogs.
            intent.putExtra(FileChooserActivity.INPUT_SHOW_CONFIRMATION_ON_CREATE, true);
            intent.putExtra(FileChooserActivity.INPUT_SHOW_CONFIRMATION_ON_SELECT, true);
            // Call the activity            
            AFileDialogTestingActivity.this.startActivityForResult(intent, 0); 
        }
    };
    private OnClickListener btnActivityCustomLabels = new OnClickListener() {
        public void onClick(View v) {
            // Create the intent for call the activity.
            Intent intent = new Intent(AFileDialogTestingActivity.this, FileChooserActivity.class);
            // Activate the folder mode.
            intent.putExtra(FileChooserActivity.INPUT_FOLDER_MODE, true);
            // Activate the button for create files.
            intent.putExtra(FileChooserActivity.INPUT_CAN_CREATE_FILES, true);
            // Activate the confirmation dialogs.
            intent.putExtra(FileChooserActivity.INPUT_SHOW_CONFIRMATION_ON_CREATE, true);
            intent.putExtra(FileChooserActivity.INPUT_SHOW_CONFIRMATION_ON_SELECT, true);
            // Define the labels.
            FileChooserLabels labels = new FileChooserLabels();
            labels.createFileDialogAcceptButton = "AcceptButton";
            labels.createFileDialogCancelButton = "CancelButton";
            labels.createFileDialogMessage = "DialogMessage";
            labels.createFileDialogTitle = "DialogTitle";
            labels.labelAddButton = "AddButton";
            labels.labelSelectButton = "SelectButton";
            labels.messageConfirmCreation = "messageConfirmCreation";
            labels.messageConfirmSelection = "messageConfirmSelection";
            labels.labelConfirmYesButton = "yesButton";
            labels.labelConfirmNoButton = "noButton";
            intent.putExtra(FileChooserActivity.INPUT_LABELS, (Serializable) labels);
            // Call the activity            
            AFileDialogTestingActivity.this.startActivityForResult(intent, 0); 
        }
    };
    private OnClickListener clickButtonOpenActivity = new OnClickListener() {
        public void onClick(View v) {
            Intent intent = new Intent(AFileDialogTestingActivity.this, FileChooserActivity.class);
            intent.putExtra(FileChooserActivity.INPUT_REGEX_FILTER, ".*pdf|.*jpg|.*png|.*mp3|.*mp4|.*avi");           
            intent.putExtra(FileChooserActivity.INPUT_SHOW_ONLY_SELECTABLE, true);           
            intent.putExtra(FileChooserActivity.INPUT_CAN_CREATE_FILES, true);
            intent.putExtra(FileChooserActivity.INPUT_FOLDER_MODE, true);
            intent.putExtra(FileChooserActivity.INPUT_SHOW_CONFIRMATION_ON_CREATE, true);
            intent.putExtra(FileChooserActivity.INPUT_SHOW_CONFIRMATION_ON_SELECT, true);
            // Define labels.
            FileChooserLabels labels = new FileChooserLabels();
            labels.createFileDialogAcceptButton = "AcceptButton";
            labels.createFileDialogCancelButton = "CancelButton";
            labels.createFileDialogMessage = "DialogMessage";
            labels.createFileDialogTitle = "DialogTitle";
            labels.labelAddButton = "AddButton";
            labels.labelSelectButton = "SelectButton";
            labels.messageConfirmCreation = "messageConfirmCreation";
            labels.messageConfirmSelection = "messageConfirmSelection";
            labels.labelConfirmYesButton = "yesButton";
            labels.labelConfirmNoButton = "noButton";
            intent.putExtra(FileChooserActivity.INPUT_LABELS, (Serializable) labels);   
            AFileDialogTestingActivity.this.startActivityForResult(intent, 0);
        }
    };
    // ---- Methods for display the results ----- //
    private FileChooserDialog.OnFileSelectedListener onFileSelectedListener = new FileChooserDialog.OnFileSelectedListener() {
        public void onFileSelected(Dialog source, File file) {
            source.hide();
            Toast toast = Toast.makeText(AFileDialogTestingActivity.this, "File selected: " + file.getName(), Toast.LENGTH_LONG);
            toast.show();
        }
        public void onFileSelected(Dialog source, File folder, String name) {
            source.hide();
            Toast toast = Toast.makeText(AFileDialogTestingActivity.this, "File created: " + folder.getName() + "/" + name, Toast.LENGTH_LONG);
            toast.show();
        }
    };
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (resultCode == Activity.RESULT_OK) {
            boolean fileCreated = false;
            String filePath = "";
            Bundle bundle = data.getExtras();
            if(bundle != null)
            {
                if(bundle.containsKey(FileChooserActivity.OUTPUT_NEW_FILE_NAME)) {
                    fileCreated = true;
                    File folder = (File) bundle.get(FileChooserActivity.OUTPUT_FILE_OBJECT);
                    String name = bundle.getString(FileChooserActivity.OUTPUT_NEW_FILE_NAME);
                    filePath = folder.getAbsolutePath() + "/" + name;
                } else {
                    fileCreated = false;
                    File file = (File) bundle.get(FileChooserActivity.OUTPUT_FILE_OBJECT);
                    filePath = file.getAbsolutePath();
                }
            }
            String message = fileCreated? "File created" : "File opened";
            message += ": " + filePath;
            Toast toast = Toast.makeText(AFileDialogTestingActivity.this, message, Toast.LENGTH_LONG);
            toast.show();
        }
    }
}
 
     
    