android studio怎么添加library

android studio怎么添加library,第1张

启动AndroidStudio后,打开需要接收Library的项目。比如有两个项目,项目A,和Library项目B,那么打开项目A,点击右上角的File菜单。在下拉菜单中依次找到New— —Import Module,点击打开项目导入窗口。注意导入的是Module而不是Project,如果是Project的话AndroidStudio会自动打开一个新的窗口编辑,那样的话就是不Library了。在打开的窗口中点击右侧的"..."浏览窗口,在文件夹窗口中找到要导入的Library项目的位置,选择后点击底部的OK按钮导入。导入窗口中显示了该Module(项目)的详细信息,点击Finish完成导入。需要注意的是导入到AndoridStudio项目中的Library也必须是AndroidStudio项目,不能是Eclipse项目,如果是Eclipse项目的话,需要选择导出AndroidStudio项目。把Library项目添加到源项目中点击顶部左上角的File菜单,在出现的下拉菜单中找到Project Structure,点击进入。在窗口左侧选择原始的项目后,点击右侧的Dependencies(依赖项)。可以看到项目当前引用的jar包等信息。点击右侧的“+”添加按钮,在下拉菜单中找到Module Dependency(项目依赖),点击打开项目选择窗口。选择前面步骤中导入的Library项目后,点击OK按钮导入到原始项目中。原始项目的依赖项中就出现了导入的Libray项目,这时在项目中就能正确引用Library项目中的内容了,点击底部的OK按钮完成添加。出现是否更新CVS文件的提示窗口的话,点击Yes进行进行更新和确认。项目进入到Gradle自动构建的环节。构建完成后点击底部的Messages,选中Gradle Build。在里面提示了BUILD SUCCESSFUL,说明项目构建完成。这时Library项目就导入到原始项目完毕,可以在项目中正常引用Library项目中的内容了。

创建library供多个工程共享代码、资源是非常常见的需求,网上这种资料非常少,基本上都是讲创建java工程,然后export,这种方式缺点非常多,大家可以自己google一下。 

本文着重介绍如何创建Android library,并且在工程中使用此library提供的资源,具体步骤如下:

1. 创建一个Android工程,命名为MyLib

2. 进入工程设置选中Is Library 

3. 创建另一个Android工程,命名为MyProj

4. 进入工程设置,添加MyLib 

5. 在MyProj的AndroidManifest.xml中加入对library中activity的引用

<activity android:name="net.devdiv.mylib.MyLib" />

6. 由于编译后library中的资源和引用它的project资源是合并在一起的,为了避免重名问题,需要对library中资源进行重命名 

1). 把main.xml改为mylib.xml,同时修改MyLib.java代码setContentView(R.layout.mylib) 

2). strings.xml修改为

<?xml version="1.0" encoding="utf-8"?>

<resources>

    <string name="mylibhello">String fetched from lib!</string>

    <string name="mylib_app_name">MyLib</string>

</resources>

7. 在MyProj中引用MyLib的资源

package net.devdiv.myproj

import android.app.Activity

import android.os.Bundle

import android.widget.TextView

import net.devdiv.mylib.*

import android.content.Intent

 

public class MyProj extends Activity {

    /** Called when the activity is first created. */

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState)

        setContentView(R.layout.main)

        TextView tv = (TextView)findViewById(R.id.myprojtext)

       tv.setText(R.string.mylibhello)

         

        Intent it = new Intent(this, MyLib.class)

        startActivity(it)

    }

}

原文出处:http://www.devdiv.com/thread-36947-1-1.html


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/7908013.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存