android 自定义相机,Android应用开发之android 7自定义相机预览及拍照功能
本文将带你了解Android应用开发android 7自定义相机预览及拍照功能,希望本文对大家学Android有所帮助。
本文实例为大家分享了Android实现摄像头切换,拍照及保存到相册,预览等功能,解决android7拍照之后不能连续预览的问题、参数设置相关问题以及前后摄像头语言颠倒等问题。
import android.Manifest;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Matrix;
import android.graphics.PixelFormat;
import android.hardware.Camera;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
import android.os.Handler;
import android.support.v4.app.ActivityCompat;
import android.util.Log;
import android.view.KeyEvent;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.View;
import android.view.WindowManager;
import android.widget.TextView;
import com.hama.tracker.R;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class CamaraActivity extends Activity implements View.OnClickListener {
@Bind(R.id.return_back)
TextView returnBack;
@Bind(R.id.tvswitch_camera)
TextView tvswitchCamera;
//启动摄像机
private Camera mCamera;
public boolean isopen_camara = false;
private SurfaceView surfaceView;
private SurfaceHolder mholder = null;
private SurfaceCallback previewCallBack;
private boolean isTakingPhoto;//是否正在拍照
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
verifyPermission(new String[]{Manifest.permission.CAMERA});
// getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_camara);
ButterKnife.bind(this);
// 预览控件
surfaceView = (SurfaceView) this
.findViewById(R.id.surfaceView);
// 设置参数
surfaceView.getHolder().setKeepScreenOn(true);
surfaceView.getHolder().setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
returnBack.setOnClickListener(this);
tvswitchCamera.setOnClickListener(this);
EventBus.getDefault().register(this);
}
android 自定义相机,Android应用开发之android 7自定义相机预览及拍照功能相关推荐
- Android 音视频开发(三) -- Camera2 实现预览、拍照功能
音视频 系列文章 Android 音视频开发(一) – 使用AudioRecord 录制PCM(录音):AudioTrack播放音频 Android 音视频开发(二) – Camera1 实现预览.拍 ...
- Android 音视频开发(二) -- Camera1 实现预览、拍照功能
音视频 系列文章 Android 音视频开发(一) – 使用AudioRecord 录制PCM(录音):AudioTrack播放音频 Android 音视频开发(二) – Camera1 实现预览.拍 ...
- android ndk 多线程mk,NDK开发之Android.mk文件编写
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 现在我们把android稍微写复杂些.在项目根目录下创建一个lib1文件夹 结构如图: test10.h和test11. ...
- android百度地图定位自定义图标,Android应用开发之android 百度地图自定义圆,更改默认图标等常用方法...
本文将带你了解Android应用开发之android 百度地图自定义圆,更改默认图标等常用方法,希望本文对大家学Android有所帮助. 总结了一下百度地图常用的方法(前提是集成百度地图环境成功): ...
- android百度地图画圆,Android应用开发之android 百度地图自定义圆,更改默认图标等常用方法...
本文将带你了解Android应用开发android 百度地图自定义圆,更改默认图标等常用方法,希望本文对大家学Android有所帮助. 总结了一下百度地图常用的方法(前提是集成百度地图环境成功): 1 ...
- android换肤的实现方案,Android应用开发之Android一键换肤功能实现
本文将带你了解Android应用开发之Android一键换肤功能实现,希望本文对大家学Android有所帮助. < 市面上对数的App都提供换肤功能,这里暂且不讲白天和夜间模式 下图是网易云音乐 ...
- android清除缓存 代码,Android应用开发之Android应用清除缓存一般清理目录和代码的教程...
本文将带你了解Android应用开发Android应用清除缓存一般清理目录和代码的教程,希望本文对大家学Android有所帮助. 一个应用安装完成,会有缓存,缓存一般分为内部存储的和外置的,内存中路径 ...
- 3G应用开发之Android 传智播客 基础知识总结
3G应用开发之Android Android应用开发之3G 3G应用开发之Android 3G应用开发之Android 应用开发之 讲师: 讲师:黎活明 北京传智 播客教育 www.itcast.c ...
- android 函数返回string,Android应用开发之android 对话框对于返回值的处理方法
本文将带你了解Android应用开发之android 对话框对于返回值的处理方法,希望本文对大家学Android有所帮助. android对话框是异步的,因此无法获得其返回值. 例如: 我们给出一个提 ...
- android app启动流程分析,Android应用开发之Android 7.0 Launcher3的启动和加载流程分析...
本文将带你了解Android应用开发Android 7.0 Launcher3的启动和加载流程分析,希望本文对大家学Android有所帮助. Android 7.0 Launcher3的启动和加载流程 ...
最新文章
- Java算法练习——正则表达式匹配
- python与鸭子类型
- 仿QQ6 0侧滑之ViewDragHelper的使用(一)
- numpy函数:[6]arange()详解
- MinIO存储桶通知指南 ​​​​​​​
- myeclipse 8.5 安装jbpm3.2开发插件
- 软件测试第一部分——初步概念与过程
- 事务方法调用事务方法_实现系统调用的几种方法
- cs1.6服务器修改游戏类型,cs1.6联机及游戏模式详细解读
- java导出建表语句_由 Java Entity 类自动生成 SQL建表语句
- 如何将密切好友的微信聊天记录恢复到自己的微信中
- 物联网和边缘部署的5大嵌入式工控机设计要求
- Ant 下载安装配置使用教程
- 完美解决Win10 X64非原装版系统打不开CHM文件
- daphile的dsd设置_小块头有大能量 篇二:JaguarBoard之Daphile HiFi 畅享
- 虚拟机VMware安Mac OS时没有Apple mac选项
- 淘宝心选在大润发开店了,背后意味着什么?
- exp与expdp区别
- 软件架构非功能需求——互操作性
- 国信证券学习系列(5)
热门文章
- VSTT Rosario CTP
- 点击场景中的物件无法定位到Hierarchy
- @value取不到值_Bamboo window上环境变量 HOMEDRIVE 及 HOMEPATH 获取不到的问题
- [ASP.NET MVC 小牛之路]08 - Area 使用
- asp.net 页面引入外部JS 在IE6下延迟加载报错,IE7+均没问题
- 关于IIS中Request.ServerVariables(SCRIPT_NAME)的bug
- 指针的意义和linux的内存回收艺术
- 修改Wordpress插件---advanced-access-manager.1.7.3---
- 老人为啥怒砸30辆车
- 智能实验室-杀马(Defendio) 4.11.0.790