Android studio导入另外一个项目作为Library后出现两个启动项目等各类问题

首先说正确的 导入Library的方式:

1.启动AndroidStudio后,打开你需要接收Library的项目。比如有两个项目,项目A,和Library项目B,那么打开项目A。

2.在下拉菜单中依次找到New— —Import Module,点击打开项目导入窗口。注意导入的是Module而不是Project,如果是Project的话AndroidStudio会自动打开一个新的窗口编辑,那样的话就是不Library了。
3.在打开的窗口中点击右侧的"..."浏览窗口,在文件夹窗口中找到你要导入的Library项目的位置,选择后点击底部的OK按钮导入。
4.导入窗口中显示了该Module(项目)的详细信息,点击Finish完成导入。需要注意的是导入到AndoridStudio项目中的Library也必须是AndroidStudio项目,不能是Eclipse项目,如果是Eclipse项目的话,需要选择导出AndroidStudio项目。

5.在项目首页中选择Project标签,可以看到项目的文件结构图中多出了我们刚才导入的项目。Library的导入就完成了。

如图:




接下来就是各种问题了:

按F4可以打开调试项目,把该library加入到主项目中

1.点击顶部左上角的File菜单,在出现的下拉菜单中找到Project Structure,点击进入。

扫描二维码关注公众号,回复: 9917205 查看本文章

2.在窗口左侧选择原始的项目后,点击右侧的Dependencies(依赖项)。可以看到项目当前引用的jar包等信息。

3.点击右侧的“+”添加按钮,在下拉菜单中找到Module Dependency(项目依赖),点击打开项目选择窗口。

4.选择前面步骤中导入的Library项目后,点击OK按钮导入到原始项目中。

5.原始项目的依赖项中就出现了导入的Libray项目,这时在项目中就能正确引用Library项目中的内容了,点击底部的OK按钮完成添加。


你可能会遇到如下问题

有两个启动项目:

他并不是一个library,而是和主工程一样的图标,是个小手机的图标,如有多个小手机图标,可以做如下修改


在我们作为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删除。


swich case的问题


我们在Android依赖库中使用switch-case语句访问资源ID时会报如下图所示的错误,报的错误是case分支后面跟的参数必须是常数,换句话说出现这个问题的原因是Android library中生成的R.java中的资源ID不是常数

ADT 14之后,如果在library 项目中,它会没有final关键字。所以必须使用if else来替换,可以一键替换。。。

build.gradle文件中版本问题



V4或者V7包的版本号如果是25,那么

compileSdkVersion 25
 
 
targetSdkVersion 25
都要改成相应的版本,同时
buildToolsVersion "23.0.3" 要选用较高的版本,最好实时更新SDK,全部选用最新版本。


发布了68 篇原创文章 · 获赞 128 · 访问量 18万+

猜你喜欢

转载自blog.csdn.net/gfg156196/article/details/53374973