解決 Android API 16 (4.1.2) 模擬器的 Failed to allocate memory 錯誤

本教學示範如何解決 Android API 16 (4.1.2) 模擬器的 Failed to allocate memory 錯誤。最近筆者將 Android API 升級到 16 ,並嘗試在平板電腦的模擬器上運行程序。可是,如果將螢幕解析度設置在 WXGA720、WXGA800 或者 WXGA800-7in ,運行程序時總是出現下面的錯誤提示︰

Failed to allocate memory: 8
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

錯誤

筆者查看了不少的內容,大部份都是指出錯誤是由於記憶體不足的問題所致。可是筆者使用裝有 32GB 記憶體的機器仍然出現錯誤。修改模擬器並指定 512MB、256MB 或者 128MB 也不能解決錯誤問題。經過多小時的嘗試,使用 command 開啟模擬器卻沒有錯誤的問題。由此可見,使用 command 即可解決記憶體不足的錯誤問題。

指定記憶體數量

  1. 在 Project 上點擊滑鼠右鍵,在「Run As」內選擇「Run Configurations…」。

    Run Configurations

  2. 在「Target」內的「Additional Emulator Command Line Options」輸入以下內容。

    -memory 512
    

    強行將模擬器的記憶體設定為 512MB 。之後按下「Apply」,然後再按「Run」執行 Android 程序。

    設定記憶體

  3. 等待一會兒,就會看到 7 吋平板電腦的 Android 模擬器。

    Android 模擬器

Made in Hong Kong