android 引入第三方jar出錯問題

來源:互聯網
上載者:User

andriod中如果引入jar包的方式不對就會出現一些奇怪的錯誤。
工作的時候恰好有一個jar包需要調用,結果用了很長時間才解決出現的bug。剛開始是這樣引用的(eclipse):右鍵工程,Build path,
java build path,選擇libraries,在右邊的按鈕中點擊“Add External JARs”,然後選擇合適的jar包(大部分人應該會這樣做).結果控制台立刻報錯:conversion to dalvik format failed with error 1。而且項目上還會出現紅叉,雖然項目裡並沒有錯誤。照下面的方法會通過編譯,但是啟動並執行時候會出錯找不到類的錯誤。
      右鍵工程,
     Build path,
    java build path,選擇libraries
     在右邊的按鈕中點擊“Add Library”
     選擇“User library”,點擊“下一步”
     點擊“User librarys”按鈕
     在出現的介面中點擊“New..”按鈕
     在彈出的介面中隨便起一個名字,點擊“確定”
     點擊“Add jars”按鈕選擇第三方jar包,點擊“確定”完成操作。

其實有些jar在android上是不能用的。可以參考一個文章 http://topic.csdn.net/u/20091118/16/5a27d8e7-d8a2-43b3-92db-9d88ff8f7bec.html

下面這段話是網上找的資料:

由於前段時間曾為 使用第三方的 mail包遇到過這種問題。於是查閱過相關資料,其原因之一是我上面所講的Android的架構策略問題。但並不全面。也許 咖啡茶 兄所碰到的情況並不是這種,在此 關於 對咖啡茶兄的情況所作出草率的結論,表示歉意。

這兩天對Android使用第三方jar包的問題,也一直牽腸掛肚,到底什麽樣的jar包可以用在Android平台上?
我繼續查閱相關資料,及與國外開發人員的交流。Android 的 davlkvm 與 我們標準的 jvm 所執行的bytecode格式是不樣的,且並不相容。為此Android提供DX工具用於對標準.class檔案格式的轉換。

按照官方文檔操作,我們在工程在引入第三方包就可以使用了。於是我試過一些包,但大多不可以用。於是我用dx工具單獨做轉換操作,發現能單獨做轉換的jar包可以正常使用,然而大多數的jar包無法通過Dx工具的轉換。也就不能做第三方jar包引用。
至於為什麽有的jar包不能通過 dx工具的格式轉換,我也不得而知了。期望大牛們能做進一步的研究。。。。。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.