2017-01-17 47 views
0

我有一個爲iOS設備開發的Adobe AIR應用程序,我使用Adobe Flash Builder 4.7創建.ipa文件。嘗試使用權限時,使用Adobe AIR SDK 24創建的iOS應用程序崩潰

直到版本23的AIR SDK的應用程序工作正常。使用版本24的AIR SDK時,嘗試訪問設備攝像頭時添加了Permissions類。 https://forums.adobe.com/thread/2250328

我試圖實現我的代碼庫中給出的例子,並在下面的代碼片段,我要的權限空引用如下:現在應該訪問攝像機時,按如下程序辦理權限

private function connect():void {  
     if (Camera.permissionStatus/*permissionStatus is null*/ != PermissionStatus.GRANTED) 
     {  
        cam.addEventListener(PermissionEvent.PERMISSION_STATUS, 
        function(e:PermissionEvent):void { 
         if (e.status == PermissionStatus.GRANTED) { 
          connectCamera(); 
         } else { 
          // permission denied 
         } 
        }); 

       try { 
        cam.requestPermission(); // **when calling this one my app crashes** 
       } catch(e:Error) { 
        // another request is in progress 
       } 
     } else { 
       connectCamera(); 
     } 
    } 

    private function connectCamera():void 
    { 
     video = new Video(640, 480); 
     video.attachCamera(cam); 
     addChild(video); 
    } 

我的直覺是,在設備上進行調試時,Flash Builder使用flex sdk而不是AIR SDK,這使得上述屬性/方法不可用,如SDK文檔中所述:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/media/Camera.html其中可以看到permissionStatus方法僅適用於AIR運行時。

因此,如何檢查並確保我正在使用AIR運行時進行調試,並最終避免我的應用在向用戶請求相機權限時崩潰。

+0

我有性能問題八哥+ AIR 24且對八哥論壇相關主題(HTTP://forum.starling-framew ork.org/topic/air-24-performance-issues),所以它不僅僅是我的想象。 AIR 24可能在很多方面都是不好的版本,您可能想要恢復到AIR 23而不是尋找解決方法。 – Organis

回答

1

也許這樣? https://forums.adobe.com/thread/2264992

請包括下app.xml的標籤可可鍵對於 例子,如果你想在你的應用程序訪問攝像機, 你需要包括以下下 NSCameraUsageDescription標籤「SOME TEXT」
請參考以下鏈接瞭解詳細信息可可鍵: Cocoa Keys

相關問題