android开发 调用系统相机后onActivityResult如何获取刚拍一张图片的名称
3个回答
展开全部
Intent intentFromCapture = new Intent( MediaStore.ACTION_IMAGE_CAPTURE);
// checkHasSdcard 自定义函数,判断存储卡是否可用
if (checkHasSdcard()) {
File file = new File(“/mnt/SDCard/temp/”);
if (!file.exists())
file.mkdirs();
// /mnt/SDCard/temp/tmp_image.jpg 这是拍照后保存的文件,也就是说要自定义拍照后的文件名
intentFromCapture.putExtra(MediaStore.EXTRA_OUTPUT,
Uri.fromFile(new File(“/mnt/SDCard/temp/”, "tmp_image.jpg")));
}
startActivityForResult(intentFromCapture, 11);
然后在 onActivityResult 里就可以对读取该文件了。
// checkHasSdcard 自定义函数,判断存储卡是否可用
if (checkHasSdcard()) {
File file = new File(“/mnt/SDCard/temp/”);
if (!file.exists())
file.mkdirs();
// /mnt/SDCard/temp/tmp_image.jpg 这是拍照后保存的文件,也就是说要自定义拍照后的文件名
intentFromCapture.putExtra(MediaStore.EXTRA_OUTPUT,
Uri.fromFile(new File(“/mnt/SDCard/temp/”, "tmp_image.jpg")));
}
startActivityForResult(intentFromCapture, 11);
然后在 onActivityResult 里就可以对读取该文件了。
展开全部
应该在intent里面,Intent.getData()是获得Uri,试试别的,比如getExtra()之类的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public class TestCameraActivity extends Activity implements OnClickListener{ private Uri mOutPutFileUri;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button takePiCButton = (Button) this.findViewById(R.id.button1);
takePiCButton.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button1:
saveFullImage();
break;
default:
break;
}
}
private void saveFullImage(){
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
//文件夹aaaa
String path = Environment.getExternalStorageDirectory().toString()+"/aaaa";
File path1 = new File(path);
if(!path1.exists()){
path1.mkdirs();
}
File file = new File(path1,System.currentTimeMillis()+".jpg");
mOutPutFileUri = Uri.fromFile(file);
intent.putExtra(MediaStore.EXTRA_OUTPUT, mOutPutFileUri);
startActivityForResult(intent, 1);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == 1){
Uri imageUri = null;
if(data != null){
if(data.hasExtra("data")){
Bitmap thunbnail = data.getParcelableExtra("data");
//处理缩略图
}
}else{
//处理mOutPutFileUri中的完整图像
}
}
}
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button takePiCButton = (Button) this.findViewById(R.id.button1);
takePiCButton.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button1:
saveFullImage();
break;
default:
break;
}
}
private void saveFullImage(){
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
//文件夹aaaa
String path = Environment.getExternalStorageDirectory().toString()+"/aaaa";
File path1 = new File(path);
if(!path1.exists()){
path1.mkdirs();
}
File file = new File(path1,System.currentTimeMillis()+".jpg");
mOutPutFileUri = Uri.fromFile(file);
intent.putExtra(MediaStore.EXTRA_OUTPUT, mOutPutFileUri);
startActivityForResult(intent, 1);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == 1){
Uri imageUri = null;
if(data != null){
if(data.hasExtra("data")){
Bitmap thunbnail = data.getParcelableExtra("data");
//处理缩略图
}
}else{
//处理mOutPutFileUri中的完整图像
}
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询