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);
}
}
}
精彩评论