导航:首页 > 操作系统 > android实现后台拍照

android实现后台拍照

发布时间:2022-10-17 18:17:14

Ⅰ 如何在android中后台开启摄像头默默拍照

(1)CameraActivity.java

package com.camera.test;import android.app.Activity;import android.content.pm.ActivityInfo;import android.os.Bundle;import android.view.Window;import android.view.WindowManager;import android.widget.RelativeLayout;public class CameraActivity extends Activity {private CameraView view;public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);requestWindowFeature(Window.FEATURE_NO_TITLE);// 设置横屏模式以及全屏模式view = new CameraView(this);// 通过一个surfaceview的view来实现拍照view.setId(1);view = new CameraView(this, this);setContentView(R.layout.camera_layout);RelativeLayout relative = (RelativeLayout) this.findViewById(R.id.ly);RelativeLayout.LayoutParams Layout = new RelativeLayout.LayoutParams(3, 3);// 设置surfaceview使其满足需求无法观看预览Layout.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, 1);Layout.addRule(RelativeLayout.ALIGN_PARENT_RIGHT, 1);relative.addView(view, Layout);}}(2) CameraView.javapackage com.camera.test;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Date;import android.app.Activity;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Point;import android.graphics.PointF;import android.hardware.Camera;import android.hardware.Camera.AutoFocusCallback;import android.hardware.Camera.ShutterCallback;import android.media.AudioManager;import android.media.FaceDetector;import android.media.FaceDetector.Face;import android.os.Environment;import android.os.Handler;import android.view.SurfaceHolder;import android.view.SurfaceView;import android.widget.Toast;public class CameraView extends SurfaceView implements SurfaceHolder.Callback,Camera.PictureCallback{private SurfaceHolder holder;private Camera camera;private Camera.Parameters parameters;private Activity act;private Handler handler = new Handler();private Context context;private SurfaceView surfaceView;private AudioManager audio;private int current;public CameraView(Context context) {super(context);surfaceView = this;audio = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);final int current = audio.getRingerMode();audio.setRingerMode(AudioManager.RINGER_MODE_SILENT);this.context = context;holder = getHolder();// 生成Surface Holderholder.addCallback(this);holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);// 指定Push Bufferhandler.postDelayed(new Runnable() {@Overridepublic void run() {if (camera == null) {handler.postDelayed(this, 1 * 1000);// 由于启动camera需要时间,在此让其等两秒再进行聚焦知道camera不为空} else {camera.autoFocus(new AutoFocusCallback() {@Overridepublic void onAutoFocus(boolean success, Camera camera) {if (success) {camera.takePicture(new ShutterCallback() {// 如果聚焦成功则进行拍照@Overridepublic void onShutter() {}}, null, CameraView.this);} else {}}});}}}, 2 * 1000);}public CameraView(Context context, Activity act) {// 在此定义一个构造方法用于拍照过后把CameraActivity给finish掉this(context);this.act = act;}@Overridepublic void surfaceCreated(final SurfaceHolder holder) {// TODO Auto-generated method stubcamera = Camera.open();// 摄像头的初始化handler.postDelayed(new Runnable() {@Overridepublic void run() {if (holder != null) {try {camera.setPreviewDisplay(holder);} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}} else {handler.postDelayed(this, 1 * 1000);}}}, 2 * 1000);}@Overridepublic void surfaceChanged(SurfaceHolder holder, int format, int width,int height) {// TODO Auto-generated method stubparameters = camera.getParameters();camera.setParameters(parameters);// 设置参数camera.startPreview();// 开始预览}@Overridepublic void surfaceDestroyed(SurfaceHolder holder) {// TODO Auto-generated method stub}public void onPictureTaken(byte[] data, Camera camera) {// 拍摄完成后保存照片try {Date date = new Date();SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");String time = format.format(date);//在SD卡上创建文件夹File file = new File(Environment.getExternalStorageDirectory()+ "/myCamera/pic");if (!file.exists()) {file.mkdirs();}String path = Environment.getExternalStorageDirectory()+ "/myCamera/pic/" + time + ".jpg";data2file(data, path);camera.setPreviewCallback(null);camera.stopPreview();camera.release();camera = null;holder.removeCallback(CameraView.this);audio.setRingerMode(current);act.finish();//uploadFile(path);} catch (Exception e) {}}private void data2file(byte[] w, String fileName) throws Exception {// 将二进制数据转换为文件的函数FileOutputStream out = null;try {out = new FileOutputStream(fileName);out.write(w);out.close();} catch (Exception e) {if (out != null)out.close();throw e;}}// private void uploadFile(String filePath)// 拍照过后上传文件到服务器// {// }}

Ⅱ android 的 camera能在后台运行吗

android中的Camera若要拍照,好像必须有个前端预览才行。不能在纯service下运行。 设计成这样是为了安全考虑,防止泄露个人隐私。

Ⅲ android怎样后台调用摄像头自动拍照

安全中心允许软件调用摄像头

Ⅳ opencv for android 如何实现后台启动摄像头,不显示预览界面

现在Android智能手机的像素都会提供照相的功能,大部分的手机的摄像头的像素都在1000万以上的像素,有的甚至会更高。它们大多都会支持光学变焦、曝光以及快门等等。
下面的程序Demo实例示范了使用Camera v2来进行拍照,当用户按下拍照键时,该应用会自动对焦,当对焦成功时拍下照片。

Ⅳ android 怎么实现同时支持拍照和录像的功能啊

可以拿到每帧的数据自己做编解码和存储,录像还好,拍照的话只能存储preview的一帧画面,而不能用系统拍照函数得到高分辨率图片数据。想在录像的时候同时可以拍高质量图片做不到,因为系统拍照的功能会停止preview,而停止preview后就不能录像了。

Ⅵ 安卓手机后台继续摄像

锁屏摄像可以
后台摄像app是一款手机后台摄像运用,用户能够根据手机软件开启摄像机,让摄像机在后台开展拍_,不许人发觉,为用户拍_出示便捷。功能介绍该运用便捷大家更强的开展应用前段时间在做一个Android项目,其中涉及到需要实现“后台”静默打开前置摄像头连续拍照进行人脸检测
后台摄像app是一个好用的手机摄像软件,可以让手机在后台摄像,并且不被发觉,在摄像的时候你还可以使用手机打开其他应用哦,十分方便该应用方便人们更好的进行使用手机进行摄像,为了方便使用该软件进行了摄像界面隐藏的处理,在进入程序主界面是一个记事本的样式,点击摄像图标就可以进行后台摄

Ⅶ android 的 camera能在后台运行吗

android 的 camera能在后台运行
android中的Camera若要拍照,好像必须有个前端预览才行。不能在纯service下运行。
设计成这样是为了安全考虑,防止泄露个人隐私。

Ⅷ android 的 camera能在后台运行吗

android中的Camera若要拍照,好像必须有个前端预览才行。不能在纯service下运行。
设计成这样是为了安全考虑,防止泄露个人隐私。

阅读全文

与android实现后台拍照相关的资料

热点内容
搜索pdf内容 浏览:497
程序员装机必备的软件 浏览:9
php微信第三方登录demo 浏览:536
上海php工具开发源码交付 浏览:791
哪里有求购黄页的源码 浏览:194
商城矿机源码矿场系统 浏览:198
单片机的led灯熄灭程序 浏览:224
洛阳python培训 浏览:702
小键盘命令 浏览:194
单片机c语言返回主程序 浏览:816
dockerpythonweb 浏览:970
程序员算法有多强 浏览:717
pythonworkbook模块 浏览:245
什么app能查医生 浏览:175
轻量级的编程语言 浏览:340
程序员那么可爱生孩子 浏览:432
后缀him3加密文件是什么软件 浏览:986
坚果隐藏app为什么要140版本才能用 浏览:315
淘宝dns服务器地址 浏览:259
领英转型app哪个好用 浏览:943