Android开发的组件打包成JAR安装包,通过封闭成JAR包,可以重复利用,非常有利于扩展和减少工作重复性。这里为了讲解方便,我用了之前的一个代码框架中核心部分,不了解的可以回头看一下:http://smallwoniu.blog.51cto.com/3911954/1324842

这里需要说明一下,一般,不需要打入jar包的文件有:

1、/src/目录下的activity文件

2、根目录下的文件,.classpath, .project, manifest.xml, .properties, .cfg等

3、/bin/目录下的文件,如:manifest.xml, .dex, .apk, resources.ap_等

4、/bin/res目录

5、/res/drawable 相关的目录

6、/res/layout/ 目录

7、/res/menu/ 目录

 

第一步:删除Activity,右击项目-->导出。

第二部:只勾选src即可。

第三步,点击Finish,桌面上就生成了一个名为Android的Jar包。

 

   下面我们就可以像使用其他JAR文件一样使用我们自己的自定义框架包了。下面给出本代码框架的一个小DEMO介绍如何使用这个JAR包。

 

1.新建文件夹lib,将jar 包放入。

2.关联导入的Android.jar.

3.点击Add JARS ,选择完成即可。

 

使用规则:

1.首先,为了完整使用框架,我们需要将一些辅助类添加进去,不清楚的可以看框架讲解的那篇(http://smallwoniu.blog.51cto.com/3911954/1324842)。

2.程序入口MainActivity:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
public class MainActivity extends Activity implements IActivity{
                                                                                                                                                                                                                                      
    public Button mBtnLogin; //登陆按钮:测试代码框架是否运行正常
    public TextView mTvLogin;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
                                                                                                                                                                                                                                          
        //1.将要执行任务的Activity,加入到集合中
        MyApplication.allActivity.add(this);
                                                                                                                                                                                                                                          
        this.mBtnLogin = (Button) findViewById(R.id.button1);
        this.mTvLogin = (TextView) findViewById(R.id.textView1);
        mBtnLogin.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                //2.产生任务:对应填入参数
                Task task = new Task(TaskID.MANAGER_LOGIN, "框架测试成功!!""---登陆任务----");
                //3.将当前任务加入到写好的线程池中()
                MyApplication.poolManager.addTask(task);
            }
        });
    }
    @Override
    public void init() {
        // TODO Auto-generated method stub
                                                                                                                                                                                                                                          
    }
    @Override
    public void refresh(Object... params) {
        //接收线程处理过后返回的数据
        mTvLogin.setText(params[0].toString());
    }
}

 

   到此,完成了打包的讲解,比较简单,好久没写博客了手有点生疏,希望可以帮助到大家!

 

  本例中所使用的框架Demo 和 最终完整使用的Android.jar的Demo下载地址:http://down.51cto.com/data/1092550

本文出自 “狂奔的蜗牛” 博客,请务必保留此出处http://smallwoniu.blog.51cto.com/3911954/1365339

【移动开发】Android中将我们平时积累的工具类打包的更多相关文章

  1. Android开发之封装log打印日志的工具类,实用logutils详细代码

    public final class LogUtil { /** all Log print on-off */ private final static boolean all = true; /* ...

  2. iOS开发拓展篇—封装音频文件播放工具类

    iOS开发拓展篇—封装音频文件播放工具类 一.简单说明 1.关于音乐播放的简单说明 (1)音乐播放用到一个叫做AVAudioPlayer的类 (2)AVAudioPlayer常用方法 加载音乐文件 - ...

  3. Android PermissionUtils:运行时权限工具类及申请权限的正确姿势

    Android PermissionUtils:运行时权限工具类及申请权限的正确姿势 ifadai 关注 2017.06.16 16:22* 字数 318 阅读 3637评论 1喜欢 6 Permis ...

  4. android开发时间和日期的代码实现工具类(一)

    android开发时间和日期工具类的代码实现: package com.gzcivil.utils; import android.annotation.SuppressLint; import an ...

  5. Android开发之使用Handler封装下载图片工具类(源码分享)

    假设每下载一张图片,就得重写一次Http协议,多线程的启动和handler的信息传递就显得太麻烦了,我们直接来封装一个工具类,便于我们以后在开发时随时能够调用. (1)在清单文件加入权限 <us ...

  6. Android开发学习之路-Palette颜色提取工具类使用

    视频(要FQ):https://www.youtube.com/watch?v=5u0dtzXL3PQ Palette是一个在support-v7包中的一个颜色提取工具类,用法比较简单,而且是谷歌官方 ...

  7. 【Android代码片段之六】Toast工具类(实现带图片的Toast消息提示)

    转载请注明出处,原文网址:http://blog.csdn.net/m_changgong/article/details/6841266  作者:张燕广 实现的Toast工具类ToastUtil封装 ...

  8. iOS开发 -- 为本地文件添加自定义属性的工具类

    前言:实际开发,我们可能会有这样的需求,就是为文件添加自定义的属性,或者是可以将文件的相关信息添加进该文件的属性中,这样可以以备下次读取利用. 那么本文就是要介绍"拓展文件属性的工具类&qu ...

  9. android的Log日志打印管理工具类(一)

    android的Log日志的打印管理工具类: package com.gzcivil.utils; import android.util.Log; /** * 日志打印管理 * * @author ...

随机推荐

  1. UIViewController的View显示在导航栏下面如何解决?

    ios7之前的版本中UIViewController中的view在显示后会自动调整为去掉导航栏的高度的,控件会自动在导航栏以下摆放. 在iOS7中UIViewController的wantsFullS ...

  2. 基于GBT28181:SIP协议组件开发-----------第五篇SIP注册流程eXosip2实现(二)

    原创文章,引用请保证原文完整性,尊重作者劳动,原文地址http://www.cnblogs.com/qq1269122125/p/3966794.html. 上章节讲解了讲解一个用eXosip2库实现 ...

  3. android 05

    控件:RadioButton CheckedBox RatingBar ProgressBar 下拉列表:ListView Spinner <!-- 单选按钮必须放在单选按钮组当中才能生效 ,并 ...

  4. ext之关键字mixins、statics、require

    1.mixins 说明:类似于面向对象中的多继承 <script type="text/javascript"> Ext.onReady(function () { / ...

  5. $_CFG = load_config(); /* 载入系统参数 */

    ecshop 中$_CFG数组主要是放置一些系统参数,并且全站共享的数据,在使用的时候,ecshop里面常常以$GLOBALS['_CFG']全局变量的模式来处理. ecshop 的$GLOBALS[ ...

  6. js 点名

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  7. [前端笔记]第一篇:html

    什么是 HTML? HTML 是用来描述网页的一种语言.HTML 指的是超文本标记语言 (Hyper Text Markup Language)HTML 不是一种编程语言,而是一种标记语言 (mark ...

  8. python种的builtin函数详解-第三篇

    exec_stmt ::= "exec" or_expr ["in" expression ["," expression]] eval(e ...

  9. OC中的@interface和java中的区别以及 @implementation @protocol

      java 在java中的interface是‘接口’的意思,而java的类声明用class,即接口用interface声明,类是用class声明,是两个独立的部分. 只有在类声明要实现某个接口时, ...

  10. Instruments 使用指南

    Instruments 用户指南 http://cdn.cocimg.com/bbs/attachment/Fid_6/6_24457_90eabb4ed5b3863.pdf 原著:Apple Inc ...