本文转自:http://www.linuxidc.com/Linux/2012-02/53401.htm

如何把多个Android Project打包成一个APK(你的项目如何引用其他项目)。

如何把多个android project 打包成一个apk呢,其实原理是这样的,一个主project引用其他的project,其他project类似于jar包一样被引用,当然和jar的引用原理有很大的区别。下面是详细的说明。大部分都是翻译的官网开发向导上的文章。
第一步,把普通的android project设置成库项目
库项目也是一个标准的android项目,因此你先创建一个普通的android项目。 这个项目可以起任何的名称,任何的报名,设置其他需要设置的字段等,如图1所示。

接着把项目设置成库项目,步骤如下

1.在Package Explorer中, 鼠标右键项目文件夹,点击 Properties.
2.在Properties 窗口, 选择"Android" ,Library 属性显示在右下边.
3.把"is Library" 单选框选择上,再点击 Apply.
4.点击 OK 关闭Properties 窗口.
这时,这个项目就变成库项目了。

当然,java项目也可以让其变成一个库项目,非常简单,执行上面的四步。其他程序项目就可以引用库项目了。

图 1.使一个项目为库项目

创建manifest文件
一个库项目的manifest文件也和标准的android应用程序一样,声明所有共享的组件。

比如APIDemo中的TicTacToeLib 这个例子,库项目声明了Activity GameActivity:

<manifest> ... <application> ... <activity android:name="GameActivity" /> ... </application> </manifest>第二步 引用库项目
如果你开发的应用程序想要包括库项目中的代码和资源,非常简单,引用步骤如下


1.在Package Explorer中, 鼠标右键项目文件夹,点击 Properties.
2.在Properties 窗口, 选择"Android" ,Library 属性显示在右下边.
3.点击Add ,打开了Project Selection 对话框.
4.从可用库项目列表选择一个项目,然后点击 OK.
5.对话框关闭之后点击 Apply (在Properties 窗口).
6.点击 OK 关闭Properties 窗口.

完成以上六步,Eclipse 会重建项目,把库项目中的内容包含进去。 如图2所示

图 2. 让项目引用一个库项目

如果你想增加多个库项目的引用,使用up和down可以设置他们的相对的优先级和合并顺序。工具在合并引用的库的时候顺序是从低优先级(列表的下面)到高优先级(列表的上面)。 如果不只一个库定义了相同的资源ID,这个工具选择资源时会选择高优先级的资源。应用程序自身拥有最高的优先级,自身的资源zThe application itself has highest priority and its resources are always used in preference to identical resource IDs defined in libraries.

在menifest文件中声明库中的组件

在manifest 文件中必须增加对在当前程序中用到的库项目中的所有的组件 。比如,你必须声明任何用到的 <activity>, <service>, <receiver>, <provider>等,<permission>, <uses-library>, 和其他类似的元素。

声明库项目中的组件时,必须使用包含包名的类全名。

在TicTacToeMain 例子中,声明库Activity GameActivity :


<manifest> ... <application> ... <activity android:name="com.example.android.tictactoe.library.GameActivity" /> ... </application> </manifest>For more information about the manifest file, see the documentation for AndroidManifest.xml.

本篇文章来源于 Linux公社网站(http://www.linuxidc.com/) 原文链接:http://www.linuxidc.com/Linux/2012-02/53401.htm

更多相关文章

  1. ReactNative入门-Android原生项目转RN项目
  2. Android(安卓)NoSQL之SnappyDB
  3. Android瀑布流控件——AndroidStaggeredGrid
  4. [Android] 基于 Linux 命令行构建 Android(安卓)应用(五):Ant 构建
  5. Eclipse中使用Android5.0新特性CardView
  6. Android线程优先级设置方法
  7. Android(安卓)studio 新建项目后报错:Could not GET 'https://dl.
  8. 【Android(安卓)Studio】eclipse项目导入Android(安卓)Studio
  9. Android(安卓)App Ant打包

随机推荐

  1. Android移植oprofile性能监测工具
  2. Real6410 Android(安卓)2.1 的 SDIO WiFi
  3. Ubuntu 环境下Android-NDK独立工具链安装
  4. android AlertDialog对话框
  5. Android(安卓)Caused by: java.lang.Ille
  6. Android(安卓)Base64加密解密
  7. Android(安卓)如何关闭Navigation Bar M
  8. Ophone倒转屏幕自适应问题
  9. 基于Intel x86 Android的RAD游戏开发
  10. 使用 PopupWindow 的注意事项