现在已经有了一个Android工程A。我们想扩展A的功能,但是不想在A的基础上做开发,于是新建了另外一个Android工程B,想在B中引用A。
一个思路是把工程A做成纯Jar包,这样其他的工程就可以直接引用了。
但是,如果在工程A中用了R.java中的引用,则无法打成jar包了。原因是R.java是自动生成的,是动态的,每次编译都是不相同的。如果一定要做成jar包,就不能使用自动生成的R文件,用到资源时候就要写代码去获取。
另一个思路就是将工程A做成android library project。
设置工程A,右键->Properties->Android,将Is library项选中,然后Apply。设置工程B,右键->Properties->Android,在Library中,点击Add按钮,将A工程加入,然后Apply。此时在B中就引入了A中的资源和代码,这些资源和代码都可以直接调用。需要注意的是,因为A已经不再是一个完整的Android应用,而是一个类库工程,所以有一些内容还需要在B中配置一下。比如A中有lib库引用,则B中也要加入该lib库;比如A中的AndroidManifest.xml文件的内容,在B的AndroidManifest.xml文件中也要相应加上
分享到:
相关推荐
- `MLKitDemo`可能是一个关于如何使用Android视觉库(如Google ML Kit)的例子,它展示了如何在实际应用中集成aar包提供的功能。 5. **Android视觉库使用指南V1.1**: - 这个文本文件可能提供了关于如何在Android...
我们想扩展A的功能,但是不想在A的基础上做开发,于是新建了另外一个Android工程B,想在B中引用A。 一个思路是把工程A做成纯Jar包,这样其他的工程就可以直接引用了。 但是,如果在工程A中用了R.java中的引用,则...
这个"Android操作sqlite完整工程"提供了一个完整的解决方案,帮助开发者在Android应用程序中有效地管理和操作数据库。以下是对该工程中可能包含的关键知识点的详细解释: 1. **SQLite数据库基础**: SQLite是一个...
在布局XML文件中,通常会有一个WebView标签,通过设置`android:id`来引用它,然后在Java代码中初始化并加载网页。 2. **WebView的使用**: - 初始化:在Activity的`onCreate`方法中,通过`findViewById`找到...
- 在Eclipse中,一个Android工程通常包含以下几个关键文件夹和文件: - `src`:存放Java源代码,每个Activity(应用程序界面)通常对应一个Java类。 - `res`:资源文件夹,包括布局(layout)、图标(drawable)...
Android 中 子moudle中provider和主工程中provider冲突Android 中 子moudle中provider和主工程中provider冲突Android 中 子moudle中provider和主工程中provider冲突
1、正常给一个module加入aar文件的步骤是: 1.把aar文件放入module文件夹下libs包下 2.然后在项目的build.gradle文件的android节点下加入 3. 1. repositories { flatDir { dirs 'libs' } } 4.然后继续在...
这个"Android打开本地HTML网页AndroidStudio工程.rar"文件很可能包含了一个简单的示例项目,演示如何在Android应用中加载并显示本地HTML文件。这里我们将深入探讨实现这一功能所涉及的关键知识点。 1. **WebView...
在Android开发中,有时我们需要将多个相互依赖的工程合并成一个单一的APK,以便用户可以更方便地安装和使用。这个过程被称为“多工程打包”。以下是对这一主题的详细阐述: 首先,我们要理解为什么需要将多个APK...
一个典型的Android工程包含src目录(存放源代码)、res目录(存放资源文件)、AndroidManifest.xml(应用清单文件)以及其他必要的配置文件。Ant通过解析这些文件,进行编译和打包操作。 4. **build.xml文件** ...
### 如何更改Eclipse中Android工程中的包名 在Android应用开发过程中,有时我们需要更改项目的包名,尤其是在处理包名冲突的问题时。如果两个APK的包名相同,那么安装时旧的应用会被新安装的应用覆盖,这可能会导致...
要将SystemUI源码工程导入Eclipse,首先需要搭建一个合适的Android开发环境。这涉及到安装Java JDK、配置Android SDK和设置环境变量等步骤。开发者可以通过提供的网络链接参考详细的环境搭建教程。 在环境搭建完成...
在本知识点中,我们将详细讲解如何创建一个基本的Android工程,并在Android平台上展示“Hello World”程序。内容将涵盖从设置仿真器,到创建工程、添加代码,以及运行应用程序的完整流程。 ### Android平台简介 ...
嵌入Unity3D到原生Android工程是一种常见的技术实践,特别是在开发混合应用时,需要将3D游戏或交互式内容整合到Android应用中。本文将详细介绍如何通过三个主要步骤实现这一过程。 首先,我们需要导出Unity工程为...
1、项目中引入libray工程, 另请关注libray工程manifest中的配置信息 dependencies { compile project(":library") } 2、项目 Application 对象中的oncreate中初始化ServiceManager public void onCreate() { super...
在Android开发中,有时我们需要将一个模块化项目打包成AAR(Android Archive)文件,以便在其他Android项目中复用。Android Studio提供了便捷的方式来进行这个过程。本文将详细讲解如何在Android Studio中生成AAR包...
### Ant编译打包Android工程流程详解 #### 一、Ant编译打包步骤 在深入了解Ant如何帮助我们构建Android项目之前,我们先来了解整个编译打包的过程。 1. **使用aapt为项目资源生成R.java文件** - **工具介绍**:...
在Android开发领域,创建一个类似QQ的登录界面是学习移动端应用程序设计的重要实践。这个实战项目主要涉及以下几个关键知识点: 1. **布局设计**:QQ登录界面通常包含输入框(EditText)用于用户输入用户名和密码,...
例如,你可以为每个flavor创建一个单独的资源目录,如`src/flavor1/res`和`src/flavor2/res`,这样在编译时Gradle会自动合并这些资源。 构建时,可以在Android Studio的Gradle面板选择相应的构建变体进行编译和打包...