网上好多教程都会报各式各样的错误,终于测试成功了一个,做个记录
Android studio 版本是 Android Studio Flamingo | 2022.2.1 Patch 2
JDK是 JavaVersion.VERSION_1_8
直接上步骤和代码:
一、创建一个空项目
1、File -->New --New Project --No Activity
2、点击Next后输入项目名称点击Finish
二、项目加载完成后,点击File --New -- New Module,选择Android Library,并输入Module name 后点击Finish
有以下信息则表示Module创建成功
三、创建一个用于写具体的事务实现方法类,起名为: DateTime
public class DateTime {
/**
* 获取当前日期时间
*/
private static SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
public static String getDateTime(){
return df.format(new Date());
}
/**
* 获取指定多少天(年、月)前/后的日期
* @param YoMoD 年或者月获取日,赋值为年:Year 月:Month 日:Day
* @param num 具体数字,前的有负数,后的用正数
* @return 返回日期字符串
*/
public static String getDateTime(String YoMoD,int num){
//获取当前日期
Date date = new Date();
//创建Calendar实例
Calendar cal = Calendar.getInstance();
cal.setTime(date); //设置当前时间
switch (YoMoD){
case "Year":
cal.add(Calendar.YEAR, num);
break;
case "Month":
cal.add(Calendar.MONTH,num);
break;
case "Day":
cal.add(Calendar.DATE,num);
break;
}
return df.format(cal.getTime());
}
}
四、打开新建Module的build gradle文件,文件名见下图:
在android、dependencies的平行节点后面添加如下代码:
task makeJar(type: Copy){} 和makeJar dependsOn(build)两段代码:内容如下:
dependencies {
implementation 'androidx.appcompat:appcompat:1.4.1'
implementation 'com.google.android.material:material:1.5.0'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}
task makeJar(type: Copy) {
//删除存在的
delete 'build/libs/jarsdk.jar'
//设置拷贝的文件
// from('build/intermediates/bundles/release/')
from('build/intermediates/aar_main_jar/release/')
//打进jar包后的文件目录
into('build/libs/')
//将classes.jar放入build/libs/目录下
//include ,exclude参数来设置过滤
//(我们只关心classes.jar这个文件)
include('classes.jar')
//重命名
rename ('classes.jar', 'jarsdk.jar')
}
makeJar.dependsOn(build)
五、在编译之前一定要Sync Now ,之后点击task makeJar(type: Copy){ 前面的绿三角。如下图。
开始编译jar文件,知道出现以下图一提示或者出现图二中的jar文件,说明生成成功。
此时就可以将jar引入其他的项目中使用了。
第三方使用此jar包。
一、新建一个项目testJarApplication
二、将jar包引入到项目的libs路径下:
三、点击jarsdk.jar右键,选择Add As Library选项,
弹出CreateLibrary 选项,点击OK
四、此时变成如下
同时,app 下的build.gradle文件的dependencies节点下多了以下信息。
以上就说明引用jar包成功,现在写一个代码测试以下:
import com.jackiesky.custompubliclibrary.DateTime;
public class MainActivity extends AppCompatActivity {
private TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = findViewById(R.id.textview);
String nowDate = DateTime.getDateTime(); //当前日期
String beforeDate = DateTime.getDateTime("Day",-3); //3天之前的日期
String afterDate = DateTime.getDateTime("Month",2); //2个月之后的日期
String showText = "当前日期是:"+nowDate+"\n"
+"3天之前的日期是:"+beforeDate+"\n"
+"2个月之后的日期是:"+afterDate;
textView.setText(showText);
Log.v("msgg",showText);
}
}
测试结果,打印日志和模拟手机显示都可用。