2013-10-11 30 views
1

我試圖用一個很簡單的一段代碼,因爲API已經支持1

if (bitmap != null) { 
    ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); 
    bitmap.compress(Bitmap.CompressFormat.WEBP, IMAGE_QUALITY, byteArrayOutputStream); 
    byte[] bytes = byteArrayOutputStream.toByteArray(); 
    result = Base64.encodeToString(bytes, Base64.DEFAULT); 
} 

不知何故,

bitmap.compress(Bitmap.CompressFormat.WEBP, IMAGE_QUALITY, byteArrayOutputStream); 

給我說,奇怪的錯誤:java.lang.NoSuchFieldError: android.graphics.Bitmap$CompressFormat.WEBP這只是發生在我的MOTO RAZR 2.3

我找不到這個互聯網上的任何東西。這是怎麼回事? (我得到的是,顯然,摩托羅拉的股票機器人沒想到把它列入,但我怎麼解決這個問題?)任何提示?

所有我想要做的是壓縮拿屏幕(或視圖)的快照,並在String形式(這相同的設備還沒有做文件附件正確要麼)附上它在一個用戶友好的方式向電子郵件意圖的主體,並將其傳遞給可以發送電子郵件的人。

試圖壓縮爲.jpeg,然後將其轉換爲base64編碼的字符串,然後附加到身體的電子郵件需要永遠,並不是非常用戶響應。這不可能發生。

有幫助嗎?

回答

3

android.graphics.Bitmap $ CompressFormat.WEBP僅適用於API級別14以上。

嘗試一些WebP的庫。
WebP library for java?

+0

OH。我現在看到它。對不起,我誤解了文檔。 Bitmap.CompressionFormat一直存在,因爲API級別1.我偶然讀到作爲WEBP API級別也。謝謝 –

相關問題