2013-08-26 36 views
0

我有一個應用程序,其目標從3.0到4.3。 API。當我從PC測試我的應用程序到2.2時,eclipse運行另一個模擬器,其目標更大。當我將應用程序的preporties更改爲2.2時,我得到很多eroors,所以我無法從2.2模擬器中測試我的應用程序。當我從2.2設備測試我的應用時,一切都只是okei。我對我的應用程序正在發生什麼感到困惑。使用不同API的Android應用程序測試

當我將目標更改爲2.2時,我在此行中收到錯誤。在(蜂窩和中的addAll):

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { 
    adapter.addAll(reminders); 

然後我得到這個(的isEmpty)錯誤:

if (editTextDescription.getText().toString().isEmpty()) 

,然後當我擴展這個PreferenceFragment:我想我可以添加夏洛克得到這個權利是我糾正PreferenceFragment。?

但我不明白爲什麼我有這麼多的錯誤在PC和設備我的應用程序工作很好..!?

回答

1

Build.VERSION_CODES.HONEYCOMB沒有在2.2中定義,所以你會得到一個錯誤。

0

但我不明白爲什麼我有這麼多的錯誤,在PC和設備我的應用程序 工作很好..!?

我不認爲你的應用程序在2.2工作,如果它給出錯誤,當你改變目標2.2。設備是否運行2.2?設備中的Android版本說了什麼?

Build.VERSION_CODES.HONEYCOMB 

這個常量意味着Android 3.0,因此它不存在於2.2中(當2.2發佈時沒有Android 3.0)。

adapter.addAll 

我不知道是什麼類型adapter但如果它顯示了一個錯誤,這意味着這一呼籲是不是在2.2可用。如果這是一個List,那麼您正在使用Java 5 API進行編譯。切換到Java 6

if (editTextDescription.getText().toString().isEmpty()) 

如果String#isEmpty()顯示錯誤,那麼你使用Java 5 API進行編譯。切換到Java 6.