我正在使用Java Google API作爲Android應用程序。我遵循這裏描述的使用模式進行身份驗證和API使用:http://goo.gl/rPZ9Z在Android應用程序中鏈接Google API失敗
我遇到的問題是對GoogleTransport.create()的調用引發NoClassDefFoundException。我看着日誌和HttpHeaders類沒有正確鏈接。我使用eclipse中的常規方法附加了Google API JAR文件,而且我使用的所有其他類都正常工作。問題是這一類特別沒有正確鏈接。這裏有一些日誌的應用程序正在運行,但沒有調用類:
01-27 14:04:34.390:WARN/dalvikvm(422):鏈接'Lcom/google/api/client/http/HttpHeaders; 「失敗
01-27 14:04:34.400:WARN/dalvikvm(422):無法解析Lcom/google/api/client/googleapis/GoogleHeaders的超類; (43)
直接呼叫的日誌以GoogleTransport.create():
01-27 16:13:11.882:ERROR/AndroidRuntime(16086):java.lang.NoClassDefFoundError:com.google.api。 client.http.HttpHeaders 01-27 16:13:11.882:ERROR/AndroidRuntime(16086):at com.google.api.client.http.HttpTransport。(HttpTransport.java:145) 01-27 16:13: 11.882:錯誤/ AndroidRuntime(16086):在com.google.api.client.googleapis.GoogleTransport.create(GoogleTransport.java:58)
在此先感謝!
這是發生在模擬器上嗎? – 2011-01-27 21:19:06
是的!我的代碼沒有進入GoogleTransport.create(),因爲仿真器上沒有Google帳戶,但上面的第一個日誌來自仿真器。在Nexus S運行庫存2.3.1上,從AccountManager中檢索Google帳戶認證令牌,但隨後在上面的第二個日誌中看到拋出異常 – 2011-01-28 01:54:45