Android studio 下把項目作爲module導入另外一個項目

1.把要導入的項目變爲module

  • 把build.gradle文件下的
    apply plugin: 'com.android.application'改爲:apply plugin: 'com.android.library'
    同時刪除文件中的:applicationId "com.dsppa.cxg.devicecontrol"
  • 在新項目進行導入:Import module
  • 導入後可能遇到以下問題:
Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed with multiple errors, see logs

解決辦法:
在主項目的manifest文件下的根標籤中添加xmlns:tools="http://schemas.android.com/tools"
application標籤下添加 tools:replace="Android:icon, android:theme"

  • 導入後還可能遇到:
    1.找不到R文件
    2.Attribute value must be constant
    3.錯誤提示:元素值必須爲常量表達式
    4.錯誤提示:找不到符號
    這主要可能模塊中使用了Butterknife導致,可以參考這篇文章解決:http://blog.csdn.net/iehshx/article/details/68064363

2.需要注意的問題

  • module下佈局文件名稱最好不要跟主項目文件夾下的佈局文件重名,否則會出現異常:
NoSuchFieldError: No static field listView1 of type I in class Lcom/disdemo/R$id; or its superclasses
  • 如果module下的AndroidMainfest.xml文件下有android:name=".common.MyApplication"
    主項目下的AndroidMainfest.xml就要再申明瞭
  • 要導入的module包含其他module,導入時要一起導入主項目
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章