2012-08-07 113 views
0

美好的一天,請嘗試編寫一個應用程序,用於將使用相機自動拍攝的圖像自動保存到數據庫中。不過,我想先檢查圖像大小(MB),然後才能保存它。在將圖像保存到服務器之前檢查圖像大小

我讀了android Camera.Capture開發人員注意事項,並知道我無法以編程方式調整大小。

另外我知道在上傳到數據庫之前存儲在一個臨時文件夾是可能的,但我正在尋找一個沒有保存在臨時文件夾中。

謝謝。

+0

檢查得到的圖像大小可以找到,它可能對你有用。 http://stackoverflow.com/questions/1601455/check-file-input-size-with-jquery – 2012-08-07 12:34:52

回答

0

的長度,如果您使用的是自定義的相機,然後在回調您的接收的字節數組只需獲取該數組的長度並將其除以1024 * 1024即可獲得MB中的大小。

如果使用相機的意圖,那麼你得到一個位圖的大小可以通過使用bitmap.getRowbytes * bitmap.getHeight,然後通過1024 * 1024除以它MB

+0

謝謝。用於:(mediaFile.size)/(1024 * 1024)以MB爲單位獲得大小,然後繼續更新我的數據庫。 – user1540792 2012-08-07 15:56:16

+0

嗨,我可以保存,如果路徑是一個圖像的網址?另外,輸入類型=文件在手機中不起作用,替換此輸入類型的最佳替代方法是什麼?謝謝 – user1540792 2012-08-08 13:00:43

+0

你問你是否可以通過指向該圖像的URL在Android中保存圖像? – 2012-08-08 13:14:49

0

getRowBytes()* getHeight()似乎對我很好。

+0

謝謝。用於:(mediaFile.size)/(1024 * 1024)以MB爲單位獲得大小,然後繼續更新我的數據庫。 – user1540792 2012-08-07 15:56:35

+0

我的回答對你有幫助嗎? – Shachillies 2012-08-07 16:17:59

+0

嗨,我可以保存,如果路徑是一個圖像的網址?另外,輸入類型=文件在手機中不起作用,替換此輸入類型的最佳替代方法是什麼?謝謝 – user1540792 2012-08-08 13:02:18

0

除非可以查看圖像,否則服務器無法知道圖像的大小。您可以使用PHP來限制最大上傳大小。一旦你將服務器上的文件作爲臨時文件,你可以更詳細地分析它(尺寸等)。如果圖像是「好」,然後將其移動到永久位置(另一個目錄或數據庫BLOB),如果不是,則刪除它。

+0

嗨,我可以保存,如果路徑是一個圖像的網址?另外,輸入類型=文件在手機中不起作用,替換此輸入類型的最佳替代方法是什麼?謝謝 – user1540792 2012-08-08 13:03:25

0

在你的相機PictureCallback:

public void onPictureTaken(byte[] data, Camera camera) 
{ 
    int nPictureSize = data.length; 
} 

壓縮圖像的長度僅僅是字節數組

+0

嗨,我可以保存,如果路徑是一個圖像的網址?另外,輸入類型=文件在手機中不起作用,替換此輸入類型的最佳替代方法是什麼?謝謝 – user1540792 2012-08-08 13:03:08

相關問題