在项目根目录下建立一个libraries文件夹,移动你要使用的library project到libraries目录(复制到工程的话,复制过来的库工程里面的src目录下的代码会丢失)
注意:你的library project一定要保证有自己的build.gradle,如果没有,应该用Eclipse导出该工程
在Eclipse中选择要导出的项目,然后依次选择菜单 file->export-> Android ->Generate Gradle build files. 之后依次点击next到finish即可
![关于Android Studio如何导入library project - ebirdfighter - ebirdfighter的博客](https://i-blog.csdnimg.cn/blog_migrate/ae6630daea3fb6c453a9cb1d2fabddde.jpeg)
回到 Android studio
打开settings.gradle,添加include ':libraries:你的库工程名称'
![关于Android Studio如何导入library project - ebirdfighter - ebirdfighter的博客](https://i-blog.csdnimg.cn/blog_migrate/fae98f8d26893ed298307d38efe7bbaf.jpeg)
ctrl+alt+shift+s 打开 project structure 在左侧面板选中module,在中间面板选中module名,再在右边面板选中denpendecies
在面板的最右边出现一个加号,点击+号,选择第三项module denpendecy
![关于Android Studio如何导入library project - ebirdfighter - ebirdfighter的博客](https://i-blog.csdnimg.cn/blog_migrate/98ede487fd2b6070fa0cc98ef19f47b9.jpeg)
此时弹出一个对话框,显示你的library project ,选中它,点击OK,最后在 project structure面板依次点击Apply,OK
![关于Android Studio如何导入library project - ebirdfighter - ebirdfighter的博客](https://i-blog.csdnimg.cn/blog_migrate/b6d06b63f7599bfafdefd262400c86d5.jpeg)
1 报错:类似于:
![关于Android Studio如何导入library project - ebirdfighter - ebirdfighter的博客](https://i-blog.csdnimg.cn/blog_migrate/02a1945a3e60f467c4034d66efa69c91.jpeg)
![关于Android Studio如何导入library project - ebirdfighter - ebirdfighter的博客](https://i-blog.csdnimg.cn/blog_migrate/49e71eabe15c3292319cb66c7330db00.jpeg)
![关于Android Studio如何导入library project - ebirdfighter - ebirdfighter的博客](https://i-blog.csdnimg.cn/blog_migrate/f25555c75073bbabf7a5f97fc2a7e6ff.jpeg)
![关于Android Studio如何导入library project - ebirdfighter - ebirdfighter的博客](https://i-blog.csdnimg.cn/blog_migrate/f2f699612a0b02e6201ea43dd9e042ea.jpeg)
![关于Android Studio如何导入library project - ebirdfighter - ebirdfighter的博客](https://i-blog.csdnimg.cn/blog_migrate/7989b9a9f521f66b3c3acb0a6a4ebbde.jpeg)
上面是一种可能,今天我在导入XListView第三方类库的时候踩了两个坑,折腾了我一上午了,呜呜。 第一个:
The method initializeScrollbars(TypedArray) is undefined for the type PLA_AbsListView
这个错误,很多人认为是 API版本太低,initializeScrollbars这个函数没有办法用,
真正的解决方法是采用:反射的机制来搞定,因为,我们知道方法名,方法的参数,所以就可以这样做,
final TypedArray a = context.getTheme().obtainStyledAttributes(new int[0]);
try {
// initializeScrollbars(TypedArray)
Method initializeScrollbars = android.view.View.class.getDeclaredMethod("initializeScrollbars", TypedArray.class);
initializeScrollbars.invoke(this, a);
} catch (Exception e) {
e.printStackTrace();
}
这种方法是最有效果的,
一般这种错误是出现在自定义的view中的构造函数里面。
第二个:
F:WORKSPACESTUDIO_20150715MmAlbum2appsrcmainAndroidManifest.xml:19:9-43 Error: Attribute application@icon value=(@mipmap/ic_launcher) from AndroidManifest.xml:19:9-43 is also present at [com.github.2359media:EasyAndroidAnimations:0.8] AndroidManifest.xml:13:9-45 value=(@drawable/ic_launcher) Suggestion: add 'tools:replace="android:icon"' to <application> element at AndroidManifest.xml:17:5-58:19 to overrideError:Execution failed for task ':android:processDebugManifest'.> Manifest merger failed : Attribute application@icon value=(@mipmap/ic_launcher) from AndroidManifest.xml:19:9-43 is also present at [com.github.2359media:EasyAndroidAnimations:0.8] AndroidManifest.xml:13:9-45 value=(@drawable/ic_launcher) Suggestion: add 'tools:replace="android:icon"' to <application> element at AndroidManifest.xml:17:5-58:19 to override
1.
解决方法:
参考
具体:
1.在Manifest标签下添加 tag:xmlns:tools=”http://schemas.android.com/tools”
2.在Application标签下添加tag:
tools:replace=”android:icon”
不出意外就能解决啦。
注: 本文由 微信妈妈(公众号买卖ontaobao.cn) 编辑整理, 转载于 http://www.it165.net/pro/html/201604/65697.html