2010-12-07 206 views
2

我拿起了新版本的2.3版本的SDK平臺和工具,當我編譯時,出現以下八個錯誤實例。然後關於缺少資源的錯誤。據推測我的資源未能建立。升級到Android 2.3後出現問題

W/ResourceType(8168): Bad XML block: header size 146 or total size 3145924 is larger than data size 0 

谷歌搜索表明,也許乾淨會解決,但它不會。

谷歌搜索也表明,這個錯誤是由格式錯誤的XML文檔引起的,但是自從升級(或者對於任何代碼)我沒有改變任何資源,並且代碼正在構建並且在升級前進行了很好的升級。

任何想法是什麼或解決問題的建議?

+0

這看起來像是一個錯誤,當你運行,而不是當你建立,對吧?輸出中是否還有其他內容? – EboMike 2010-12-07 04:32:42

回答

2

您是否解決了這個問題?

有沒有可能在你的strings.xml文件中使用替換值?我的意思是這樣的:

<string name="page_number">%d results, showing page %d of %d</string> 

我發現了aapt現在強制具有用於與多個格式化字符串參數指標。更新這樣的所有字符串使用索引是這樣的:

<string name="page_number">%1$d results, showing page %2$d of %3$d</string> 

做一個項目>清潔(或生成項目)和錯誤應該消失。這就是我所做的,錯誤已經解決。

1

這可能是也可能不是相關的。 adb位置已被移動。根據文檔 -

「如果要從早期版本升級到SDK Tools r8,請注意,adb工具的默認安裝位置已從/ tools/adb更改爲/ platform-tools/adb,這意味着您應該將新位置添加到PATH中,並修改任何自定義構建腳本以引用新位置。不推薦將adb可執行文件從新位置複製到舊位置,因爲後續對SDK工具的更新將刪除該文件。

+0

我遇到同樣的錯誤,並且我已經更新了我的PATH變量,但錯誤仍然存​​在。其他建議也許?謝謝! – Zarah 2010-12-07 06:14:36

+0

請你可以發佈一個鏈接到「如果你正在從早期版本升級到SDK Tools r8」文檔。我似乎無法在任何地方找到它。 – NickT 2010-12-07 09:24:25

0

如果您要更新內容,您必須獲得新的SDK R8。 更新ADT和SDK管理器和事情會很好。