我使用flash builder 4.6和flex 4.12.1 sdk並且有一個例程,其中Im使用DISTRIQT相機ANE拍攝一張照片,並將其添加到UI中作爲位圖圖像,使用BYTEARRAY將該新圖像保存到應用程序documentsDirectory ...然後我試圖使用navigateToURL在默認的Web瀏覽器或用戶選擇的任何已安裝的應用程序中打開該圖像(後者是首選解決方案,但前者足夠了)...我希望我能使用as3的openWithDefaultApplication(),但它在AIR mobile sdk上不可用。我可以使用as3 navigateToURL()在Flex移動AIR文檔目錄中打開新創建的JPG文件嗎?
我可以確認文件已保存,路徑正確 - 因此文件應該是它的位置......我有以下由事件監聽器觸發的跟蹤語句,以幫助驗證文件是否存在和位置/路徑:從我的測試
trace('exists? ' + targetFile.exists); // shows console message -- exists? true
trace('the url: ' + targetFile.url); // shows console message -- the url: trace('path: ' +
targetFile.nativePath); // shows console message -- path: /storage/sdcard0/test.jpg
結果:
1)的HTC One,運行Android 4.4.2 - 工程並打開本地Web瀏覽器就好了JPG。 2.)舊版Galaxy S II運行android 4.1.2 - 創建映像,但從不打開瀏覽器並且沒有錯誤信息 3.)ios 7.1.2在iPhone 4S上 - 圖像被創建,但本地url永不加載在所有
瀏覽器嘗試加載的文件即時通訊使用下列內容:
var targetFile : File = File.documentsDirectory.resolvePath('test.jpg');
var targetURL2: String = targetFile.url;
navigateToURL(new URLRequest(targetURL2));
基本上,我的問題是:有沒有一個可靠的簡單方式來加載一個文件(HTML或特別是在這種情況下, jpg)本地存儲在applicationDocumentsDirectory中?
我忽視或誤解了導航或訪問documentsDirectory中的文件?