Захват изображений в приложении Blackberry с использованием VideoControl работает только на эмуляторе, а не на устройстве - PullRequest
2 голосов
/ 30 августа 2011

Это только часть кода, потому что другие его части распределены, но на симуляторе для кривой ежевики это добавляет VideoControl к менеджеру и хорошо отображается с другой кнопкой, которая фактически захватывает изображение.Однако, когда я запускаю это на реальной кривой Blackberry (я думаю, что это версия 6), она не отображается на экране.

try 
     {
         _p = javax.microedition.media.Manager.createPlayer("capture://video?encoding=jpeg&width=1024&height=768");
         _p.realize();
         _videoControl = (VideoControl) _p.getControl("VideoControl");

         if (_videoControl != null)
         {
             videoField = (Field) _videoControl.initDisplayMode (VideoControl.USE_GUI_PRIMITIVE, "net.rim.device.api.ui.Field");
          //   _videoControl.setDisplayFullScreen(true);
             _videoControl.setVisible(true);
            // EnhancedFocusControl efc = (EnhancedFocusControl)p.getControl("net.rim.device.api.amms.control.camera.EnhancedFocusControl");
            // efc.startAutoFocus();
             _p.start();


             if(videoField != null)
             {
                 add(videoField);
             }
         } 
     }
     catch(Exception e)
     {
         Dialog.alert(e.toString());
     }

Ответы [ 2 ]

2 голосов
/ 30 августа 2011

По моему опыту, способ получения изображений, который вы используете, оказался очень ненадежным (он работал нормально только на ограниченном количестве устройств), поэтому я перестал его использовать. Вместо этого используйте родное приложение «Камера» - оно отлично работает на всех устройствах.

1 голос
/ 30 августа 2011

Большую часть времени, когда все работает на эмуляторе, но не на устройстве, к которому относятся разрешения, вы проверили ApplicationPermissionsManager?

Слово предупреждения, с OS4.5 до 6 многие вещи устарели, поэтому убедитесь, что у вас есть необходимые разрешения для моделей, с которыми вы работаете. например ApplicationPermissions.PERMISSION_SCREEN_CAPTURE устарел в 4.6, я думаю.

...