2012-05-14 130 views
32

我正在構建將針對iPhone/iPad和Android手機的移動應用程序。該應用程序將涉及用戶拍照並上傳到我的服務器,稍後用戶將能夠在他們的移動設備上查看這些照片(儘管不一定是他們自己的照片,所以Android用戶可能正在查看用iPhone拍攝的照片)。移動應用程序的圖像大小最佳做法

我應該保存哪些尺寸的照片以覆蓋大多數使用情況? iPad是1.333 W/H,大多數手機是1.5或1.333 W/H,有一些罕見的1.666 W/H。具體來說:

iPad:1024x768,iPad3:2048x1536,iPhone和其他一些手機:960x640,480x320,800x480。

爲了能夠保持可管理性,我需要決定一些特定的圖像尺寸並將照片保存爲這些尺寸。我不是真的在技術方面尋求幫助。我可以在服務器端進行圖像縮放等。我在尋求有關圖像大小的建議/最佳實踐/經驗教訓之前,我已經深入到構建它。

  • 我應該保存哪些尺寸的照片來涵蓋大多數使用情況?
  • 爲了節省傳輸時間(例如縮小2048x1536 iPad照片),您是否建議在上傳到服務器之前進行任何客戶端擴展,或者我應該始終傳輸原件?
  • 我應該如何處理不兼容的圖像尺寸(例如,顯示用Android設備上的iPad拍攝的照片)?我應該在發送給客戶端之前在服務器上預先剪切這些圖像,還是應該讓客戶端手機處理圖像大小調整?
  • 還有UI的問題。除了照片外,網頁上還有其他的東西可能是一兩個按鈕用於導航。我應該在保存圖片時保持相同的高寬比嗎?

我知道其中的一些問題沒有一個答案,答案是相對的,但我想得到一些意見。謝謝。

回答

6

我沒有給你一個完整的答案,但我有一些想法...

1)我建議在上傳之前,縮小圖像尺寸。如果我正在使用你的應用程序,並且我不得不上傳一張4兆照片,那麼每次我想使用你的應用程序時,我都可能會通過。在我們前進的道路上,我們在拍照手機方面實現了更好的技術;諾基亞已經發布了一款4100萬像素的相機,我猜測它會創造出相當大的圖像。用戶不得不下載4-6 MB的圖像也不是一個好主意。只是從用戶的角度來看一些想法。

2)我不會剪切圖像。您不一定知道圖像的哪些部分不重要,那麼您如何知道將其裁剪到哪裏?讓手機相應地調整照片大小,並依靠放大照片的能力來查看較大尺寸的照片。

3)你可以嘗試製作隱藏按鈕的用戶界面。如果你有一些非常簡單的東西(就像前進或後退),你可以依靠手勢控制(滑動)來移動應用程序。您可以實現在使用時臨時佔用空間的滑動抽屜和菜單,但在查看主要內容時(例如圖片),可以返回空間。我通常發現,隱藏按鈕效果不好,人們似乎想要/搜索讓他們導航的按鈕,但Android畫廊只適用於菜單+滑動,所以誰知道。

+0

感謝Gophermofur,這也是有幫助的。 – cetioren

10

對於Android,我認爲你開始會是這裏最好的地方,它有很多的信息,包括標準尺寸的屏幕,以及如何同時保持他們在最好的質量來顯示圖像。

http://developer.android.com/guide/practices/screens_support.html

我也建議這樣做盡可能多的圖像處理儘可能您的服務器上。由於內存限制和碎片,圖像在Android上使用時很痛苦。兩款手機可以存儲照片拍攝不同方向以同樣的方式,並沒有簡單的方法來處理旋轉,雖然這是可以做到(謝天謝地,我還沒有遇到一個電話,記錄不正確的Exif數據,但我不會如果他們存在,會感到驚訝......)。你依靠在手機上做的越多,由於製造商把包裝器和將其自定義如何處理媒體更多的機會,你有錯誤。

至於如何顯示,理想的,如果你的後端已經做了很多不同的調整大小,你可以包括你的屏幕密度當你請求的圖像,併發送基於開發者指南的最佳尺寸。如果你想保持差異到最低限度,至少支持手機的中高密度和平板電腦的高密度。

只是我的兩分錢,我相信你會有很多的意見。祝你好運。

+0

謝謝MattDavis,這有幫助。 – cetioren

相關問題