我正在尝试运行一项服务,该服务可以在拍照时实时保存设备现有相机中的数据。我想这样做而无需打开活动或创建我自己的相机应用程序。
我的应用正在后台工作。用户应该在默认的相机应用程序中正常拍照,不受干扰。
有没有人知道该怎么做?
还是指点我的方向?
谢谢!
答案 0 :(得分:1)
要拍摄照片,您必须先调用Camera.startPreview()。要调用Camera.startPreview(),您必须先调用Camera.setPreviewDisplay(Holder)。要设置priview,您必须从SurfaceView获取Holder。所以无论如何你必须在你的布局中使用SurfaceView。确定你必须有布局(换句话说就是活动)。
答案 1 :(得分:1)
您是否尝试启动设置相机预览然后启动服务的活动?在服务运行并且对相机进行了硬性参考后,只需模拟主页按钮:
Intent i = new Intent(Intent.ACTION_HOME);
i.addCategory(Intent.CATEGORY_HOME);
startActivity(i);
这样你的活动就会在后台运行,但仍然活着(直到Android声称拥有更多内存)。