我在Android中遇到了Air Native Extension的問題。位圖Android中的頻道順序不同
ANE從Actionscript端接收位圖,將其壓縮爲jpeg格式並將其發送回將寫入存儲器的Actionscript。
一切都很好,但最後一件事。
看來,渠道爲了ActionScript是比Android的不同,所以我的壓縮圖像已經制定BLUE的紅色..這裏是代碼:
的Actionscript(我使用的庫所謂deng.fzip.FZipLibrary獲得從zip包位圖)
__image = __fl.getBitmapData(path);
__de = new DataExchange();
__ba = __de.bitmapEncode(__image) as ByteArray;
的Android
...
try {
inputValue = (FREBitmapData)arg1[0];
inputValue.acquire();
int srcWidth = inputValue.getWidth();
int srcHeight = inputValue.getHeight();
Bitmap bm = Bitmap.createBitmap(srcWidth, srcHeight, Config.ARGB_8888);
bm.copyPixelsFromBuffer(inputValue.getBits());
ByteArrayOutputStream os = new ByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.JPEG, 80, os);
compressed = os.toByteArray();
inputValue.release();
} catch (Exception e) {
e.printStackTrace();
}
try {
returnValue = FREByteArray.newByteArray();
returnValue.setProperty("length", FREObject.newObject(compressed.length));
returnValue.acquire();
ByteBuffer returnBytes = returnValue.getBytes();
returnBytes.put(compressed, 0, compressed.length);
returnValue.release();
}
...
任何人有一個想法,在發送圖像之前,如何將紅色轉換爲藍色的android端?或者它需要在動作端完成?
非常感謝和問候,
Gianpiero
我也嘗試了其他Bitmap.Config值,但它們不是很好..我想知道是否有可能創建一個匹配Actionscript通道順序的配置。 – Gianps