[Android] 建立与使用Library

前言

使用Eclipse开发Android项目时,开发人员可以将可重用的程序代码,封装为Library来提供其他开发人员使用。本篇文章介绍如何将可重用的程序代码封装为Library,主要为自己留个纪录,也希望能帮助到有需要的开发人员。

建立

先开启Eclipse来建立一个新项目:「myLibrary」,勾选「Mark this project as a library」用来标注新项目为Library类型,并且取消暂时用不到的两个选项:「Create custom launcher icon」、「Create Activity」。之后这个项目就可以用来封装可重用的程序代码,提供其他开发人员使用。

  • 建立项目

  • 建立设定

接着在MyLibrary加入一个新类别:「MyClass」,做为提供给其他开发人员使用的程序代码。

  • MyClass.java

    package myLibrary;
    
    public class MyClass {
    
        // methods
    public String getMessage()
    {
    return "Clark";
    }
    }

建立类别之后,只要存盘并且编译项目,就可以在项目的bin目录下取得编译完成的myLibrary.jar。

  • 产出myLibrary.jar

使用

接着开启Eclipse来建立一个新项目:「myAPP」,这个项目用来说明,如何使用封装为Library的程序代码。

  • 建立项目

  • 建立设定

再来在项目的lib目录上点击鼠标右键开启Import对话框,并且选取File System。

  • 开启Import对话框

  • 选取File System

接着选择先前所建立的myLibrary下的bin目录,把myLibrary.jar加入到目前项目里。

  • 加入myLibrary.jar

完成设定步骤之后,接着在项目预设的MainActivity.java文件里面,加入下列程序来使用Library里面所封装的程序代码。

  • 加入Library参考

    import myLibrary.MyClass;
  • 使用Library中的程序代码

    // test
    MyClass x = new MyClass();
    String message = x.getMessage();
  • 完整的MainActivity.java

    package com.example.myapp;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.app.AlertDialog.Builder;
    import android.os.Bundle;
    import myLibrary.MyClass; public class MainActivity extends Activity { @Override
    protected void onCreate(Bundle savedInstanceState) { // super
    super.onCreate(savedInstanceState); // init
    setContentView(R.layout.activity_main); // test
    MyClass x = new MyClass();
    String message = x.getMessage(); // alert
    Builder alert = new AlertDialog.Builder(this);
    alert.setMessage(message);
    alert.show();
    }
    }

最后,执行MyAPP。可以在执行画面上,看到一个Alert窗口显示从Library取得的讯息内容,这也就完成了使用Library的相关开发步骤。

  • 显示回传讯息

范例下载

范例程序代码:下载地址

[Android] 建立与使用Library的更多相关文章

  1. Android Studio导入System Library步骤

    转载请注明出处:http://www.cnblogs.com/cnwutianhao/p/6242170.html 请尊重知识产权!!!  同步更新到CSDN:http://blog.csdn.net ...

  2. Android Library和Android APP、Java Library的区别

    Android Library和Android APP.Java Library的区别 Android Library在目录结构上与Android App相同,它能包含构建APP所需的一切(如源代码. ...

  3. Android JAR包、Library项目

    [JAR包] android引入JAR包,打包成JAR包,打包成Library项目,导入Library项目 (1)项目导入JAR包:1.在项目目录里建立一个libs目录,将外部jar包拷贝在里面.2. ...

  4. Android开发:怎样把Android studio中的Library公布到Jcenter

    本人之前写了个简单的库,想放到Jcenter上.查过各种资料.踩过各种坑,久经折腾.最终发现了一个很easy而且高效的方法.现分享出来,该方法本人亲測可用,实现起来大概仅仅须要半个小时.这种方法是国外 ...

  5. Android 建立文件夹、生成文件并写入文本文件内容

    一.首先添加权限 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE">& ...

  6. Android应用Design Support Library完全使用实例

    阅读目录 2-1 综述 2-2 TextInputLayout控件 2-3 FloatingActionButton控件 2-4 Snackbar控件 2-5 TabLayout控件 2-6 Navi ...

  7. Android material design support library -- CollapsingToolbarLayout简介

    本文是codetrick上material design support library教程的第三篇,主要讲的是CollapsingToolbarLayout的概念和应用方法. 原文链接:Materi ...

  8. Android建立模拟器进行调试

    安装好android开发环境后.用到下面几个命令.android, adb, emulator android - 最主要的android命令.能够进行sdk更新,列出设备源,生成虚拟设备等. adb ...

  9. 安卓高级3 Android应用Design Support Library完全使用实例

    原作者:http://www.open-open.com/lib/view/open1433385856119.html 1 背景 上周一年一度的Google IO全球开发者大会刚刚结束,Google ...

随机推荐

  1. 初次使用IDEA的相关技巧

    前言:由于初次使用IDEA,所以很多配置都不是非常熟悉,经过一下午慢慢熟悉和同事的帮助,终于有所斩获,现在我把这个总结写出来,希望能够帮助初次使用的java工程师. 1:下载和安装 下载地址:http ...

  2. poj 3321 Apple Trie

    /* poj 3321 Apple Trie 这道题的关键是如何将一个树建成一个一维数组利用树状数组来解题! 可以利用dfs()来搞定,我们在对一个节点深搜后,所经过的节点的数目就是该节点的子树的数目 ...

  3. poj1330Nearest Common Ancestors 1470 Closest Common Ancestors(LCA算法)

    LCA思想:http://www.cnblogs.com/hujunzheng/p/3945885.html 在求解最近公共祖先为问题上,用到的是Tarjan的思想,从根结点开始形成一棵深搜树,非常好 ...

  4. vs xamarin android 读取rest

    private void Btn_Click(object sender, EventArgs e) { var u = FindViewById<EditText>(Resource.I ...

  5. Hadoop官方文档翻译——MapReduce Tutorial

    MapReduce Tutorial(个人指导) Purpose(目的) Prerequisites(必备条件) Overview(综述) Inputs and Outputs(输入输出) MapRe ...

  6. 谈谈Java程序员进阶的那些知识和方向

    谈谈Java程序员进阶的那些知识和方向 记得前段时间看过一篇文章谈到一种程序员叫野生程序员,战斗力极强,可以搞定一切问题,但是通常看问题抓不到本质,或者说是google/baidu/stackover ...

  7. Elasticsearch——禁止Body中的index覆盖Url中的index参数

    本篇继续一下Elasticsearch日常使用的技巧翻译. 在Elasticsearch有很多的api支持在body中指定_index等信息,比如mget或者msearch以及bulk. 默认的情况下 ...

  8. BZOJ1179 Atm //缩点+spfa

    1179: [Apio2009]Atm Description Input 第一行包含两个整数N.M.N表示路口的个数,M表示道路条数.接下来M行,每行两个整数,这两个整数都在1到N之间,第i+1行的 ...

  9. Auto Mapper03

      经过上一篇博客的学习,大体了解了Auto Mapper的运行机制和操作流程.我们下来学习下,AutoMapper里面具体的一些东西. 一:规则       当我们使用AutoMapper创建实体和 ...

  10. C#对图片文件的压缩、裁剪操作初探

    在做项目时,对图片的处理,以前都采用在上传时,限制其大小的方式,这样带来诸多不便.毕竟网站运维人员不一定会对图片做处理,经常超出大小限制,即使会使用图片处理软件的,也由于个人水平方面原因,处理效果差强 ...