我有一个项目,在
Android Studio v 0.3.2中使用Gradle构建.
我的项目依赖于其他两个模块(android库).使用build.gradle文件很好地定义了项目结构.
问题是……当我在Android设备上运行项目时,我在我的设备上安装了3个apk.一个是主项目(唯一正确的一个),另外两个来自导入的模块(两个我不想安装).
我怎样才能做到这一点?或者我做错了什么?
我的项目依赖于其他两个模块(android库).使用build.gradle文件很好地定义了项目结构.
问题是……当我在Android设备上运行项目时,我在我的设备上安装了3个apk.一个是主项目(唯一正确的一个),另外两个来自导入的模块(两个我不想安装).
我怎样才能做到这一点?或者我做错了什么?
项目结构:
> MyLibModule
>主项目
> MainProject-> libraries-> MyOtherModule
MyLibModule与Main项目位于同一路径,因为我在其他项目中也需要此模块.
需要明确的是:整个项目构建正常,所有依赖项都可以,但为什么我的设备上有3个APK?
解决方法
经过一整天的努力解决这个问题,我找到了这种奇怪行为的原因.问题是图书馆模块的清单.在我切换到Android工作室之前,我使用了Eclipse.我在库项目的清单中声明了一个testActivity.从我的库模块清单中删除所有测试活动解决了这个问题.现在Android Studio只安装MainProject apk.
一些代码:
MyLibModule的清单:
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.test.mylibmodule" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="7"/> <application> <activity android:name=".TestActivity" android:label="@string/app_name"> </activity> </application> </manifest>
变成:
06001
….和MyOtherModule一样.
注意:空应用程序节点必须保留在清单中,以避免构建错误.