相关疑难解决方法(0)

使用camera2 API无需预览即可捕获图片

我想要实现的是捕获图片而不显示预览,直接将输出发送到ImageReader.我使用Camera2Basic示例作为起点.但是,我的调用ImageReader永远不会被调用,因此没有图像被发送到它Surface.我真的需要先显示预览吗?

这是摄像机代码,它按照异步回调的流程排序:

private ImageReader imageReader;
private Handler backgroundHandler;
private HandlerThread backgroundThread;
private String cameraId;
private CameraDevice cameraDevice;
private CameraCaptureSession cameraCaptureSession;
    @Override
    public void onCreate() {
        setupCamera2();
    }

    private void setupCamera2() {
        CameraManager manager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);

        try {

            for (String cameraId : manager.getCameraIdList()) {
            CameraCharacteristics characteristics = manager.getCameraCharacteristics(cameraId);

            if (characteristics.get(CameraCharacteristics.LENS_FACING) != CameraCharacteristics.LENS_FACING_FRONT) {
                continue;
            }

            this.cameraId = cameraId;

            int[] picSize = Settings.getPictureSize();
            int picWidth = picSize[0];
            int picHeight = picSize[1];

            imageReader = …
Run Code Online (Sandbox Code Playgroud)

camera android

20
推荐指数
3
解决办法
4万
查看次数

QR码扫描没有全屏相机

当应用程序的主视图在屏幕上时,我需要在我的Android应用程序中连续扫描QR码.主视图应包含带摄像头预览的窗口,但不包含全屏摄像头预览.

用法示例:包含扫描的QR码列表和相机预览的主视图.扫描新的QR码时,会将其添加到列表中.

可能吗?

android qr-code zxing

16
推荐指数
1
解决办法
2269
查看次数

WindowManager $ BadTokenException无法添加窗口

我正在为背景录像开发应用程序,这就是为什么我使用WindowManager,但它对我没有用.以下错误:

08-23 15:38:21.021: E/AndroidRuntime(4200): java.lang.RuntimeException: Unable to create service com.example.prankapp.BackgroundVideoRecorder: android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@418c0b68 -- permission denied for this window type
    08-23 15:38:21.021: E/AndroidRuntime(4200):     at android.app.ActivityThread.handleCreateService(ActivityThread.java:2277)
    08-23 15:38:21.021: E/AndroidRuntime(4200):     at android.app.ActivityThread.access$1600(ActivityThread.java:128)
    08-23 15:38:21.021: E/AndroidRuntime(4200):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1215)
    08-23 15:38:21.021: E/AndroidRuntime(4200):     at android.os.Handler.dispatchMessage(Handler.java:99)
    08-23 15:38:21.021: E/AndroidRuntime(4200):     at android.os.Looper.loop(Looper.java:137)
    08-23 15:38:21.021: E/AndroidRuntime(4200):     at android.app.ActivityThread.main(ActivityThread.java:4517)
    08-23 15:38:21.021: E/AndroidRuntime(4200):     at java.lang.reflect.Method.invokeNative(Native Method)
    08-23 15:38:21.021: E/AndroidRuntime(4200):     at java.lang.reflect.Method.invoke(Method.java:511)
    08-23 15:38:21.021: E/AndroidRuntime(4200):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:993)
    08-23 15:38:21.021: E/AndroidRuntime(4200):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:760)
    08-23 15:38:21.021: E/AndroidRuntime(4200):     at …
Run Code Online (Sandbox Code Playgroud)

android android-camera android-windowmanager

14
推荐指数
2
解决办法
2万
查看次数

android camera setDisplayOrientation(90)在不同的设备中失败

我的相机应用程序有问题.相机活动处于纵向模式.所以我给了

camera.setDisplayOrientation(90);
Run Code Online (Sandbox Code Playgroud)

根据SO中的不同帖子,这将在纵向模式下正常工作.

但它不能正常使用不同的设备.问题是,预览向左或向右旋转90度.在Htc中没关系.但是对于Galaxy系列,它不起作用.

谁能帮我 ?

android orientation android-camera

8
推荐指数
1
解决办法
5808
查看次数

如何在没有用户界面的情况下在Android应用程序中拍照..?

我必须设计一个应用程序,该应用程序必须从相机拍摄图片而不在布局中显示它,没有任何用户界面(如点击按钮....)并存储图片?

camera android

6
推荐指数
1
解决办法
2647
查看次数

如何在android中同时打开手电筒和前置摄像头

在我的应用程序的一个要求中,我需要弹出一个包含前置摄像头预览的活动,同时我还需要打开手电筒。但是我观察到,我能够打开手电筒并返回相机,但不是前置摄像头和手电筒在一起。以下是我的代码:

    public class Cam extends Activity {

        private static int cameraId = 0;
        private Camera camera;

        //Adding for camera preview
        public static FrameLayout preview;
        public static CameraPreview mPreview;
        Context context;

        ImageButton btnSwitch;
        private boolean isFlashOn;
        private boolean hasFlash;
        Parameters params;


        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);

            Log.e("Cam","Inside onCreate");
            setContentView(R.layout.cam);
            context = getApplicationContext();      

            btnSwitch = (ImageButton) findViewById(R.id.btnSwitch);

            hasFlash = getApplicationContext().getPackageManager()
                    .hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);

            startCamera();

            // displaying button image
            toggleButtonImage();        

            btnSwitch.setOnClickListener(new View.OnClickListener() {

                @Override
                public void onClick(View v) {
                    if (isFlashOn) {
                        turnOffFlash(); …
Run Code Online (Sandbox Code Playgroud)

java camera android flashlight front-camera

5
推荐指数
1
解决办法
9990
查看次数