2014-01-15 21 views
1

我的開發環境:如何在Android庫中使用資源依賴ADT?

  • ADT:22.3.0
  • Android的Maven的插件:3.8.2
  • 行家:3.1.1

我正在開發一個谷歌地圖的Android應用程序與maven結構和依賴關係如下:

<dependency> 
    <groupId>com.google.android.gms</groupId> 
    <artifactId>google-play-services</artifactId> 
    <version>13.0.0</version> 
    <type>apklib</type> 
</dependency> 

<dependency> 
    <groupId>com.google.android.gms</groupId> 
    <artifactId>google-play-services</artifactId> 
    <version>13.0.0</version> 
</dependency> 

<dependency> 
    <groupId>com.google.android.gms</groupId> 
    <artifactId>play-services</artifactId> 
    <version>4.0.30</version> 
    <type>aar</type> 
</dependency> 

我試過apk和aar類型,但我仍然不能在android lib依賴項中使用資源可繪製,字符串等(R.drawable.poi,R.style.button_style1 ..)。我該如何處理?

回答

0

要使用庫的資源可繪製,您還必須將項目導入到eclipse工作區並從您的mavenized項目中引用它。

我遇到了這個問題,通過將Google-play-services項目導入工作區並從我的maven項目引用它來解決此問題。

用於參考。右鍵單擊你的項目 - >屬性 - > Android - >(libraryProjects-> Add - > [browse google-play-library project]),點擊apply並保存。

你可以找到在SDK /演員谷歌播放庫項目/谷歌/

+0

我已經知道這一點,我使用Maven和AAR是因爲沒有進口dependecy庫到我的工作區dependcy同治只是在pom.xml中聲明它們。 AFAIK maven android插件自3.8.2(https://code.google.com/p/maven-android-plugin/wiki/Changelog)支持aar包格式,我們可以在android lib文件中使用資源。我在android工作室實現這個使用maven但不在日食 – gturedi

0

類似的問題出現在我們的項目從3.8.0版本更新到android-maven-plugin3.8.2,Android的Maven的插件看起來bugy。

我們必須回退到版本3.8.0。我建議你使用apklib來做同樣的事情,因爲aar只能從3.8.2版本開始使用,如果你想使用aar來等待更新版本的android-maven-plugin。

詳細來說,問題出在了apklib的鏈接上,所有引用(layouts,drawables ...)的引用似乎都是不一致的。例如,顯示佈局或可繪製而不是另一個。在佈局中訪問缺少的引用/ ID時,應用程序崩潰(由於加載了錯誤的佈局,引用不存在)。

見問題http://code.google.com/p/maven-android-plugin/issues/detail?id=441

+0

其實我的問題是相關的eclipe-maven插件集成,謝謝你的觀點,不幸的是,android maven插件仍然看起來buggy – gturedi

+0

你試過android-maven-plugin 3.9.0-rc1 ?更新日誌:https://code.google.com/p/maven-android-plugin/wiki/Changelog – Konsumierer

+0

當時並不存在... –

相關問題