我知道Jar和AAR之间的主要区别在于AAR包含布局,drawable等资源。我想创建一个包含Bitmap类的Jar文件。这可能与否?
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.widget.ImageView;
当我在Jar文件Android Studio中的类中导入andorid.graphics.Bitmap时 显示错误:无法解析符号'Bitmap','BitmapFactory''Context'和..
我按照以下步骤构建Jar文件:
档案>新>新模块> java库
我知道如何使用该库,我知道AAR中提供了类似Bitmap的andorid api类(也在AAR文件中可用资源文件中) 我的问题是在JAR文件中使用android api类。
答案 0 :(得分:0)
您可以使用自己的类创建.jar
,可以使用Bitmap
或任何Android API类。
这是一个文件BitmapHelper.java
package com.its.test;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
public class BitmapHelper {
public static void getBitmap(String fileName){
Bitmap bitmap= BitmapFactory.decodeFile(fileName);
}
}
Jar文件只是一个包含.class
个文件的zip文件,因此BitmapHelper.class
文件位于.jar
当我们需要使用.jar
时,只需将其添加到构建路径中,以便进行编译。
或者在gradle项目中将.jar
放在libs
文件夹中并以这种方式编译
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
如果您在本地/远程maven repo或其他任何部署中部署了.jar
,则可以使用该工件的group name
,artifact
和version
进行编译。
Jar和AAR之间的主要区别在于AAR包括 布局,绘图等资源。这使得它更容易 创建自包含的可视组件。例如,如果你有 使用相同登录屏幕的多个应用程序,您可以使用Jars 分享课程,但不是布局,风格等,你仍然必须 复制它们。使用AAR,一切都捆绑在一个整洁的包装中。
修改强>
Java库与.jar
不同,库是jar的集合。您可以轻松地将.jars
集成到android项目中,但是如果您想要添加Java库,则需要在纯Java库和android之间定义绑定。
您可以查看此答案。