O projeto usa anotações do Android. Recentemente, não importa como eu o construa, ele não consegue compilar. Fui ao site oficial e vi que sim.
AndroidAnnotations está obsoleto. Não haverá mais desenvolvimento.
Obrigado por todo o vosso apoio!
Infelizmente, o número da versão permanecerá sempre em 4.8.0.
O fato de não terem modificado parece ser problema deles. O projeto foi construído em 2016 e o gradle ainda é 2.3. Basta atualizá-lo.
1. Remova o apto
apt "org.androidannotations:androidannotations:$AAVersion" 修改成 annotationProcessor "org.androidannotations:androidannotations:$AAVersion
Remover gradle do aplicativo
aplicar plugin: 'android-apt'
e
apt { argumentos { androidManifestFile variante.outputs[0]?.processResources?.manifestFile resourcePackageName 'com.zhaomi.wisdomstudy' }
Remover do projeto Gradle
caminho de classe 'com.neenbedankt.gradle.plugins:android-apt:1.8'
2.Não foi possível HEAD 'http://dl.bintray.com/populov/maven/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.3.72/kotlin-stdlib-jdk8-1.3.72.pom'. Código de status recebido 502 do servidor: Bad Gateway
Coloque no projeto Gradle
maven { url "http://dl.bintray.com/populov/maven" }
Observe que o agente do Alibaba Cloud foi adicionado e o agente pode ser usado
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter' } maven { url 'http://maven.aliyun.com/nexus/content/repositories/google' } maven { url 'http://maven.aliyun.com/nexus/content/repositories/gradle-plugin' }
3.Não é possível definir o valor da propriedade somente leitura 'outputFile' para ApkVariantOutputImpl_Decorated{apkData=Main{type=MAIN, fullName=xiaomiDebug, filtros=[], versionCode=232, versionName=2.3.3.1}} do tipo com.android .build.gradle.internal.api.ApkVariantOutputImpl.
código original
applicationVariants.all { variante -> variante.outputs.each { saída -> def outputFile = output.outputFile if (outputFile! = null && outputFile.name.endsWith('.apk')) { def fileName = outputFile.name.replace (".apk", "-${defaultConfig.versionName}.apk") output.outputFile = novo arquivo (outputFile.parent, fileName) } } }
Após modificação
applicationVariants.all { variante -> variante.outputs.all { saída -> def outputFile = output.outputFile if (outputFile! = null && outputFile.name.endsWith('.apk')) { def fileName = outputFile.name.replace (".apk", "-${defaultConfig.versionName}.apk") saídaNomeArquivo = nomeArquivo } } }
4.A versão minSdk não deve ser declarada no arquivo de manifesto do Android. Você pode mover a versão do manifesto para defaultConfig no arquivo build.gradle.
dentro do manifesto
<usa-sdk android:minSdkVersion="9" android:targetSdkVersion="29" ferramentas:overrideLibrary="com.huawei.android.hms.base,com.huawei.android.hms.push , cn.jpush.android.thirdpush .meizu"/>
Remova as linhas minsdkVersion e targetSdkVersion
5.Todos os sabores agora devem pertencer a uma dimensão de sabor nomeada.
Adicione-o ao defaultConfig{} no aplicativo Gradle
saborDimensions "versionCode"
6.Falha ao analisar XML em /Users/zp_lxy/Desktop/project///app/src/main/AndroidManifest.xml
ParseError em [row,col]:[37,5]
Depois de localizá-lo, descobri que o método de comentário usado no manifesto era "//", que não é compatível no momento. Modifique-o.
7.> Tarefa :app:compileXiaomiDebugJavaWithJavac
Os seguintes processadores de anotação não são incrementais: androidannotations-4.6.0.jar (org.androidannotations:androidannotations:4.6.0).
Certifique-se de que todos os processadores de anotação sejam incrementais para melhorar a velocidade de construção.
dentro do aplicativo Gradle
javaCompileOptions { annotationProcessorOptions { argumentos = [ "androidManifestFile": "$projectDir/src/main/AndroidManifest.xml".toString() ] } }
Não há problema em compilar novamente e ele é executado com sucesso.