dies ist meine Build-Gradle-Datei (App-Datei):
apply plugin: 'com.Android.application'
apply plugin: 'io.fabric'
apply plugin: 'checkstyle'
def versions = ['appcompat_v7' : '25.1.0',
'butterknife' : '8.4.0',
'leak_canary' : '1.5',
'card_view' : '25.1.0',
'design' : '25.1.0',
'photoview' : '1.2.4',
'play_services': '10.0.1']
task checkstyle(type: Checkstyle) {
configFile file("${project.rootDir}/checkstyle/checkstyle.xml")
configProperties.checkstyleSuppressionsPath = file("${project.rootDir}/config/quality/checkstyle/suppressions.xml").absolutePath
// Where is my suppressions file for checkstyle is...
source 'src'
include '**/*.Java'
exclude '**/gen/**'
classpath = files()
}
Android {
compileSdkVersion 25
buildToolsVersion '27.0.3'
flavorDimensions "versionCode"
useLibrary 'org.Apache.http.legacy'
dexOptions {
// Skip pre-dexing when running on Travis CI or when disabled via -Dpre-dex=false.
preDexLibraries = preDexEnabled && !travisBuild
}
defaultConfig {
ndk {
abiFilters 'x86', 'armeabi-v7a'
}
minSdkVersion 15
targetSdkVersion 23
versionCode 1
vectorDrawables.useSupportLibrary = true
testInstrumentationRunner "Android.test.InstrumentationTestRunner"
}
signingConfigs {
release
}
buildTypes {
debug {
debuggable true
}
release {
//runProguard true
proguardFile file('Android.pro')
proguardFile getDefaultProguardFile('proguard-Android.txt')
signingConfig signingConfigs.release
}
}
splits {
abi {
enable true
reset()
include 'x86', 'armeabi-v7a'
universalApk true
}
}
// map for the version code
productFlavors {
playstore {
}
develop {
}
}
lintOptions {
//I'm too lazy to translate everything
abortOnError false
}
externalNativeBuild {
ndkBuild {
path 'src/main/jni/Android.mk'
}
}
}
def Properties props = new Properties()
def propFile = new File('signing.properties')
if (propFile.canRead()) {
props.load(new FileInputStream(propFile))
if (props != null && props.containsKey('STORE_FILE') && props.containsKey('STORE_PASSWORD') &&
props.containsKey('KEY_ALIAS') && props.containsKey('KEY_PASSWORD')) {
Android.signingConfigs.release.storeFile = file(props['STORE_FILE'])
Android.signingConfigs.release.storePassword = props['STORE_PASSWORD']
Android.signingConfigs.release.keyAlias = props['KEY_ALIAS']
Android.signingConfigs.release.keyPassword = props['KEY_PASSWORD']
} else {
println 'signing.properties found but some entries are missing'
Android.buildTypes.release.signingConfig = null
}
} else {
println 'signing.properties not found'
Android.buildTypes.release.signingConfig = null
}
buildscript {
repositories {
jcenter()
mavenCentral()
}
}
dependencies {
compile project(":tess-two:tess-two")
compile project(":volley")
compile project(":real-time-ocr")
compile 'com.github.barteksc:pdfium-Android:1.5.0'
compile fileTree(dir: 'src/main/libs', include: '*.jar')
debugCompile "com.squareup.leakcanary:leakcanary-Android:${versions.leak_canary}"
releaseCompile "com.squareup.leakcanary:leakcanary-Android-no-op:${versions.leak_canary}"
compile 'com.viewpagerindicator:library:[email protected]'
compile "com.commit451:PhotoView:${versions.photoview}"
compile 'com.google.code.findbugs:jsr305:2.0.2'
compile "com.google.guava:guava:18.0"
compile 'de.greenrobot:eventbus:2.4.0'
compile 'com.nineoldandroids:library:2.4.0'
compile "com.Android.support:design:${versions.design}"
compile "com.Android.support:appcompat-v7:${versions.appcompat_v7}"
compile 'org.Apache.commons:commons-compress:1.5'
compile "com.Android.support:cardview-v7:${versions.card_view}"
compile 'com.google.code.gson:gson:2.8.2'
compile "com.jakewharton:butterknife:${versions.butterknife}"
annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'
compile 'com.google.Android.gms:play-services-vision:9.4.0+'
compile group: 'com.facebook.Android', name: 'facebook-Android-sdk', version: '4.25.0'
androidTestCompile 'com.google.dexmaker:dexmaker-mockito:1.0'
androidTestCompile 'com.google.dexmaker:dexmaker:1.0'
androidTestCompile 'org.mockito:mockito-core:1.10.17'
androidTestCompile 'junit:junit:4.12'
testCompile 'junit:junit:4.12'
testCompile "org.mockito:mockito-all:1.10.19"
testCompile("org.robolectric:robolectric:3.0-rc2") {
exclude group: 'commons-logging', module: 'commons-logging'
}
compile('com.crashlytics.sdk.Android:crashlytics:2+') {
transitive = true;
}
compile('com.crashlytics.sdk.Android:crashlytics-ndk:[email protected]') {
transitive = true;
}
compile 'com.Android.support.constraint:constraint-layout:1.0.2'
compile 'com.shawnlin:number-picker:2.4.4'
compile 'com.squareup.picasso:picasso:2.5.2'
}
crashlytics {
enableNdk true
androidNdkOut '/Users/renard/devel/textfairy/tess-two/tess-two/obj'
androidNdkLibsOut '/Users/renard/devel/textfairy/tess-two/tess-two/libs'
}
apply plugin: 'com.google.gms.google-services'
Android Studio kann das Projekt nicht synchronisieren und gibt mir diesen Fehler:
Konflikt bei der Konfiguration: 'armeabi-v7a, x86' in ndk abiFilter können nicht vorhanden sein, wenn Splitt-Abi-Filter gesetzt sind: x86, armeabi-v7a
Die Konfiguration 'kompilieren' ist veraltet und wurde durch 'Implementierung' ersetzt. Es wird Ende 2018 entfernt
Die Konfiguration 'debugCompile' ist veraltet und wurde durch 'debugImplementation' ..__ ersetzt. Es wird Ende 2018 entfernt
Die Konfiguration 'androidTestApi' ist veraltet und wurde durch 'androidTestImplementation' ..__ ersetzt. Es wird Ende 2018 entfernt
Die Konfiguration 'releaseCompile' ist veraltet und wurde durch 'releaseImplementation' ..__ ersetzt. Es wird Ende 2018 entfernt
Die Konfiguration 'testCompile' ist veraltet und wurde durch 'testImplementation' ..__ ersetzt. Es wird Ende 2018 entfernt
Die Konfiguration 'testApi' ist veraltet und wurde durch 'testImplementation' ..__ ersetzt. Es wird Ende 2018 entfernt
Die Konfiguration 'androidTestCompile' ist veraltet und wurde durch 'androidTestImplementation' ..__ ersetzt. Es wird Ende 2018 entfernt
Die Option 'Android.enableAapt2' ist veraltet und sollte nicht mehr verwendet werden. Verwenden Sie "Android.enableAapt2 = true", um diese Warnung zu entfernen . Es wird Ende 2018 entfernt.
Die Konfiguration 'kompilieren' ist veraltet und wurde durch 'Implementierung' ersetzt. Es wird Ende 2018 entfernt
Die Option 'Android.enableAapt2' ist veraltet und sollte nicht mehr verwendet werden. Verwenden Sie "Android.enableAapt2 = true", um diese Warnung zu entfernen . Es wird Ende 2018 entfernt.
Die Konfiguration 'testCompile' ist veraltet und wurde durch 'testImplementation' ..__ ersetzt. Es wird Ende 2018 entfernt
Die Konfiguration 'testApi' ist veraltet und wurde durch 'testImplementation' ..__ ersetzt. Es wird Ende 2018 entfernt
Die Option 'Android.enableAapt2' ist veraltet und sollte nicht mehr verwendet werden. Verwenden Sie "Android.enableAapt2 = true", um diese Warnung zu entfernen . Es wird Ende 2018 entfernt.
Die Konfiguration 'kompilieren' ist veraltet und wurde durch 'Implementierung' ersetzt. Es wird Ende 2018 entfernt
wenn ich diese Zeile lösche
defaultConfig {
ndk {
abiFilters 'x86', 'armeabi-v7a'
}
das projekt erfolgreich synchronisiert aber beim bauen gib mir diesen fehler
Aapt konnte nicht ausgeführt werden
Ich versuche bereits, das Projekt zu bereinigen und neu zu erstellen, aber es funktioniert immer noch nicht! Ich poste auch die Datei build.gradle (Project)
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
mavenCentral()
jcenter()
google()
}
dependencies {
classpath 'io.fabric.tools:gradle:1+'
classpath 'com.google.gms:google-services:3.0.0'
classpath 'com.Android.tools.build:gradle:3.1.0'
}
}
allprojects {
repositories {
maven { url 'https://maven.fabric.io/public' }
maven { url "http://dl.bintray.com/populov/maven" }
jcenter()
maven {
url "http://oss.sonatype.org/content/repositories/snapshots"
}
maven { url 'https://oss.jfrog.org/artifactory/oss-snapshot-local/' }
maven {
url "https://maven.google.com" // Google's Maven repository
}
}
}
ext {
travisBuild = System.getenv("TRAVIS") == "true"
// allows for -Dpre-dex=false to be set
preDexEnabled = "true".equals(System.getProperty("pre-dex", "true"))
}
meine Datei gradle-wrapper.properties
#Tue Mar 27 14:42:14 CEST 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.Zip
und meine Datei gradle.properties
ndkDir=/Users/giuliopettenuzzo/Library/Android/sdk/ndk-bundle
org.gradle.jvmargs=-XX\:MaxPermSize\=512m
Android.enableAapt2=false
bitte hilf mir ich verbrachte einen tag in dieser ausgabe !!
ndk
.abiFilters
Konfiguration bedeutet, dass nur ausgewählte Prozessorarchitekturen nativer Bibliotheken in der endgültigen APK enthalten sind.
Andererseits weist splits
.abi
.enable true
den Compiler an, getrennte APKs für ausgewählte Architekturen zu generieren.
Es scheint, dass diese beiden Konfigurationen nicht zusammen eingestellt werden können. Sie haben also zwei Möglichkeiten:
Deaktivieren Sie das Aufteilen von APK (Sie haben es bereits herausgefunden). Dann haben Sie eine APK.
Entfernen Sie die ndk
.abiFilters
Einstellung. Dann haben Sie mehrere (wahrscheinlich viel kleinere) APKs. Mit universalApk true
wird außerdem eine universelle APK mit allen Architekturen generiert (wahrscheinlich viel größer als in Option 1).
Ersetzen Sie dann compile
durch das neue Schlüsselwort implementation
. Ich denke, das geht aus der Fehlermeldung hervor.
Schließlich habe ich es durch Putten zum Laufen gebracht
abi {
enable false
reset()
include 'x86', 'armeabi-v7a'
universalApk true
}
und multiDexEnabled true
aber ich weiß nicht, ob dies das Problem gelöst hat oder den Fehler einfach ignoriert.
Ich habe ein altes Projekt geöffnet und als ich es bauen wollte, bekam ich eine Menge Fehler, was sehr frustrierend war. Ich ersetzte compile durch die Implementierung und fügte alle erforderlichen Codes hinzu. Zuletzt wurde das Projekt erfolgreich aufgebaut.
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
androidTestImplementation ('com.Android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.Android.support', module: 'support-annotations'
})
implementation 'com.Android.support:support-v4:27.1.1'
implementation 'com.Android.support:cardview-v7:27.1.1'
implementation 'com.Android.support:customtabs:27.1.1'
implementation 'com.Android.support.constraint:constraint-layout:1.0.2'
implementation 'com.facebook.Android:facebook-Android-sdk:4.+'
implementation 'com.facebook.Android:account-kit-sdk:4.+'
implementation 'com.Android.volley:volley:1.1.0-rc2'
implementation 'com.google.Android.gms:play-services-ads:15.0.1'
testImplementation 'junit:junit:4.12'
}
dependencies {
implementation 'com.Android.support:design:26.1.0'
implementation 'com.Android.support:support-v4:26.1.0'
implementation 'com.google.Android.gms:play-services-maps:9.6.1'
implementation fileTree(dir: 'libs', include: ['*.jar'])
androidTestImplementation ('com.Android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.Android.support', module: 'support-annotations'
})
implementation 'com.Android.support:appcompat-v7:26.1.0'
implementation 'com.Android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
implementation 'com.google.firebase:firebase-core:9.6.1' //referencia a la version de firebase
implementation 'com.google.firebase:firebase-database:9.6.1' // referencia a la base de datos
implementation 'com.google.firebase:firebase-auth:9.6.1'
implementation 'com.google.Android.gms:play-services-auth:9.6.1'
implementation 'com.google.Android.gms:play-services-maps:9.6.1'
// aqui se agrega la referencia a la autentificacion
}
** Kompilieren durch Implementieren ersetzen androidCompileTest von androidTestImplementation **