1.把要導(dǎo)入的項(xiàng)目變?yōu)閙odule
- 把build.gradle文件下的
apply plugin: 'com.android.application'改為:apply plugin: 'com.android.library'
同時刪除文件中的:applicationId "com.dsppa.cxg.devicecontrol" - 在新項(xiàng)目進(jìn)行導(dǎo)入:Import module
- 導(dǎo)入后可能遇到以下問題:
Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed with multiple errors, see logs
解決辦法:
在主項(xiàng)目的AndroidManifest.xml文件下的根標(biāo)簽中添加xmlns:tools="http://schemas.android.com/tools",
application標(biāo)簽下添加 tools:replace="Android:icon, android:theme"?
- 導(dǎo)入后還可能遇到:
1.找不到R文件
2.Attribute value must be constant
3.錯誤提示:元素值必須為常量表達(dá)式
4.錯誤提示:找不到符號
這主要可能模塊中使用了Butterknife導(dǎo)致,可以參考這篇文章解決:http://blog.csdn.net/iehshx/article/details/68064363
2.需要注意的問題
- module下布局文件名稱最好不要跟主項(xiàng)目文件夾下的布局文件重名,否則會出現(xiàn)異常:
NoSuchFieldError: No static field listView1 of type I in class Lcom/disdemo/R$id; or its superclasses
- 如果module下的AndroidMainfest.xml文件下有
android:name=".common.MyApplication"
主項(xiàng)目下的AndroidMainfest.xml就要再申明了 - 要導(dǎo)入的module包含其他module,導(dǎo)入時要一起導(dǎo)入主項(xiàng)目