[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 ...
随机推荐
- Java EE开发平台随手记2——Mybatis扩展1
今天来记录一下对Mybatis的扩展,版本是3.3.0,是和Spring集成使用,mybatis-spring集成包的版本是1.2.3,如果使用maven,如下配置: <properties&g ...
- Java 线程 — ThreadLocal
ThreadLocal 先来看看ThreadLocal的注释: This class provides** thread-local variables**. These variables diff ...
- ssh(sturts2_spring_hibernate) 框架搭建之JPA代替hibernate
一.JPA用来替代hibernate ⒈JPA的全称是JAVA Persistence API.指的是JPA通过注解或者是XML描述对象—关系表的映射关系,并且将运行的实体对象持久化数据库中. ⒉JP ...
- Account problem-There may be a problem with your account. Please contact us. Sign out
很多人在使用开发者账号AppleID的时候,都会碰到如下问题 There may be a problem with your account. Please contact us. 登录到苹果的开发 ...
- 移动端调试工具DebugGap推荐。
因为现在项目大部分都是在写移动端,但是调试起来实在是不方便,虽然可以用chrome来模拟手机端,但实际上差别还是有点大的,最近找到了一款比较不错的调试工具,这里分享一下了,虽然网上已经有分享过了,但还 ...
- mysqldump导出不包含存储过程
mysqldump导出不包含存储过程 mysqldump -u 数据库用户名 -p -n -t -d -R --triggers=false 数据库名 > 文件名 这样单独把存储过程和函数导出 ...
- 深入理解CSS浮动
× 目录 [1]定义 [2]特性 [3]表现 [4]重叠 前面的话 浮动最早的使用是出自<img src="#" align="right">,用于 ...
- Anti-If: The missing patterns--转
原文地址:http://code.joejag.com/2016/anti-if-the-missing-patterns.html Around 10 years ago I encountered ...
- Deep learning:四十六(DropConnect简单理解)
和maxout(maxout简单理解)一样,DropConnect也是在ICML2013上发表的,同样也是为了提高Deep Network的泛化能力的,两者都号称是对Dropout(Dropout简单 ...
- Deep learning:四十五(maxout简单理解)
maxout出现在ICML2013上,作者Goodfellow将maxout和dropout结合后,号称在MNIST, CIFAR-10, CIFAR-100, SVHN这4个数据上都取得了start ...