[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 ...
随机推荐
- 构造persen
package java1; //人类 public class Person { //属性 成员变量 String name; int age=30; //方法 函数 成员函数 void hello ...
- css text-align-last设置末尾文本对齐方式
text-align-last:auto | start | end | left | right | center | justify auto: 无特殊对齐方式. left: 内容左对齐. cen ...
- 移动端BUG汇总
position:fixed问题 固定定位到底部会把最后一个元素盖住 你会发现最后一个字被盖住了,并且还滚动不下去. 解决方法: 给后一个元素添加一个高度,或者给body加margin-bottom ...
- OpenCascade HLR for Pipe Model
OpenCascade HLR for Pipe Model eryar@163.com 摘要Abstract:在工厂辅助设计(Plant Design)或船舶辅助设计(Ship Design)等CA ...
- 构建自己的PHP框架--抽象框架的内容
上一篇博客中,我们搭建了一个最简单的框架,从单一入口的public/index.php进入,解析出相应的Controller和Action,去执行,渲染出相应的页面或者输出相应的数据. 但是我们可以看 ...
- c#socket同步通信
再次特别感谢张子阳老师的文章,读后深感益处. 废话不多说,先贴代码 这是服务器端代码 using System; using System.Collections.Generic; using Sys ...
- 这10道javascript笔试题你都会么
1.考察this var length = 10; function fn() { console.log(this.length); } var obj = { length: 5, metho ...
- Wee – 为现代 Web 开发打造的 CSS 脚手架
Wee 包含许多开发人员在搭建响应的,互动的网站和应用程序时需要的组件.正如它的名字一样,Wee 是一个微小.移动优先的 CSS 复位框架.Wee 组织在一个简单的.可扩展的层次结构,拥有一致的样式和 ...
- td中绝对定位div的垂直居中问题
一.需求 典型的注册页面设计一般是一个三列多行的表格,左列为表单项label,中列为文本框,右列为填写说明和验证提示.如下图 因为整个表单的视觉重心在左中两列,所以在考虑表单整体相对页面水平居中和注册 ...
- [Logstash-input-redis] 使用详解
redis插件的完整配置 input { redis { batch_count => 1 #返回的事件数量,此属性仅在list模式下起作用. data_type => "lis ...