Камера в iOS

То что касается флеша, но не касается ВКонтакте API. Например проблемы при создании прыгающего мячика.

Камера в iOS

Сообщение fedos » 04 ноя 2012, 05:05

Доброго времени суток.
Вот код:
  1. import flash.display.Sprite;
  2. import flash.media.Camera;
  3. import flash.media.Video;
  4. import flash.display.DisplayObject;
  5. import flash.events.MouseEvent;
  6. import flash.display.BitmapData;
  7. import flash.display.Bitmap;
  8. import flash.net.FileReference;
  9. import flash.utils.ByteArray;
  10. import flash.media.CameraRoll;
  11. import flash.media.CameraUI;
  12. //name:String = null;
  13. var cam:Camera = Camera.getCamera("1"); //should be 0
  14.  
  15. if (!cam)
  16.             {
  17.                 camerasup.text = "No camera is installed.";
  18.                 //trace("No camera is installed.");
  19.             }
  20.             else
  21.             {
  22.             }
  23.            
  24. var vid:Video = new Video();
  25. btn3.visible = false;
  26. cam.setMode(320, 240, 30); //ширина, высота, фпс
  27. cam.setQuality(0,100);
  28. vid.attachCamera(cam);
  29. addChild(vid);
  30. var cameraRoll:CameraRoll = new CameraRoll();
  31.  
  32. btn.addEventListener(MouseEvent.CLICK, fl_capvid);
  33. function fl_capvid(event:MouseEvent):void
  34. {
  35.     var bmd:BitmapData = new BitmapData(320,240);
  36.     var bmp:Bitmap;
  37.     bmd.draw(vid);
  38.     bmp = new Bitmap(bmd);
  39.     bmp.x = 0;
  40.     bmp.y = 0;
  41.     addChild(bmp);
  42.     removeChild(vid);
  43.    
  44.     btn2.addEventListener(MouseEvent.CLICK, fl_remcapvid);
  45.     function fl_remcapvid(event:MouseEvent):void
  46.     {
  47.         removeChild(bmp);
  48.         addChild(vid);
  49.         btn3.visible = false;
  50.     }
  51.     btn3.visible = true;
  52.    
  53.     btn3.addEventListener(MouseEvent.CLICK, fl_capsave);
  54.     function fl_capsave(event:MouseEvent):void
  55.     {
  56.         cameraRoll.addBitmapData(bmd);
  57.     }
  58. }
  59. var chcam = true; //true = back false = front
  60. btn4.addEventListener(MouseEvent.CLICK, fl_chcam);
  61. function fl_chcam(event:MouseEvent):void
  62. {
  63.     if(chcam == true){
  64.         var cam:Camera = Camera.getCamera('1');
  65.         chcam = false;
  66.     }else{
  67.         var cam:Camera = Camera.getCamera('0');
  68.         chcam = true;
  69.     }
  70. }
  71.  

Вопрос, почему при запуске на айподе 4g пишет, что нет камеры? (в тектовое поле выводит No camera is..)
fedos

 
Автор темы
Сообщения: 18
Зарегистрирован: 22 дек 2010, 00:09
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.

Чтобы убрать блок с рекламой, зарегистрируйтесь на форуме или войдите.

Google
 



Re: Камера в iOS

Сообщение Александр » 04 ноя 2012, 15:37

fedos
Если getCamera() возвращает значение null, это значит, что камера используется другим приложением или что в системе не установлены камеры. Определить, установлены ли камеры, можно с помощью свойства names.length. Для отображения панели параметров камеры в Flash Player, с помощью которой пользователь может выбрать камеру, на которую будет ссылаться метод getCamera(), используйте Security.showSettings(SecurityPanel.CAMERA).

http://help.adobe.com/ru_RU/FlashPlatfo ... amera.html
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
 
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45
Откуда: Санкт-Петербург
Благодарил (а): 126 раз.
Поблагодарили: 771 раз.

Re: Камера в iOS

Сообщение fedos » 04 ноя 2012, 16:56

Security.showSettings(SecurityPanel.CAMERA);
Ничего не выдает. Camera.names.length выдает ошибку, тк camera = null.
Стандартное приложение камера в айподе работает, значит с камерами все в порядке. Других приложений на момент тестирования запущено не было. Что же не так?
fedos

 
Автор темы
Сообщения: 18
Зарегистрирован: 22 дек 2010, 00:09
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.

Re: Камера в iOS

Сообщение Александр » 04 ноя 2012, 22:03

Логично, что либо настройки запрещают работать с камерой, либо Adobe AIR не поддерживает камеру в iPod Touch, либо код неправильный.
Если код кажется правильным, то нужно смотреть в сторону настроек доступа, если с настройками все верно, то узнавать действительно ли поддерживается камера тача. Окно настроек вообще не вызывается?
Примечание. Метод attachCamera() не будет вызывать диалоговое окно «Разрешить или запретить доступ к камере», если пользователь запретил доступ, выбрав «Запомнить» в окне настроек проигрывателя Flash Player. В этом случае можно попросить пользователя изменить настройки доступа, отобразив панель конфиденциальности Flash Player с помощью метода Security.showSettings(SecurityPanel.PRIVACY).

Я приложения в Adobe Air не делаю, могу только направить в нужную сторону. Но ждать готовых методов тестирования не стоит.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
 
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45
Откуда: Санкт-Петербург
Благодарил (а): 126 раз.
Поблагодарили: 771 раз.

Re: Камера в iOS

Сообщение fedos » 05 ноя 2012, 12:55

 1 код
Изображение

Это выдает при первом коде

 2 код
Изображение

Это выдает при:
  1. import flash.display.Sprite;
  2. import flash.media.Camera;
  3. import flash.media.Video;
  4. import flash.display.DisplayObject;
  5. import flash.events.MouseEvent;
  6. import flash.display.BitmapData;
  7. import flash.display.Bitmap;
  8. import flash.net.FileReference;
  9. import flash.utils.ByteArray;
  10. import flash.media.CameraRoll;
  11. import flash.media.CameraUI;
  12. //name:String = null;
  13. Security.showSettings(SecurityPanel.CAMERA);
  14. //var cam:Camera = Camera.getCamera(); //should be 0

 showSettings Privacy
Изображение

Опять пусто при Security.showSettings(SecurityPanel.PRIVACY);

В интеренете нашел, что Adobe Air поддерживает iPhone, Ipod Touch и iPad.
fedos

 
Автор темы
Сообщения: 18
Зарегистрирован: 22 дек 2010, 00:09
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.

Re: Камера в iOS

Сообщение Александр » 05 ноя 2012, 20:04

fedos писал(а):нашел, что Adobe Air поддерживает iPhone, Ipod Touch и iPad.

А все ли функции этих устройств поддерживает?
То есть никакого окна настроек на iOS в Adobe Air не вызвать?

  1. if (Camera.isSupported) {
  2.  myTextField.text = "Camera OK";
  3. } else {
  4.  myTextField.text = "The Camera class is not supported on this device.";
  5. }

Мне выдало, что не поддерживается.

За это сообщение автора Александр поблагодарил:
fedos
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
 
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45
Откуда: Санкт-Петербург
Благодарил (а): 126 раз.
Поблагодарили: 771 раз.

Re: Камера в iOS

Сообщение fedos » 07 ноя 2012, 23:14

Спасибо большое за помощь.
Тоже пишет, что не поддерживается.
fedos

 
Автор темы
Сообщения: 18
Зарегистрирован: 22 дек 2010, 00:09
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.


Вернуться в Программирование на Flash



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0