`
ch_kexin
  • 浏览: 899062 次
  • 性别: Icon_minigender_2
  • 来自: 青岛
社区版块
存档分类
最新评论

Android studio 导入另外一个项目作为依赖包

 
阅读更多

把一个项目作为library导入到另外一个项目中: 
1.启动AndroidStudio,打开你需要接收Library的项目。比如有两个项目,项目A,Library项目B,那么打开项目A。 
2.在下拉菜单中依次找到New→Module→Import Gradle Project,点Next。选择你要导入的Library。 
这里写图片描述
点击Module: 
这里写图片描述
3.在打开的窗口中点击右侧的”…”浏览窗口,在文件夹窗口中找到你要导入的Library项目的位置,选择后点击底部的OK按钮导入。

4.导入窗口中显示了该Module(项目)的详细信息,点击Finish完成导入。需要注意的是导入到AndoridStudio项目中的Library也必须是AndroidStudio项目,不能是Eclipse项目,如果是Eclipse项目的话,需要选择导出AndroidStudio项目。 
5.在项目首页中选择Project标签,可以看到项目的文件结构图中多出了我们刚才导入的项目。Library的导入就完成了。

接下来是一些配置,把该library导入到主项目中

1.点击顶部左上角的File菜单,在出现的下拉菜单中找到Project Structure,点击进入。 
2.在窗口左侧选择原始的项目后,点击右侧的Dependencies(依赖项)。可以看到项目当前引用的jar包等信息。 
3.点击右侧的“+”添加按钮,在下拉菜单中找到Module Dependency(项目依赖),点击打开项目选择窗口。 
4.选择前面步骤中导入的Library项目后,点击OK按钮导入到原始项目中。 
5.原始项目的依赖项中就出现了导入的Libray项目,这时在项目中就能正确引用Library项目中的内容了,点击底部的OK按钮完成添加。 
在过程中会遇到的问题: 
问题1: 
Error: AndroidStudio TransformException : Error:Execution failed for task’:app:transformClassesWithDexForDebug’ 
解决方案: 
在你的主项目的build.gradle文件中,增加加粗的那一行 
Android { 
compileSdkVersion .. 
buildToolsVersion ‘…’ 
defaultConfig { 
… 
targetSdkVersion .. 
multiDexEnabled true // this line will solve this problem 


问题2: 
Error :unspecified on project app resolves to an APK archive which is not supported 
解决方案: 
在我们作为library的项目里,他的头部是apply plugin: ‘com.Android.application’ 
这句话告诉了Gradle将我们要作为library的项目编译称为application,也就是apk,这就是问题的所在; 
方法就是,将上面该句改为:apply plugin: ‘com.android.library’ 后,别急 还有问题,Gradle将其编译称为一个Library,也就是库,运行之后,会出现 
Error :Libraryprojects cannot set applicationId. applicationId is set to ‘package_name’ indefault config. 
那是因为一个库不允许设置applicationId,需要将builde.gradle — android — defaultConfig中的applicationId删除。

问题3: 
Error:Error:Executionfailed for task ‘:greencar:processDebugManifest’.> Manifest merger failed withmultipleerrors, see logs。 
原因:AS的Gradle插件默认会启用Manifest Merger Tool,若Library项目中也定义了与主项目相同的属性(例如默认生成的android:icon和android:theme),则此时会合并失败,并报上面的错误。 
解决方案: 
在manifest根标签上加入xmlns:tools=”http://schemas.android.com/tools”,并在Manifest.xml的application标签下添加tools:replace=”name,icon, label,heme”

以及在主项目的 manifest文件中,重复写了 call_phone的权限,网上也有人是某个activity下多写了一句intent-filter,里面没有内容,将这些重复的空的删掉就好,并将作为lib的minisdk与主项目同步(修改library飞build.gradle文件中最小sdk,或者降低主项目的sdk)

问题4: 
error:在作为library的项目中报错:需要常量表达式 
解决方案: 
在一般的Android项目中,R类的常量都是用final定义的,但ADT 14之后,如果在library 项目中,它会没有final关键字,而我们在作为library的项目中使用了switch ,在switch语句的case中,如果使用 R.id.xxx 则会提示有问题,不允许非常量在case语句中。 
Google提供的一个方法就是把它转化为if-else语句。

分享到:
评论

相关推荐

    亲手实践,Android Studio一个项目引入另一个项目作为依赖Libary

    Android Studio一个项目引入另一个项目作为依赖Libary,测试已通过!其中NoTest为原文件,testSuccess为源文件经过测试成功的文件,详情可查看我的博客,如有问题欢迎留言讨论!

    Android Studio导入项目的几种方法

    本篇将详细讲解Android Studio导入项目的几种常见方法,这对于初学者来说是非常重要的基础知识。 首先,我们来看一下Android Studio中最基本的项目导入方式——**导入现有Android项目**。这适用于你已经拥有一个...

    android studio 导入aar包

    本文将详细介绍如何在Android Studio中导入aar(Android Archive)包,这是一种特殊的库格式,用于分发和复用Android库项目。 首先,我们需要理解aar包的用途。aar包类似于Java开发中的JAR包,但包含更多的资源和...

    在AndroidStudio中导入eclipse项目后如何运行

    ### 在Android Studio中导入Eclipse项目并运行的详细步骤 #### 一、导入Eclipse Android项目至Android Studio 当你需要将Eclipse中的Android项目迁移到Android Studio时,可能会遇到一些配置上的挑战。以下是一...

    androidStudio导入工程.txt

    ### Android Studio导入工程项目知识点 #### 一、概览 在Android开发过程中,使用Android Studio作为主要集成开发环境(IDE)时,经常会遇到需要导入现有项目的场景。为了确保项目能够顺利运行,开发者需要注意...

    导入AndroidStudio无法运行起来的几种解决办法.docx

    如果不知道当前版本号,可以新建一个项目,然后查看。 第二步:修改 app 文件夹中的 build.gradle 文件 在 app 文件夹中的 build.gradle 文件用于配置应用程序的编译环境。我们需要将 buildToolsVersion 版本号...

    AndroidStudio无网状态下导入离线sdk(1).docx

    ### Android Studio 在无网络环境下导入离线SDK的详细步骤 #### 一、前言 在进行Android应用开发的过程中,有时会遇到没有网络连接的情况,此时就需要掌握如何在Android Studio中导入离线SDK的方法。本文将详细...

    unity 导入 android studio,使用UnitySendMessage互传消息 源码

    在Unity中创建或打开一个项目后,你需要确保项目中的Android平台设置正确。这包括在Player Settings中设置Target API Level,开启IL2CPP脚本后端,并确保Minimum API Level符合目标设备的要求。 接着,你需要导出...

    Android Studio 导入第三方库中so文件的导入方法

    Android Studio 是一个功能强大的集成开发环境(IDE),广泛应用于 Android 应用程序的开发中。然而,在使用 Android Studio 时,需要将第三方库中的 so 文件导入到项目中,以便使用这些库提供的功能。下面将详细...

    androidstudio导入代码工具.zip

    "androidstudio导入代码工具.zip"就是为了解决这一问题,它包含了一个便捷的方式来导入Android Studio中的源码项目。 首先,我们需要了解如何使用Android Studio导入源码。这个压缩包可能包含了readme文件,readme...

    AndroidStudio项目导入第三方library.docx编程资料

    在开始之前,请确保已经安装了最新版本的Android Studio,并创建了一个Android项目。此外,还需要准备一个或多个第三方库文件。这些库文件通常以`.jar`或源码的形式提供。 #### 三、导入第三方库步骤详解 ##### 1....

    Android Studio 的调用VLCLib

    "Android Studio的调用VLCLib"就是一个关于如何在Android Studio中集成并使用VideoLAN的VLC库来播放视频流的实践案例。VLC是一款开源、跨平台的多媒体播放器,其强大的功能和广泛的设备支持使其成为许多开发者的选择...

    官方Launcher3可以在Android Studio上编译

    这将创建一个基础的Android项目框架。 3. **导入源码**:将解压后的`Launcher3_mx-master`文件夹中的所有内容复制到新建项目中,替换原有的`app`模块。确保保留原有的AndroidManifest.xml,以及其他必要的资源和...

    Eigen数学库Android Studio项目模版

    **Eigen数学库Android Studio项目模版** Eigen是一个开源的C++库,专注于高效地处理线性代数问题,包括向量、矩阵运算以及更复杂的线性代数操作。这个项目模版是专为Android Studio设计的,使得开发者能够在Android...

    Hbuilder项目Android Studio本地打包详细步骤

    2. **导入HBuilder依赖包**: - 复制`HBuilder-Integrate-AS\app\libs`目录下的`lib.5plus.base-release.aar`文件到新建的Android项目的`app\libs`目录下。 3. **修改Gradle文件**: - 编辑`app\build.gradle`文件...

    解决AndroidStudio导入项目卡死在“building gradle project info”问题

    当我们在Android Studio中尝试打开一个项目时,IDE(集成开发环境)会自动进行一系列初始化操作,包括构建Gradle项目信息(即“building gradle project info”)。这一过程主要是为了加载项目的依赖项并解析项目...

    Mac - Android Studio 4.2.2

    3. **创建新项目**:在欢迎屏幕上选择“Start a new Android Studio project”,然后按照向导设置项目名称、包名、目标平台等信息。 4. **运行应用**:在项目中编写代码后,点击顶部菜单栏的“Run”按钮,选择...

    eclipse导入Android studio所需文件

    本文将详细介绍如何将一个原本为Eclipse设计的Android项目导入到Android Studio,并重点讲解其中涉及的`gradle`文件。 标题中的"eclipse导入Android studio所需文件"主要指的是在将Eclipse项目迁移到Android Studio...

    Android Studio导入Eclipse项目的两种方法

    - 选择目标导入位置,通常默认设置为相同目录下,但项目名后会添加一个数字以区分。 - 点击“Next”,取消选择“Use default gradle wrapper(recommended)”中的“Update Gradle wrapper to the latest version”...

    将开源的Android-pulltorefresh迁移到AndroidStudio方便使用AS的开发者使用.rar

    开源项目Android-pulltorefresh是实现这一功能的一个经典库,由杰克·沃森(Jake Wharton)创建。然而,随着时间推移,许多开发者转向了使用Android Studio进行开发,而这个库最初是为Eclipse设计的。因此,将...

Global site tag (gtag.js) - Google Analytics