Android学习笔记_01 - Android中以Jar文件形式来封装类库
在开发过程中经常需要将一些代码封装后交付使用,尤其是一些公用函数类,可以给自己或他人复用,而不用过多关心模块里的代码实现。在Android中也可以实现此类需求,经过多方参考资料和测试,实现了通过下面的方式进行封装。注:测试环境见《前言》。
测试项目要求:只是为了展示封装步骤和注意事项,所以项目的功能做得足够简单。就是在Jar里封装一个“加法计算”的函数,在另外的调用工程里通过调用该函数实现加法。
1、 JAR文件的生成。
1.1、 创建工程
点击菜单:File – New – Android ApplicationProject。弹出下图的画面:
建立应用程序和工程名:ClassInJar ---- 表示该工程是封装类库的工程;
此处包名为:test.classinjia;
SDK:2.3.3;
点击下一步
按上图红色框子里进行勾选设置。继续点击下一步:一直按Next直到出现Finish,不用改变其它配置,成功建立工程,在Package Explorer里如下图所示:
1.2、 删除res目录下资源文件的内容,如下图所示
1.3、 删除AndroidManifest.xml中的无用内容,删除后如下图:
1.4、 建立功能实现的Java文件
在src文件夹点击鼠标右键菜单 – new – class,建立一个类,出现下图界面:
注意上图中红框内的输入,第一个是包名,和ClassInJar.Manifest.xml文件里的包名一致,见下图:
点击Finish按钮后,会在src目录下生产包“test.classinjar”和Java文件“MyClass.java”:
编辑MyClass.java文件,代码如下:
package test.classinjar;
public classMyClass {
public MyClass() {
// TODO Auto-generated constructor stub
}
public int MyPlus(inta,intb){
return a+b;
}
}
MyPlus函数就是MyClass类里的一个公共函数,功能就是返回两个整数a、b的和。
1.5、 生产Jar文件
在工程名“ClassInJar”右键点击菜单:Export。弹出窗体如下图:
选择上图中红框里的选项,点击Next按钮
上图中,上方红框里的选择钮都清空,下方红框里指定输出文件名。点击“Finish”按钮。成功生产ClassInJar.jar文件。如下图:
2、 Jar文件的使用
2.1、建立使用Jar文件的示例工程
点击菜单:File – New – Android ApplicationProject。弹出下图的画面:
建立应用程序和工程名:UseTheJar ---- 表示该工程是调用类库Jar文件的工程;
此处包名为:test.usethejia;
SDK:2.3.3;
一直按Next直到出现Finish,不用改变其它配置,成功建立工程,在Package Explorer里如下图所示:
2.2、引用Jar文件
在PackageExplorer 视图里的UseTheJar项目目录上右键弹出菜单:Build Path--- Configure Build Path…;
选择Libraries页,点击“Add External JARs…”按钮
选择前面生成的Jar文件,本示例中文件路径为:D:\MobileApp\WorkSpace\ClassInJar\ClassInJar.jar。点击“打开按钮”:
如上图红色框所示,指定的Jar文件已经成功加入。
选择Order and Export页:
注意选中上图中红框子里的CheckBox选项。点击OK按钮。
Jar文件导入成功,如下图所示:
2.3、修改res目录 ---- layout目录 ----- “activity_main.xml”文件,内容如下:
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<TextView
android:id="@+id/msgTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello_world"/>
<Button
android:id="@+id/button1"
android:layout_width=" fill_parent "
android:layout_height="wrap_content"
android:text="A + B = ?"
android:onClick="Button1Click"/>
</LinearLayout>
2.4、编写“MainActivity.java”文件代码,如下:
package test.usethejar;
import test.classinjar.MyClass;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.TextView;
public classMainActivity extends Activity {
@Override
protected void onCreate(BundlesavedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public booleanonCreateOptionsMenu(Menu menu) {
// Inflate themenu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void Button1Click(View v){
TextViewmsgTextView = (TextView)findViewById(R.id.msgTextView);
MyClassmyClass = newMyClass();
msgTextView.setText(myClass.MyPlus(1,2)+””);
}
}
2.5、在模拟器上运行程序
初始加载如下图所示:
点击按钮后,结果如下图所示,
说明在UserTheJar这个工程里,MainActivity.java调用ClassInJar里的类MyClass里的函数MyPlus成功,完成了1+2=3的运算。
调试成功。完成了Jar文件对类库的封装试验。
示例源码: android学习笔记_01 - Android中以Jar文件形式来封装类库.rar