Armazenando dados no cartão SD no Android

Usando opágina de armazenamento de dados nos documentos, Tentei armazenar alguns dados no cartão SD. Este é o meu código:

    // Path to write files to
    String path = Environment.getExternalStorageDirectory().getAbsolutePath() +
                  "/Android/data/"+ctxt.getString(R.string.package_name)+"/files/";
    String fname = "mytest.txt";

    // Current state of the external media
    String extState = Environment.getExternalStorageState();

    // External media can be written onto
    if (extState.equals(Environment.MEDIA_MOUNTED))
    {
        try {
            // Make sure the path exists
            boolean exists = (new File(path)).exists();  
            if (!exists){ new File(path).mkdirs(); }  

            // Open output stream
            FileOutputStream fOut = new FileOutputStream(path + fname);

            fOut.write("Test".getBytes());

            // Close output stream
            fOut.flush();
            fOut.close();

        } catch (IOException ioe) {
            ioe.printStackTrace();
        }

Quando crio o novo FileOutputStream, recebo uma exceção FileNotFound. Eu também notei que "mkdirs ()" não parece criar o diretório.

Alguém pode me dizer o que estou fazendo de errado?

Estou testando em um AVD com um cartão SD de 2 GB e "hw.sdCard: yes", o File Explorer do DDMS no Eclipse diz que o único diretório no cartão SD é "LOST.DIR".

questionAnswers(2)

yourAnswerToTheQuestion