[Android] 建立与使用Library
[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的更多相关文章
- Android Studio导入System Library步骤
转载请注明出处:http://www.cnblogs.com/cnwutianhao/p/6242170.html 请尊重知识产权!!! 同步更新到CSDN:http://blog.csdn.net ...
- Android Library和Android APP、Java Library的区别
Android Library和Android APP.Java Library的区别 Android Library在目录结构上与Android App相同,它能包含构建APP所需的一切(如源代码. ...
- Android JAR包、Library项目
[JAR包] android引入JAR包,打包成JAR包,打包成Library项目,导入Library项目 (1)项目导入JAR包:1.在项目目录里建立一个libs目录,将外部jar包拷贝在里面.2. ...
- Android开发:怎样把Android studio中的Library公布到Jcenter
本人之前写了个简单的库,想放到Jcenter上.查过各种资料.踩过各种坑,久经折腾.最终发现了一个很easy而且高效的方法.现分享出来,该方法本人亲測可用,实现起来大概仅仅须要半个小时.这种方法是国外 ...
- Android 建立文件夹、生成文件并写入文本文件内容
一.首先添加权限 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE">& ...
- Android应用Design Support Library完全使用实例
阅读目录 2-1 综述 2-2 TextInputLayout控件 2-3 FloatingActionButton控件 2-4 Snackbar控件 2-5 TabLayout控件 2-6 Navi ...
- Android material design support library -- CollapsingToolbarLayout简介
本文是codetrick上material design support library教程的第三篇,主要讲的是CollapsingToolbarLayout的概念和应用方法. 原文链接:Materi ...
- Android建立模拟器进行调试
安装好android开发环境后.用到下面几个命令.android, adb, emulator android - 最主要的android命令.能够进行sdk更新,列出设备源,生成虚拟设备等. adb ...
- 安卓高级3 Android应用Design Support Library完全使用实例
原作者:http://www.open-open.com/lib/view/open1433385856119.html 1 背景 上周一年一度的Google IO全球开发者大会刚刚结束,Google ...
随机推荐
- unity生成的WP8.1工程的Title本地化实现
不同于WP本身工程的实现,unity的工程在package.appxmanifest文件中已经定义了 <Resources> <Resource Language="x-g ...
- 为大家分享一个 Ajax Loading —— spin.js
我们在做Ajax 异步请求的时候,一般都会利用一个动态的 Gif 小图片来制作一个Ajax Loading ,以便增加用户体验. 今天在网上发现了一个 Spin.js ,该 js 脚本压缩后5k,可以 ...
- HTML5标签嵌套规则
× 目录 [1]分类 [2]子元素 [3]总结 前面的话 在html5中,<a>元素的子元素可以是块级元素,这在以前是被认为不符合规则的.本文将详细介绍html5的标签嵌套规则 分类 ht ...
- poj3249Test for Job(记忆化搜索)
/* 题意:给一个DAG图,n个节点,每个节点都对应一个值,入度为零的点走到出度为零的点,计算所有可能路径 经过节点值的和最大! 思路:记忆话搜索:也就是如果我们搜索到某一个节点的时候发现该节点已经存 ...
- Floyd算法(一)之 C语言详解
本章介绍弗洛伊德算法.和以往一样,本文会先对弗洛伊德算法的理论论知识进行介绍,然后给出C语言的实现.后续再分别给出C++和Java版本的实现. 目录 1. 弗洛伊德算法介绍 2. 弗洛伊德算法图解 3 ...
- Anliven - 乱炖
001 --- Ping Yourself! 由TCP/IP协议栈而想到的: 你的"协议分层"是如何的?有谁或者什么事务所对应着?谁先谁后,什么重要? 你的"协议栈&qu ...
- Gradify - 提取图片颜色,创建响应式的 CSS渐变
被请求的HTTP对象之间的延迟会有一个时间段,这个期间网页看起来不完整.Gradify 可以分析出图像中4个最常见的颜色,创建一个梯度(或纯色)作为图片占位符.Gradify 可以在在任何图像发现最突 ...
- 十款让 Web 前端开发人员更轻松的实用工具
这篇文章介绍十款让 Web 前端开发人员生活更轻松的实用工具.每个 Web 开发人员都有自己的工具箱,这样工作中碰到的每个问题都有一个好的解决方案供选择. 对于每一项工作,开发人员需要特定的辅助工具, ...
- log4net 中错误 System.Web.HttpException (0x80004005): 文件不存在
用日志组件,Global 中配置的输出最后一个错误信息,总是出现下面的错误信息: 2014-04-01 14:35:41,757 级别:ERROR 信息:[Exception]:System.Web. ...
- Windows Azure HandBook (4) 分析Windows Azure如何处理Session
<Windows Azure Platform 系列文章目录> 本文是对笔者之前的文章Windows Azure Cloud Service (13) 多个VM Instance场景下如何 ...