在日常的开发中,我们常能看到许多的项目工程,往往会引用另外一个工程来实现某些功能,其引用的方式有些类似是引用jar(将工程当作一个jar包来使用),那么我们如何在自己的开发过程中这样操作和使用呢,经过网络资料的查找和筛选,目前有以下方法:

使用场景

现在已经有了一个Android工程A。我们想扩展A的功能,但是不想在A的基础上做开发,于是新建了另外一个Android工程B,想在B中引用A。

1.>一个思路是把工程A做成纯Jar包,但是,如果在工程A中用了R.java中的引用,则无法打成jar包了。原因是R.java是自动生成的,是动态的,每次编译都是不相同的。如果一定要做成jar包,就不能使用自动生成的R文件,用到资源时候就要写代码去获取。

2.>一个思路就是将工程A做成android library project。

设置被引用的工程A,选中工程A->右键->Properties->Android,将Is library项选中,然后Apply。或者是在被引用工程A中的project.properties文件中增加android:library=true;

设置引用工程B,选中工程B->右键->Properties->Android,在Library中,点击Add按钮,将A工程加入,然后Apply。或者是在被引用工程A中的project.properties文件中增加 android.library.reference.1=..\\xxx(工程目录)此时在B中就引入了A中的资源和代码,这些资源和代码都可以直接调用。

需要注意的是,因为A已经不再是一个完整的Android应用,而是一个类库工程,所以有一些内容还需要在B中配置一下。比如A中有lib库引用,则B中也要加入该lib库;比如A中的AndroidManifest.xml文件的内容,在B的AndroidManifest.xml文件中也要相应加上。


更多相关文章

  1. android二维码入库软件
  2. android 自定义闪退Dialog 收集闪退信息
  3. android 一行代码,快速实现图片验证码(附android studio 版小demo)
  4. Android隐式启动Activity可能存在的坑
  5. android 4.0 兼容性问题 java.lang.NoSuchMethodError TextView.
  6. android 页面布局时定义控件ID时@id/XX和@+id/xx 有什么区别?
  7. 花椒Android客户端多变体构建实践
  8. Android的信号格数显示优化
  9. 鸿洋大神博文Android(安卓)自定义View (一)中自定义属性所遇到的

随机推荐

  1. Android(安卓)8.0 状态栏信号显示、信号
  2. android中网络操作使用总结(http)
  3. Android初学心得和一些资料下载
  4. Android(安卓)四大组件之Activity 基础总
  5. Android学习攻略:手把手教你循序渐进地学
  6. Android中ViewFlipper的使用
  7. 在Android平台上实现条型码扫描与识别
  8. android 细分化面临的问题
  9. FFmpeg在Android上的移植优化步骤 .
  10. Android——腾讯X5使用记录