2012-08-31 44 views
0

Android模擬器在應用程序在物理Android設備上的運行方式上有多準確?我是Android的業餘開發者,但由於環境的原因,我自己並不擁有Android設備。應用程序需要多長時間才能在仿真器上正確加載/運行(即實際設備上的速度會更快還是更慢)?有沒有什麼方法可以看到它在不同類型的設備上的功能?此外,我不斷收到此錯誤:Android模擬器準確度和預測運行時間

Skipped 60 frames! The application may be doing too much work on its main thread. 

這是否意味着我試圖太辛苦的計算?

回答

1

通常它會慢得多。 幸運的是,最近添加了一些系統映像,通過x86系統啓動了一對仿真器。這大大加快了體驗。有準備好的圖像可以下載2.3.34.0.3

要利用它們,只需打開Android SDK Manager(無論是從Eclipse,還是帶有指向底部的箭頭的圖標,或從SDK)。在那裏你只需要下載x86系統映像爲2.3.34.0.3

之後,當在這些新的操作系統版本之一上創建一個新的仿真器時,您將能夠選擇CPU系統。 還有其他一些微小的調整,略微提高性能,但我個人並沒有感覺到差異。

試一試,讓我知道它是否適合你!

0

1. Android模擬器有點不可預知。

我有經驗少打嗝:

-下面的代碼來檢查Internet連接不會與仿真器。

private boolean checkConnection(){ 
boolean connected = false; 
ConnectivityManager cm = 
(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE); 

if (cm != null) { 
NetworkInfo[] netInfo = cm.getAllNetworkInfo(); 

for (NetworkInfo ni : netInfo) { 
if ((ni.getTypeName().equalsIgnoreCase("WIFI") 
|| ni.getTypeName().equalsIgnoreCase("MOBILE")) 
& ni.isConnected() & ni.isAvailable()) { 
connected = true; 
    } 

    } 
} 

return connected; 

} 

不知何故,上面的代碼是對我沒用,因爲有時連接到目前的無線路由器,但沒有互聯網連接的,當時它給錯誤的結果。

那麼我創建自己的代碼,在應用程序啓動時,我的代碼將檢查廣域網或數據包連接,然後通過向端口37發送請求到TimeServer來檢查互聯網連接以獲取時間以二進制形式...在這個我決定結果。

-Camera,那是另一個probs與它,我需要使用它的物理設備。

-有時給人奇怪的錯誤,然後我清理項目和關閉我的Eclipse,仿真器,然後重新啓動他們..