[JAR包] android引入JAR包,打包成JAR包,打包成Library项目,导入Library项目

摘要:
项目导入jar包:1.在项目目录中创建一个libs目录,并复制内部的外部jar包。本博客是总结Android开发文档翻译和个人在开发过程中的具体情况的第一步。将普通的android项目设置为库项目也是标准的android项目。因此,您应该首先创建一个普通的android项目。

(1)项目导入JAR包:
1、在项目目录里建立一个libs目录,将外部jar包拷贝在里面。
2、右键点击项目,Bulid Path->Configure Build Path
3、在设置Libraies项,选择刚才的位置添加jar包。
3、在Order and Export项里,将外部jar包选中。
4、clean项目后,重新编译,这时的apk包里应该是包含外部jar啦。
不过我还是有个疑惑,这个方法是我自己研究出来的,但是我所使用的jar包的demo示例项目中,却没有做我这样的设置,我特地看了一下,他只是添加了jar的路径引用,但是并没有在Order and Export项里打钩。然而编译的apk包也能正常运行。估计是在项目的其他配置文档里有设置吧,我没有琢磨出来,就先用我自己的土办法应付吧。

(2)将项目打包成JAR包:

有很多朋友都曾遇到过这样的问题,就是需要把自己创建的一个深圳达内android项目打包成jar包,在另一个项目中引用他,这样可以节约很多的时间
下面达内为大家讲解一下如何将自己创建的项目打包成jar包, 如何将android项目打包成jar包

在到dos窗口中运行 切入到项目的binclasses文件下面
cd 文件目录

1:如果你项目需要引入资料文件(如图片啊,txt文件等),先将你的这些资源文件放到项目下的asset文件中,然后再放你这个asset文件复制到你这个项目的classes文件下,
2:打开你的本地磁盘,找到你的项目的workspace文件夹,并找到你这个项目对应的文件名,进入这个项目的bin文件夹里,我们在可以找到这个classes文件
3:如果你项目还引用了其它第三方的jar,需把这个第三方jar包也时打入你这项目jar包,你则需把第三方 jar包解压,并把解压出来的文件复制到classes/com文件下面,我有这com文件是因为我的项目包名最外层是叫:com,你自己的则刚你自己的项目而定,与你项目的那文件并列存在,
4:然后在dos窗口中运行:jar -cvf  jarname.jar *,这样我们就可以看到在bin文件夹中生成一个jarname.jar的文件,这个文件就是我们达内培训项目打包后的文件



(3)将项目打包成Library项目

研究如何将资源以及activity文件大包成jar文件供项目调用,走了不少弯路,也尝试了各种不同方式,都不太理想,最终还是从android的官方文档中找到了完美的解决,这里做一个总结。
这篇博文内容是结合android 开发文档的翻译以及个人在开发过程中的具体情况的一个总结第一步,把普通的android project设置成库项目库项目也是一个标准的android项目,因此你先创建一个普通的android项目。 这个项目可以起任何的名称,任何的报名,设置其他需要设置的字段等,如图1所示。
接着把项目设置成库项目,步骤如下

  • Package Explorer中, 鼠标右键项目文件夹,点击 Properties.
  • Properties 窗口, 选择"Android" ,Library属性显示在右下边.
  • 把"is Library" 单选框选择上,再点击 Apply.
  • 点击 OK 关闭Properties 窗口.

这时,这个项目就变成库项目了。
当然,java项目也可以让其变成一个库项目,非常简单,执行上面的四步。其他程序项目就可以引用库项目了。
[JAR包] android引入JAR包,打包成JAR包,打包成Library项目,导入Library项目第1张
图 1.使一个项目为库项目 
创建manifest文件一个库项目的manifest文件也和标准的android应用程序一样,声明所有共享的组件。
比如APIDemo中的TicTacToeLib 这个例子,库项目声明了Activity GameActivity:
<manifest>  ...  <application>    ...    <activity android:name="GameActivity" />    ...  </application></manifest>第二步 引用库项目如果你开发的应用程序想要包括库项目中的代码和资源,非常简单,引用步骤如下

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

完成以上六步,Eclipse 会重建项目,把库项目中的内容包含进去。 如图2所示
[JAR包] android引入JAR包,打包成JAR包,打包成Library项目,导入Library项目第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>需要了解更多关于androidManifest的信息请参阅 AndroidManifest.xml.

免责声明:文章转载自《[JAR包] android引入JAR包,打包成JAR包,打包成Library项目,导入Library项目》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇cp命令SVN checkout 出的项目在PHPstorm中打开没有subversion(SVN)选项按钮怎么办?下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Springcloud学习笔记38读取 .properties 配置文件的工具类PropertyUtils和@ConfigurationProperties读取yaml文件中配置的数据库连接池druid属性

1.读取 .properties 配置文件的工具类PropertyUtils 项目中经常将一些配置信息放到properties文件中,读取非常方便,下面介绍几种java读取properties配置文件的方式。先看示例的properties文件: 通过jdk提供的java.util.Properties类,基于ClassLoder读取配置文件,实现prop...

在eclipse中添加android ADT

对于程序开发的学者来说,eclipse并不陌生,它为我们提供了一个非常广阔的平台来开发程序。同样我们也可以用它来开发android程序。 但是在eclipse中并不能直接开发android程序,需要我们安装一个ADT插件。下面就介绍ADT插件的安装。 第一步,添加ADT 打开eclipse,进入工作界面后点击菜单栏的help,选择install new s...

由浅到深详细讲解JSP自定义标签

一、基本概念 1、标签(Tag) 标签是一种XML元素,通过标签可以使JSP网页变得简洁并且易于维护,还可以方便地实现同一个JSP文件支持多种语言版本。由于标签是XML元素,所以它的名称和属性都是大小写敏感的。 2、标签库(Tag library) 由一系列功能相似、逻辑上互相联系的标签构成的集合称为标签库。 3、标签库描述文件(Tag Library D...

Android应用提升性能和用户体验

出色的用户体验有三个特征:速度快、响应及时以及无缝。下面的信息帮助你的应用如何能够在Android上实现这些特征。 一、速度快 你不能假设手机与桌面系统和服务器一样提速,更多的是你要关注你的代码是否高效。 编写高效的Android代码,应遵循两个原则: 不要做不必要的事 不要分配不必要的内存 以下是一些达到此目标的小技巧(有一些技巧是与oo的原则冲突,斟...

状态通知栏

在android的应用层中,涉及到很多应用框架,例如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架,通知机制,ActionBar框架等等。 下面就来说说经常会使用到通知机制中的通知栏框架(Notificaiton),它适用于交互事件的通知。它是位于顶层可以展开的通知列表。它会时不时的提醒你什么软件...

如何在嵌入式Linux上开发一个语音通信解决方案

开发一个语音通信解决方案是一个软件项目。既然是软件项目,就要有相应的计划:有多少功能,安排多少软件工程师去做,这些工程师在这一领域的经验如何,是否需要培训,要多长时间做完,中间有几个主要的milestone等。我们曾经四个人花了近一年时间开发了一个语音解决方案,成功通过验收,各项关键指标(语音质量、单向时延)均达到运营商要求。当时是在芯片公司,在公司自己的...