android:关于主工程和library project

简介:
1、如何将一个android工程作为库工程(library project)

library project是作为jar包被其它android工程使用的,首先它也是普通的android工程。然后:

1)在eclipse Package Explorer, 右键android工程选择Properties

2)选择Android,下拉右边的滚动条到最下面,选中”Is Library“

3)点击Apply,点击OK

这个android工程就成为了library工程。

注意:作为library工程可以引用外部jar包,但不能引用其它library工程,在library工程中不能使用aidl文件,不能引用raw、assets下资源
另外当试图运行一个library工程时,eclipse将报错:

2、主工程如何引用库工程

当引用lib工程后,主工程就可以调用library工程的相关类和方法。android工程引用其它library工程步骤:

1)在Package Explorer, 右键android工程选择Properties

2)选择Android,下拉右边的滚动条到最下面

3)点击Add按钮打开lib工程选择对话框

4)从选择对话框中选择工程,点击OK

5)点击Apply按钮,点击OK按钮

3、在主工程manifest.xml文件中声明lib工程的组件

主工程manifest.xml中必须添加library工程的所有Activity、Service、receiver、provider,还要添加library工程的permission、uses-library等属性,注意引用的组件要使用完全的包名,否则将报对应的NotFoundException。

4、库工程与主工程资源冲突问题

当运行有引用library工程的android工程时,android工具将会合并library工程与主工程的所有资源。如果一个资源ID将有可能在library工程之间或library工程、主工程之间都有定义,这时候优先级别高的资源ID将覆盖优先级别低的,使用资源时将使用有线级别最高的工程的资源。工程之间优先级别如何判定,请看下一条。

5、库工程之间以及主工程的资源使用上的优先级问题

上图显示一个android工程引用了四个library工程,这四个library工程和主工程之间是有优先级之分的。android主工程的优先级别最高,四个library工程科举上图排序有上到下优先级别依次降低。library工程之间也可以手动排序,选择其中一个,点击up(提高优先级)或者down(降低优先级)。

6、库工程和主工程使用不同的android platform version问题

主工程打包时,android sdk版本使用的是主工程。所以library工程使用的android sdk版本要不高于主工程的sdk版本。如果library工程sdk版本高于主工程,将不能通过编译。
复制代码

 


本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/5404313.html,如需转载请自行联系原作者

相关文章
|
7月前
|
存储 Java 数据库
Android数据存储:什么是Room Persistence Library?
Android数据存储:什么是Room Persistence Library?
139 0
|
7月前
|
Java 关系型数据库 数据库
Android App连接真机步骤与APP的开发语言和工程结构讲解以及运行实例(超详细必看)
Android App连接真机步骤与APP的开发语言和工程结构讲解以及运行实例(超详细必看)
106 0
|
存储 传感器 定位技术
《移动互联网技术》 第四章 移动应用开发: Android Studio开发环境的使用方法:建立工程,编写源程序,编译链接,安装模拟器,通过模拟器运行和调试程序
《移动互联网技术》 第四章 移动应用开发: Android Studio开发环境的使用方法:建立工程,编写源程序,编译链接,安装模拟器,通过模拟器运行和调试程序
193 0
|
4月前
|
开发工具 Android开发
解决Android运行出现NDK at /Library/Android/sdk/ndk-bundle did not have a source.properties file
解决Android运行出现NDK at /Library/Android/sdk/ndk-bundle did not have a source.properties file
188 4
解决Android运行出现NDK at /Library/Android/sdk/ndk-bundle did not have a source.properties file
|
6月前
|
XML Java Android开发
04. 【Android教程】Android 工程解析及使用
04. 【Android教程】Android 工程解析及使用
69 0
04. 【Android教程】Android 工程解析及使用
|
6月前
|
开发工具 Android开发
技术经验分享:Android编译命令m、mm、mmm区别及工程搭建示例
技术经验分享:Android编译命令m、mm、mmm区别及工程搭建示例
381 0
|
7月前
|
监控 Devops Java
大型IM工程重构实践:企业微信Android端的重构之路
本文将探讨我们在大型IM工程实践中采用的一些行之有效的重构方法和实例,以及如何让一个大型软件系统持续保持活力。
160 0
|
7月前
|
Java Android开发
[Android AIDL] --- AIDL工程搭建
[Android AIDL] --- AIDL工程搭建
78 0
|
7月前
|
JavaScript Java 开发工具
Vue project package Android App
Vue project package Android App
79 0
|
测试技术 开发工具 数据库
《移动互联网技术》第十一章 Android应用工程案例: 掌握Android系统的需求分析和设计以及 Android项目的程序测试和版本管理方法
《移动互联网技术》第十一章 Android应用工程案例: 掌握Android系统的需求分析和设计以及 Android项目的程序测试和版本管理方法
136 0