怎样把多个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项目也能够让其变成一个库项目,很easy,运行上面的四步。

其它程序项目就能够引用库项目了。



创建manifest文件

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

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

<span style="font-size:14px;"><manifest>
...
<application>
...
<activity android:name="GameActivity" />
...
</application>
</manifest></span>

引用库项目

假设你开发的应用程序想要包含库项目中的代码和资源,很easy。引用过程例如以下

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

完毕以上六步,Eclipse 会重建项目。把库项目中的内容包括进去。 如图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>


怎样把多个Android Project打包成一个APK的更多相关文章

  1. [UE4]安卓打包成一个apk

    勾上就可以了

  2. 将java project打包成jar包,web project 打包成war包的几种演示 此博文包含图片

    转: http://blog.csdn.net/christine_ruan/article/details/7491559 http://developer.51cto.com/art/200907 ...

  3. ant:如何用ant将web project打包成war包

    说明:src中的文件将不会呈现出来,诸位可以自己写一个简单的web项目,然后依照我所提供的ant脚本配置来设置. 文件结构如图所示:               配置为下: build.xml < ...

  4. 将java project打包成jar包,web project 打包成war包的几种演示

    将java项目打包成jar 第一种:MyEclipse将java项目打包成jar. 1,右击项目,选择export . 2,点击Java,选择JAR file . 3,在JAR file文本中浏览打包 ...

  5. 将多个jar包重新打包成一个jar包

    我介绍的方法是使用java命令来操作的,所以首先的安装jdk,这个就自己搞定吧. 提取jar包 为了将多个jar包打包成一个jar包,首先要将每个jar包的内容提取出来放到一个文件夹下,具体的操作命令 ...

  6. 【Maven jar】打包单个或多个文件,有依赖jar包的将架包一起打包成一个jar包供别的项目引用

    之前有一片文章,是打包单个java文件的.这次想要将http://www.cnblogs.com/sxdcgaq8080/p/8398780.html  打包成jar包,发现这个java文件中引用了多 ...

  7. 如何将Debug文件夹下的资源打包成一个EXE文件直接执行

    前言:前段时间写了个小程序,想分享给好友看看,可所以资源都放在Debug文件夹下,整个文件夹发给人家这也太……,为了显得稍微专业一点,想把它们打包一个EXE文件执行,因为我见到到这样的程序,直接一个E ...

  8. 用py2exe打包成一个exe文件

    用py2exe打包成一个exe文件 http://blog.csdn.net/franktan2010/article/details/46514607

  9. winform把所有dll打包成一个exe

    大家都知道做winform开发,是可以利用visual studio进行打包的,但是这种打包的方式需要双击安装,那么有没有什么方法,可以把winform程序打包成绿色版呢?当然,这里的“绿色版”也是相 ...

随机推荐

  1. 通过FEDERATED存储引擎同步两实例间的表数据

    需求情景:实例1中A库中的三个视图是实例2中的B库所依赖的,B需要A库中三个视图的实时数据. 方案:通过FEDERATED来完成跨势力的查询FEDERATED存储引擎表只会创建表结构,不会存储表数据, ...

  2. js只能输入汉字

    var reg = new RegExp("[\\u4E00-\\u9FFF]+","g"); if(reg.test(val)){            al ...

  3. 利用MVC模式简单设计jsp分页效果

    利用Mysql创建一个表Car 用Eclipse创建一个Dynamic Web Project 在lib目录下导入Mysql的jar包 创建如下文件 package com.bean; public ...

  4. 【Luogu】P3746组合数问题(矩阵)

    题目链接 哇我一个活人的智商被题目碾压了 可以把问题转化为有nk个物品,问拿i件物品的方案数有多少种,其中i%k=r. 然后矩阵乘法加速DP即可. #include<cstdio> #in ...

  5. 【Luogu】P3768简单的数学题(杜教筛)

    题目链接 emm标题全称应该叫“莫比乌斯反演求出可狄利克雷卷积的公式然后卷积之后搞杜教筛” 然后成功地困扰了我两天qwq 我们从最基本的题意开始,一步步往下推 首先题面给出的公式是$\sum\limi ...

  6. [转] Makefile 基础 (10) —— Makefile 后序

    该篇文章为转载,是对原作者系列文章的总汇加上标注. 支持原创,请移步陈浩大神博客:(最原始版本) http://blog.csdn.net/haoel/article/details/2886 我转自 ...

  7. 【HDOJ6224】Legends of the Three Kingdoms(概率DP)

    题意:三国杀,给定4个白板武将的血量,4个角色轮流行动,每回合行动时如果该人存活则可以选择使阵营不同的角色血量-1,血量为0则死亡.每个人按自己获胜概率最大化行动,如果有多种方案概率相同则等概率选择这 ...

  8. 慕课 python 操作数据库2 银行转账实例

    CREATE TABLE `account` ( `acctid` ) DEFAULT NULL COMMENT '账户ID', `) DEFAULT NULL COMMENT '余额' ) ENGI ...

  9. C语言集锦(二) 图像显示 Windows和Linux

    关于图像显示有很多库可以用,Windows下有GDI,GDI+,D3D等,Linux下有X Window和Wayland,此外还有OpenGL ,SDL等图形库以及各种GUI库. 了解最原始的方式,对 ...

  10. Day 21 三元表达式、生成器函数、列表解析

    知识点程序: #! /usr/bin/env python # -*- coding: utf-8 -*- # __author__ = "DaChao" # Date: 2017 ...