Anroid实现照相代码
来源:互联网 发布:网络推广合作协议 编辑:程序博客网 时间:2024/05/02 01:50
public class MyCamera extends Activity implements Callback {private SurfaceView m_surfaceView = null;private SurfaceHolder m_surfaceFolder = null;private Button m_btnCamera = null;private Button m_btnExit = null;private Camera m_Camera;private int m_iWidth = 600;private int m_iheight = 360;private String m_sFilePath = "";private String m_sFileName = "";/** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); m_surfaceView = (SurfaceView)findViewById(R.id.sfvCamera); m_btnCamera = (Button)findViewById(R.id.btnCamera); m_btnExit = (Button)findViewById(R.id.button1); //Take picture m_btnCamera.setOnClickListener(new OnClickListener() { public void onClick(View v) {m_Camera.autoFocus(m_AutoFocusCallBack);} }); //Get holder according to SurfaceView m_surfaceFolder = m_surfaceView.getHolder(); m_surfaceFolder.addCallback(this); m_surfaceFolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); //Set the storage path of picture this.setPicPath(); }public void surfaceChanged(SurfaceHolder arg0, int arg1, int arg2, int arg3) {Camera.Parameters parameters = m_Camera.getParameters();//Set the format of the pictureparameters.setPictureFormat(PixelFormat.JPEG);Size size = parameters.getPreviewSize();if (size.width != 640 && size.height != 480){parameters.setPreviewSize(m_iWidth, m_iheight);// set the size}m_Camera.setParameters(parameters);try {m_Camera.setPreviewDisplay(arg0);} catch (IOException e) {e.printStackTrace();m_Camera.release(); m_Camera = null; }m_Camera.startPreview();} public void surfaceCreated(SurfaceHolder arg0) {//Open cameram_Camera = Camera.open();}public void surfaceDestroyed(SurfaceHolder arg0) {//Stop taking picturem_Camera.stopPreview();//Release resourcem_Camera.release();m_Camera = null;}private AutoFocusCallback m_AutoFocusCallBack = new AutoFocusCallback() {public void onAutoFocus(boolean success, Camera camera) {m_Camera.takePicture(null, null, null, m_PictureCallback);}};PictureCallback m_PictureCallback = new PictureCallback() {public void onPictureTaken(byte[] data, Camera camera) {if (data != null) {//Save bitmap into SDCardsavePictureInSDCard(data);}}};private boolean setPicPath() {boolean bRet = true;File fileDir = null; //Judge whether SdCard existsboolean bSdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED); if (bSdCardExist) //Exist{ //Get the root pathfileDir = Environment.getExternalStorageDirectory(); } else{return false;}//Set the storage path of picturem_sFilePath = fileDir.toString() + "/ajis/pic/";//Create pathFile file = new File(m_sFilePath);if (!file.exists()) {file.mkdirs();}return bRet;}private void savePictureInSDCard(byte[] bytes){//File path and namem_sFileName= DateFormat.format(getResources().getString(R.string.strFormat_yyyyMMddhhMMss), Calendar.getInstance(Locale.CHINA))+ ".jpg";//Create fileFile file = new File(m_sFilePath + m_sFileName);if (!file.exists()) {try {file.createNewFile();}catch (IOException e) {e.printStackTrace();}}FileOutputStream out = null; try {out = new FileOutputStream(m_sFilePath + m_sFileName);} catch (FileNotFoundException e) {e.printStackTrace();}try {out.write(bytes);} catch (IOException e) {e.printStackTrace();}try {out.close();} catch (IOException e) {e.printStackTrace();}}}
- Anroid实现照相代码
- Anroid实现打电话
- Android照相并返回照相结果的最终代码
- C++、OpenCV实现照相功能
- 照相
- 照相
- 编写高效的anroid代码
- anroid
- Android调用Camera实现自定义照相
- Camera实现照相功能的关键步骤
- android调用camera实现自定义照相
- Android-实现简单照相与摄像
- iOS-AVCapture,自定义实现照相功能
- iOS-AVCapture,自定义实现照相功能
- Android系列之照相功能的实现
- Anroid之实现菜单几个基本步骤
- 基于HorizontalScrollView的anroid侧滑栏的实现
- Anroid ListView分组和悬浮Header实现
- JNI学习笔记
- SQL语法——操作功能(插入、更新、删除记录,删除表)
- 使用scrollX, pageXOffset, scrollLeft获取滚动条到窗口做边界的距离,及其各自的特点
- java移位运算符
- ubuntu 激活root
- Anroid实现照相代码
- PO BO VO DTO POJO DAO概念及其作用(转)
- Windows 8应用开发书籍汇总
- java语言解析csv文件
- UIPickerView 常用方法
- C++中常被杀函数
- 开机显示NTDRISMISSING
- html5新增的属性和废除的属性简要概述 详细出处参考:http://www.jb51.net/html5/73524.html
- js正则去除空格