我有一個爲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運行時進行調試,並最終避免我的應用在向用戶請求相機權限時崩潰。
我有性能問題八哥+ AIR 24且對八哥論壇相關主題(HTTP://forum.starling-framew ork.org/topic/air-24-performance-issues),所以它不僅僅是我的想象。 AIR 24可能在很多方面都是不好的版本,您可能想要恢復到AIR 23而不是尋找解決方法。 – Organis