导航:首页 > 操作系统 > android调用相机保存图片

android调用相机保存图片

发布时间:2023-02-01 08:40:38

android 调用系统相机,不拍照直接按返回会怎么样

@Override
/*处理拍照完成后,传递数值事件*/
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
if (requestCode != 0) {
return;
}
//加上这个判断就好了
if(resultCode==Activity.RESULT_CANCELED)
{
Intent it =new Intent(getApplicationContext(), GrenxxActivity.class);
it.putExtra("uno",uno);
startActivity(it);
finish();
return;
}

⑵ Android开发中怎么将照片存储到系统相册中

java">//创建输出流,指向SD卡的Pictures文件夹
finalFiledirectory=Environment.(Environment.DIRECTORY_DCIM);
//创建保存的文件
Filefile=newFile(directory,"test.png");
FileOutputStreamout=null;
try{
out=newFileOutputStream(file);

}catch(FileNotFoundExceptione){
e.printStackTrace();
}catch(IOExceptione){
e.printStackTrace();
}finally{

}
//bitmap就是你的图片
bitmap.compress(Bitmap.CompressFormat.PNG,100,out);

⑶ 一个关于android的问题,我通过下面的方法调用相机,可是怎么可以在拍照结束后获取照片的路径呢

Android调用系统拍照的代码:

  1. 创建Intent Intent openCameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

    String imagePath = Environment.getExternalStorageDirectory() + "/image" ;

  2. 设置文件路径 File file = new File(imagePath);

    if(!file.exists()){

    file.mkdirs(); }

  3. 设置URI,指定相册拍照后保存图片的路径,Uri imageUri = Uri.fromFile(new File(imagePath, "image.jsp"));

    openCameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);

    startActivityForResult(openCameraIntent, REQUEST_CODE_TAKING_PICTURES);

  4. 拍照完以后,文件就会保存在这个指定的目录下了。Uri 里指定了相机拍照的路径。

⑷ android 调用系统照相机拍照后获得图片路径

{privateUrimOutPutFileUri;
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

ButtontakePiCButton=(Button)this.findViewById(R.id.button1);
takePiCButton.setOnClickListener(this);
}

@Override
publicvoidonClick(Viewv){
switch(v.getId()){
caseR.id.button1:
saveFullImage();
break;

default:
break;
}
}

privatevoidsaveFullImage(){
Intentintent=newIntent(MediaStore.ACTION_IMAGE_CAPTURE);
//文件夹aaaa
Stringpath=Environment.getExternalStorageDirectory().toString()+"/aaaa";
Filepath1=newFile(path);
if(!path1.exists()){
path1.mkdirs();
}
Filefile=newFile(path1,System.currentTimeMillis()+".jpg");
mOutPutFileUri=Uri.fromFile(file);
intent.putExtra(MediaStore.EXTRA_OUTPUT,mOutPutFileUri);
startActivityForResult(intent,1);

}

@Override
protectedvoidonActivityResult(intrequestCode,intresultCode,Intentdata){
super.onActivityResult(requestCode,resultCode,data);
if(requestCode==1){
UriimageUri=null;
if(data!=null){
if(data.hasExtra("data")){
Bitmapthunbnail=data.getParcelableExtra("data");
//处理缩略图
}
}else{
//处理mOutPutFileUri中的完整图像
}

}
}
}

⑸ android,调用系统相机拍完照片并保存另一个activity 上,后退时,最初的activity却被系统销毁,怎么办

离开了只是暂时挂起activity,系统不会随便销毁activity的,除非你自己写了finish或者内存不足了

⑹ Android 使用系统相机拍照和读取相册照片

1.拍照 (对于7.0以上的版本,不在允许直接访问uri)
`

若不指定输出路径intent.putExtra(MediaStore.EXTRA_OUTPUT, getTempUri(srcActivity)); 在onActivityResult()中,通过

`
可以拿到uri,但获得的图片是被压缩过的。若指定intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);输出路径,则此处的intent为null,但可以使用我们存的uri读取照片,此时的照片没有被压缩。

2.从相册中读取照片, 方法:
`

`
即使设置 intent.putExtra(MediaStore.EXTRA_OUTPUT, getTempUri(srcActivity));输出路径,仍然不能从此路径中读取,只能在onActivityForResult()中通过event.uri = intent.getData();方式获得图片uri。
此种现象也好理解,拍照时产生新的图片,自然可根据设置的uri进行图片保存,而读取相册时,图片已经在目录中不能转移到自己设定的uri中。

Androidmanifest.xml中
`

在 res/xml/provider_paths.xml
`

<?xml version="1.0" encoding="utf-8"?>
<paths>
<external-path name="JDTobs" path=""/>
<files-path name="name" path="path" />
<cache-path name="name" path="path" /> <external-path name="name" path="path" />
<external-files-path name="name" path="path" />
<external-cache-path name="name" path="path" /> </paths> `

读取uri

⑺ android中当我点击一个“复选款”的时候就打开“照相机”而且还要保存拍照的图片到指定目录。

你在OnActivityResult方法中 不要保存图片到SD卡中,只写上xxxxview.setImageBitmap(bitmap);或者是自定义个方法 然后在你登陆的onClick方法中写文件保存到SD卡中

⑻ Android的相机调用时模拟器调试我拍的照片会保存到sd卡的相应位置,但是用真机时相应位置没有图片文件

manifest里是否添加了相应权限
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
有时候不同手机需要不同的路径写法,大部分是这样:

/sdcard/××/ -> /mnt/sdcard/××/

⑼ android 调用系统照相机,保存后回到前一个activity

修改相机源码编译,因为相机返回功能是点2次,保存并没有退出动作,这个不改源码或者在相机源码里面加Intent 是做不到这种效果的 。 我刚想了下,在广播或者Service里面加 OnKeyDown 方法 ,但是广播和service没有这方法,所以不能够靠监听到 返回键的键值 4 ,从而直接 Intent到 A activity的功能就无法实现 ,所以建议修改相机源码,即可实现 。 如果是纯应用, 抱歉,能想的都想了,实现不了。

⑽ Android调用手机相机拍照,保存图片会出现2张解决办法。

最近项目中使用系统相机拍照,保存图片,发现一些问题。

  读取图片旋转角度,然后再旋转回去。

   使用BitmapFactory.Options,能更准确的获取图片格式,
   判断地址末尾 .gif 有时候会不准确(不推荐)

  上传服务器,一般使用地址,但是用户手动删除图片后,地址是无效的。为了防止地址无效,可以对需要上传图片地址做保存,但又希望系统读取不到,可以对保存地址进行修改。

  读取图片地址api

  我们可以去系统相册查看两张图片,会发现两张图片的地址是不一样的,而且两张图片的大小也不同。
出现2张的原因是:
 (1)调用系统相机,拍照完成我们会生成一个保存地址,而这个地址是: /storage/android/data/包名/Picture/ ,这张是我们保存的拍照图片。
 (2)相同的一张图片在哪?这个地址是:/storage/Pictures/ ,这张图片是系统复制的App目录下Pictures中的图片。

  所以就会出现在系统相册两张图片,但两张图片大小不一致,地址不同。

  调用系统api,只能读取到一张,是系统复制的那张,也就是 /storage/Pictures/ 目录下的这张,但是/storage/android/data/包名/Picture/ 目录下的没有读取到。

  知道了问题,就有解决办法,可分为三种方法:
 (1)第一种方法:
     保存图片的时候,修改下地址(可参照标题 3 ,这样让系统无法识别出这张图片),结果就是,我读取不到,系统也别想读取不到,在系统相册里也就看不到这张图片。

 (2)第二种方法:
     因为api无法读取到,那我们就直接再读取/storage/android/data/包名/Picture/ 下的文件,把图片一块加入到同一个集合中用于展示,这样所有的图片都有了,但是系统相册中还是有两张图片,为解决这个问题。

 (3)第三种方法:( )
     在我们保存图片的时候,直接保存到 /storage/Pictures/ 这个目录下,也不用系统帮我们复制了,这样就只会出现一张,而且我们也能调用api直接读取到,两个问题全都解决了,完美!



(如果以上有错误或者有更优美的方式,感谢指出并改之,与君共勉)
这是我项目中出现的问题,希望能够帮助到你,Thanks,Bye!

阅读全文

与android调用相机保存图片相关的资料

热点内容
华三交换机保存命令 浏览:597
命令方块怎么调键盘 浏览:841
不把密码存在服务器上怎么办 浏览:398
怎么让指令方块的命令消失 浏览:543
用单片机做plc 浏览:404
云服务器进入子目录命令 浏览:795
服务器机柜如何配电 浏览:578
怎么删除iphone资源库里的app 浏览:940
pdf鱼 浏览:648
单片机pcf8591什么作用 浏览:805
sql命令学院 浏览:283
加密软件在电脑那个盘 浏览:988
android获取外部存储 浏览:573
怎么查自己家的服务器地址 浏览:858
编程c语言工作好不好 浏览:569
单片机焊接地怎么连接 浏览:694
游戏源码怎么抓 浏览:216
程序员帮大家引走怪物 浏览:16
手机网页小游戏源码 浏览:513
战地一服务器怎么设置管理员 浏览:396