[Android] 建立与使用Library

源码

前言

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

前言01

建立

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

  • 建立专案

    建立01

  • 建立设定

    建立02

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

  • MyClass.java

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

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

  • 产出myLibrary.jar

    建立03

使用

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

  • 建立专案

    使用01

  • 建立设定

    使用02

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

  • 开启Import对话框

    使用03

  • 选取File System

    使用04

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

  • 加入myLibrary.jar

    使用05

完成设定步骤之后,接着在专案预设的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的相关开发步骤。

  • 显示回传讯息

    使用06






附件列表

    原文地址:https://www.cnblogs.com/Full--Stack/p/8041842.html