开发者

how to get path of android galley folder dynamically?

i want to get android camera gallery folder path to save images in that

in different mobile ph开发者_C百科ones it is different for example in galaxy it is

/sdcard/DCIM/camera/image.jpg

and in other phones for example

/sdcard/media/images/image.jpg

hot get path up to gallery folder dynamically?

any help would be appreciated.


You Can Use Following example of File Explorer Which Display All Stuff of Your phone and You will Select Your items from galary

FileExplorer.java

  package com.fileUpload;

  import java.io.File;
  import java.util.ArrayList;
  import java.util.List;
  import android.app.AlertDialog;
  import android.app.ListActivity;
  import android.content.DialogInterface;
  import android.content.Intent;
  import android.os.Bundle;
  import android.view.View;
  import android.widget.ArrayAdapter;
  import android.widget.ListView;
  import android.widget.TextView;

  public class FileExplorer extends ListActivity {

  private List<String> item;
  private List<String> path;
  private String root="/";
  private TextView myPath;

  /** Called when the activity is first created. */
  @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.file);
    myPath = (TextView)findViewById(R.id.path);
    getDir(root);
}

private void getDir(String dirPath)
{
 myPath.setText("Location: " + dirPath);

 item = new ArrayList<String>();
 path = new ArrayList<String>();

 File f = new File(dirPath);
 File[] files = f.listFiles();

 if(!dirPath.equals(root))
 {

  item.add(root);
  path.add(root);

  item.add("../");
  path.add(f.getParent());

 }

 for(int i=0; i < files.length; i++)
 {
   File file = files[i];
   path.add(file.getPath());
   if(file.isDirectory())
    item.add(file.getName() + "/");
   else
    item.add(file.getName());
 }

 ArrayAdapter<String> fileList =
  new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, item);
 setListAdapter(fileList);
}

@Override
protected void onListItemClick(ListView l, View v, int position, long id) {

File file = new File(path.get(position));

  if (file.isDirectory())
  {
    if(file.canRead())
        getDir(path.get(position));
   else
   {
      new AlertDialog.Builder(this)
      .setIcon(R.drawable.icon)
      .setTitle("[" + file.getAbsolutePath() + "] folder can't be read!")
      .setPositiveButton("OK", 
       new DialogInterface.OnClickListener() {

          @Override
          public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
          }
         }).show();
     }
   }
   else
   {
       Bundle b=new Bundle();
       b.putString("param1",file.getAbsolutePath());
       Intent i=new Intent(this,DemoActivity.class);
       i.putExtras(b);
       startActivity(i);

 }
 }
 }
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜