我试图通过从GitHub检查git来将我的项目推回到以前的版本,但我想我是以错误的方式做到的。我刚刚删除了本地项目并检查了android studio上的git地址。但是,gradle无法构建并显示此消息:
我导航到说找不到样式attr的行,并选择find usage,但它表示此项目没有用处。我也尝试删除了twitter工具包并重新加载它,加载旧的verision,两者都有这个问题。如何解决这个问题?
该项目从一开始就用android studio 3.0 canary构建。这是app gradle文件:
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
buildToolsVersion "26.0.1"
defaultConfig {
applicationId "..."
minSdkVersion 19
targetSdkVersion 26
versionCode 3
versionName "beta1"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
testCompile 'junit:junit:4.12'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.android.support:support-v4:26.0.0'
compile 'com.android.support:recyclerview-v7:26.0.0'
compile 'com.twitter.sdk.android:twitter:3.1.0'
compile 'com.jakewharton:butterknife:8.7.0'
compile 'com.squareup.okhttp3:logging-interceptor:3.8.1'
compile 'com.github.bumptech.glide:glide:3.7.0'
annotationProcessor 'com.github.bumptech.glide:glide:3.7.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.7.0'
implementation 'com.android.support:appcompat-v7:26.0.0'
implementation 'com.android.support:design:26.0.0'
}
另一个构建文件:
buildscript {
repositories {
jcenter()
maven { url 'https://maven.google.com' }
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0-alpha9'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
maven { url 'https://maven.google.com' }
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
答案 0 :(得分:4)
这是主题和样式的问题。可能你的一个库期待这种风格可用而且它找不到它。请参阅此处Cant set Android Actionbar Background correctly,作为如何填写可能适合您的特定属性的指南。
这个资源似乎是根据谷歌的差异在2013年推出的https://android.googlesource.com/platform/tools/base/+/f5215ae4712f468568b58c20baadd14b769c10c4%5E!/
更改themes.xml,然后在清单中使用它,或更改styles.xml,如果操作不当,可能会导致这些副作用。
答案 1 :(得分:2)
向Gradle添加首选项支持库v7依赖关系为我解决了一个问题。它支持@ style / PreferenceThemeOverlay缺少的属性。
将以下行放入build.gradle模块:
com.android.support:preference-v7:27.1.1
答案 2 :(得分:1)
2020更新:不幸的是,似乎他们尚未解决此问题,因此解决方案是简单地降级gradle版本。例如,将其更改为:
classpath 'com.android.tools.build:gradle:3.6.3'
到
classpath 'com.android.tools.build:gradle:3.5.1'
它将起作用。
答案 3 :(得分:0)
如果您将主题样式与parent =“ android:Theme.DeviceDefault”一起使用,则应使用
<item name="android:windowActionBar">false</item>
代替
<item name="windowActionBar">false</item>
或将主题样式从“ android:Theme.DeviceDefault”更改为“ Theme.AppCompat.Light.DarkActionBar”,这也可能解决其他一些样式问题。