资讯专栏INFORMATION COLUMN

如何发布带静态资源的库(jar 包)——android 篇

iliyaku / 666人阅读

摘要:一个混合开发框架不止包含代码,还可能包含静态资源,比如数据库,默认脚本等。本文介绍了如何在系统中打包包含静态资源的包,以及设置自动编译。

一个混合开发框架不止包含代码,还可能包含静态资源,比如数据库,默认 js 脚本等。本文介绍了如何在 Android 系统中打包包含静态资源的 jar 包,以及设置 eclipse 自动编译。

处理项目

首先要使用 android sdk 提供的命令行工具处理已有的项目:

cd YourProjectDir
android update project -p ./
自定义 ant 编译步骤

上一步生成的 build.xml 中,会有一个对 custom_rules.xml 的引用,这个引用是可选的,没有 custom_rules.xml 也不会影响编译。但这个文件正好是用来添加自定义编译步骤的,要把 assets 资源添加到 jar 包中,就要创建这个文件。在工程目录下创建 custom_rules.xml 后,将以下内容添加到其中:



    
        Post Compile: add assests from ${asset.absolute.dir} to ${out.library.jar.file}
        
            
        
        Post Compile: rename ${out.library.jar.file} to ${out.absolute.dir}/${standalone.jar.file}.jar
        
        
    

其中standalone.jar.file 是定义在 local.properties 中的一个配置,表示你要生成的 jar 包的名字,当然你要写在别的地方也不是不行。这段代码做的事情就是在 compile 之后打一个 jar 包,把 assets 目录中的文件都压缩到 jar 包的 assets 目录中。然后将老版本的 jar 包删除,并将刚生成的 jar 包改成我们要的名字。这样打出来的 jar 包中会包含 assets 资源,apk 可以直接引用。为了不产生命名冲突,建议将 jar 包中的 assets 资源都放在一个以库名称命名的子目录中,这样 apk 中的资源就不会和库里的资源冲突了。

Eclipse 自动构建

为了使用 eclipse 调试(暂时还在使用 eclipse,android studio 应该大同小异),我们还需要配置 eclipse 工程(手上的项目暂时还不方便切换 android studio,以后再说),实现调用 ant 自动编译。首先你的 path 环境变量里肯定要有 ant,windows 平台建议安装 winant,mac 平台直接安装 ant 就好。

然后要配置 eclipse,达到每次修改原文件都自动调用 ant 编译的效果。具体方法是点击 project->properties,选择 builders,添加一个 builder,配置如图所示。然后把所有默认的 builder 都不选,只勾选新添加的 builder 即可。

具体设置如下图:

注意,这种做法的前提是我的工程并不算大,自动编译还能跟上修改,如果是大工程,还是不要自动编译了。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/12881.html

相关文章

  • 实用技巧 - 收藏集 - 掘金

    摘要:相信大家在做自己公司项目时,都有机会遇到下面的错误实现一个带下拉弹簧动画的掘金在刚推出的里面新增了一个叫的动画,也就是弹簧动画。效果如下模拟登录铁塔融云不规则扩散的效果掘金一个让你的哇哇哇哇闪屏页。 Android 快速开发(二),封装一个 BottomTabBaseActivity - Android - 掘金上一篇我们详细介绍了 [Android 快速开发(一),封装一个 TopB...

    Tangpj 评论0 收藏0
  • 有关Android插件化思考

    摘要:第五点更重要,做插件化需要控制两个地方。因此不符合插件化的需求,不作考虑。支持加载外部的或者文件,正好符合文件化的需求,所有的插件化方案都是使用来加载插件中的文件的。方案简单,适用于自身少量代码的插件化改造。年月是手机助手实现的一种插件化 最近几年移动开发业界兴起了「 插件化技术 」的旋风,各个大厂都推出了自己的插件化框架,各种开源框架都评价自身功能优越性,令人目不暇接。随着公司业务快...

    shmily 评论0 收藏0
  • 安卓框架集合 - 收藏集 - 掘金

    摘要:收藏安卓开发中非常实用优秀的库有图有真相掘金本来是打算收藏工具类的但转念一想已经有这么多优秀的库了就没必要再去重复造轮子了便归纳工作中比较实用的库吧不用在花精力去找了收藏工作中常用的工具类库等都是非常优秀的库开发必备神器秀趣界的一股清流 收藏安卓开发中非常实用优秀的库! 有图有真相! - Android - 掘金本来是打算收藏工具类的,但转念一想,已经有这么多优秀的库了,就没必要再去重...

    SKYZACK 评论0 收藏0
  • APK反逆向之二:四种基本加固方式

    摘要:本篇章主要介绍应用加固的最基础的四种方式混淆签名比对验证编译动态库代码动态加载原文地址反逆向之二四种基本加固方式简介应该大多数开发者都不会关注应用会不逆向破解,而且现在有第三方厂商提供免费的加固方案,所以应用的安全性就全部依赖于第三方。 近些年来移动 APP 数量呈现爆炸式的增长,黑产也从原来的PC端移到了移动端,伴随而来的逆向攻击手段也越来越高明。本篇章主要介绍应用加固的最基础的四种...

    superw 评论0 收藏0
  • APK瘦身记,如何实现高达53%的压缩效果

    摘要:欲瘦身,我们先找找胖的原因和问题。再次强调下,请不要上传任何未发布的产品。那么,如何解决呢笔者首先尝使用的方式,发现和都未能解决问题。利用压缩,我们对整个包进行了个点的压缩,这是一个超出预期的成果。 作者:非戈@阿里移动安全,更多技术干货,请访问阿里聚安全博客 1. 我是怎么思考这件事情的 APK是Android系统安装包的文件格式,关于这个话题其实是一个老生常谈的题目,不论是公司内部...

    AlphaGooo 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<