android-拍照
2017-02-13 19:58
127 查看
代码如下
权限
package com.example.android_camera; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.PixelFormat; import android.hardware.Camera; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.SurfaceHolder; import android.view.SurfaceView; import android.view.View; import android.widget.Toast; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; public class MainActivity extends AppCompatActivity { private SurfaceView sv_main_surface; private Camera camera; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); sv_main_surface = (SurfaceView) findViewById(R.id.sv_main_surface); sv_main_surface.getHolder().addCallback(new SurfaceHolder.Callback() { @Override public void surfaceCreated(SurfaceHolder surfaceHolder) { //打开照相机 camera = Camera.open(); //设置参数 Camera.Parameters parameters=camera.getParameters(); parameters.setPictureFormat(PixelFormat.JPEG); parameters.set("jpeg-quality",85); camera.setParameters(parameters); //将画面展示到surfaceView try { camera.setPreviewDisplay(sv_main_surface.getHolder()); } catch (IOException e) { e.printStackTrace(); } //开启预览效果 camera.startPreview(); } @Override public void surfaceChanged(SurfaceHolder surfaceHolder, int i, int i1, int i2) { } @Override public void surfaceDestroyed(SurfaceHolder surfaceHolder) { if(camera!=null){ camera.stopPreview(); camera.release(); camera=null; } } }); } public void takePhoto(View view){ camera.takePicture(null, null, new Camera.PictureCallback() { @Override public void onPictureTaken(byte[] bytes, Camera camera) { //技术:图片压缩技术 Bitmap bitmap=BitmapFactory.decodeByteArray(bytes,0,bytes.length); try { FileOutputStream fos=new FileOutputStream("/mnt/sdcard/6666"+System.currentTimeMillis()+".png"); bitmap.compress(Bitmap.CompressFormat.PNG,85,fos); camera.stopPreview(); camera.startPreview(); } catch (FileNotFoundException e) { e.printStackTrace(); } } }); } }
权限
<uses-permission android:name="android.permission.CAMERA "/>
相关文章推荐
- Android拍照
- android相机拍照
- Android拍照和图片处理类应用盘点
- Android中调用摄像头并自动对焦拍照
- Android [摄像头问题] 拍照如何获取原图?
- Android 拍照是开启(调用)闪光灯
- Android拍照和图片处理类应用盘点
- Android 调用相册 拍照 实现系统控件缩放 切割图片
- Android拍照、录像、录音代码范例
- android相机拍照
- 在Android中调用图片、视频、音频、录音、拍照
- Android调用手机拍照以及从相册选择照片
- 在Android 中调用选择图片、视频、添加音频、录音、拍摄视频、拍照等其他的功能
- android 实现拍照的2种方法
- zz拍照,搜索!体验 Google Goggle for Android
- Android拍照上传程序的xml配置文件
- 基于Android的 拍照上传 程序开发
- Android image的示例 拍照显示
- 在Android中调用图片、视频、音频、录音、拍照
- android -调用系统的拍照程序