0
点赞
收藏
分享

微信扫一扫

AAPT: error: reso 1. mavenCentral():2. jcenter():3. mavenLocal(),定时器,android Mod



目录

​​AAPT: error: resource android:attr/dialogCornerRadius not found.​​

​​上面的属性一般不会相信爱那个运行,我们搜索控件名称查看什么地方使用​​

​​这个v-28的报错,我们统一版本​​

​​ build之后会显示报错,我们不要改一个翻一个,下面都是;​​

​​resource android:attr/dialogCornerRadius not found ​​

​​This project uses AndroidX dependencies, but the 'android.useAndroidX' property is not enabled.​​

​​buildscript里的repositories与allprojects里的repositories 区别:​​

​​1. mavenCentral():​​

​​2. jcenter():​​

​​3. mavenLocal():​​

​​Jcenter vs. mavenCentral​​

​​Maven和google​​

​​Failed to transform artifact 'butterknife-runtime.aar (com.jakewharton:butterknife-runtime:10.1.0)'​​

​​androidX迁移​​

​​ 修改当前项目的 gradle.properties​​

AAPT: error: resource android:attr/dialogCornerRadius not found.

AAPT: error: reso 1. mavenCentral():2. jcenter():3. mavenLocal(),定时器,android Mod_java

​编辑

添加相应的format

AAPT: error: reso 1. mavenCentral():2. jcenter():3. mavenLocal(),定时器,android Mod_Android_02

​编辑

上面的属性一般不会相信爱那个运行,我们搜索控件名称查看什么地方使用

AAPT: error: reso 1. mavenCentral():2. jcenter():3. mavenLocal(),定时器,android Mod_maven_03

​编辑

这个v-28的报错,我们统一版本

AAPT: error: reso 1. mavenCentral():2. jcenter():3. mavenLocal(),定时器,android Mod_maven_04

​编辑

 build之后会显示报错,我们不要改一个翻一个,下面都是;​编辑

AAPT: error: reso 1. mavenCentral():2. jcenter():3. mavenLocal(),定时器,android Mod_Android_05

​编辑

resource android:attr/dialogCornerRadius not found 

build时引用到了v28包,导致不兼容的问题

gradle.properties文件中 添加一行
android.enableAapt2=false

This project uses AndroidX dependencies, but the 'android.useAndroidX' property is not enabled.

在这个文件里添加两行代码,

android.useAndroidX=true
android.enableJetifier=true


buildscript里的repositories与allprojects里的repositories 区别:

\

  1. buildscript里是gradle脚本执行所需依赖,分别是对应的maven库和插件
    2.allprojects里是项目本身需要的依赖

1. mavenCentral():

mavenCentral()别名意味着从​​中央Maven 2存储库中获取依赖项.​​

repositories { mavenCentral() } 用于访问此存储库的URL为 https://repo.maven.apache.org/maven2 /.该存储库的名称为MavenRepo.

2. jcenter():

jcenter()别名表示从​​ Bintray的JCenter Maven存储库中获取依赖项​​

3. mavenLocal():

mavenLocal()别名意味着从本地Maven存储库中获取依赖项.

实际上,所有3个都是Maven存储库.我们通过使用其Maven存储库的URL地址或在本地文件系统中的位置来将其用于构建.

使用URL:

repositories {
maven { url("https://plugins.gradle.org/m2/") }
}

通过使用本地文件系统:

repositories {
maven { url '../maven-repo'

Gradle具有三个"别名" ,当我们向构建中添加Maven存储库时可以使用它们.

Jcenter vs. mavenCentral

jcenter()和mavenCentral()是Android Studio中Gradle插件的存储库

早期的Android Studio版本使用mavenCentral(),并在一段时间后切换到jcenter.

这是因为在性能和内存占用方面,jcenter()优于mavenCentral():

  • Jcenter是世界上最大的Java存储库
  • 通过https协议通过CDN服务实现Jcenter 安全和使用http的Android Studio 0.8版本mavenCentral() 协议
  • Jcenter是mavenCentral的超集,其中包括许多其他功能 罐子
  • Jcenter性能优于mavenCentral
  • mavenCentral将自动下载许多与IDE相关的索引, 而且不需要的次数较少.

Maven和google

AAPT: error: reso 1. mavenCentral():2. jcenter():3. mavenLocal(),定时器,android Mod_java_06

​编辑

 这两个是一样的

maven { url 'https://maven.google.com' }
google()


Failed to transform artifact 'butterknife-runtime.aar (com.jakewharton:butterknife-runtime:10.1.0)'

接入 butterknife 10.1.0  和java 版本对应,java使用8;

AAPT: error: reso 1. mavenCentral():2. jcenter():3. mavenLocal(),定时器,android Mod_maven_07

​编辑

我们看到的1.8 就是java8

androidX迁移

AAPT: error: reso 1. mavenCentral():2. jcenter():3. mavenLocal(),定时器,android Mod_java_08

​编辑

 修改当前项目的 gradle.properties

android.useAndroidX=true
android.enableJetifier=true


​​Android:你好,androidX!再见,android.support - 简书​​

定时器

public class TimerTest{

public static void main(String[] args){
Timer timer = new Timer();
timer.schedule(new MyTask(), 1000, 2000);//在1秒后执行此任务,每次间隔2秒执行一次,如果传递一个Data参数,就可以在某个固定的时间执行这个任务.
while(true){//这个是用来停止此任务的,否则就一直循环执行此任务
try{
int in = System.in.read();
if(in == 's'){
timer.cancel();//使用这个方法退出任务
break;
}
} catch (IOException e){
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

static class MyTask extends java.util.TimerTask{
public void run(){
System.out.println("________");
}
}
}

sendMessageDelayed

sendMessageDelayed是如何实现延时发送消息的?
sendMessageDelayed是通过阻塞来达到了延时发送消息的结果,那么会不会阻塞新添加的Message?

android Module之间数据传递

(1)在子module创建回调接口(参数可变)
public interface OnChangeLisener {
void onChanged(Date date);
}
(2)在子module 实现类设置接口回调
//设置选择回调
public void setOnChangeLisener(OnChangeLisener onChangeLisener) {
this.onChangeLisener = onChangeLisener;
}
实现方法

onChangeLisener.onChanged(DateUtils.getDate(year, moth, day, hour, minut));
(3)在app module设置接口回调即可

private OnChangeLisener onChangeLisener;
onChangeLisener =new OnChangeLisener() {
@Override
public void onChanged(Date date) {
String messge = “”;
}
};
DatePickDialog dialog = new DatePickDialog(this);
//设置选择回调
dialog.setOnChangeLisener(onChangeLisener);

方法二:使用 sharedpreferences
在一个module中保存数据

SharedPreferences sp = getSharedPreferences(“sp_demo”, Context.MODE_PRIVATE);sp.edit().

putString(“name”, “梅西”).putInt(“age”, 11).commit();

在另一个module中获取数据

SharedPreferences sp = getSharedPreferences(“sp_demo”, Context.MODE_PRIVATE);

String name = sp.getString(“name”, null);int age = sp.getInt(“age”, 0);

举报

相关推荐

0 条评论