wake-up-neo.com

Android: ExternalSystemException: Stringindex außerhalb des gültigen Bereichs: -130 Build-Release

Also auf Android Studio 1.4 Beta 4 aktualisiert und Probleme beim Erstellen eines Release-Builds. Ich kann ein Debug-Build erstellen. Dies ist der Fehler, den ich bekomme:

ExternalSystemException: String index out of range: -130

Bei weiterer Inspektion sehe ich Folgendes:

String index out of range: -130
com.intellij.openapi.externalSystem.model.ExternalSystemException: String index out of range: -130
at org.jetbrains.plugins.gradle.service.project.GradleExecutionHelper.execute(GradleExecutionHelper.Java:223)
at com.Android.tools.idea.gradle.invoker.GradleTasksExecutor.invokeGradleTasks(GradleTasksExecutor.Java:400)
at com.Android.tools.idea.gradle.invoker.GradleTasksExecutor.run(GradleTasksExecutor.Java:221)
at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.Java:563)
at com.intellij.openapi.progress.impl.CoreProgressManager$2.run(CoreProgressManager.Java:152)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.Java:452)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.Java:402)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.Java:54)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.Java:137)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$1.run(ProgressManagerImpl.Java:126)
at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.Java:400)
at Java.util.concurrent.Executors$RunnableAdapter.call(Executors.Java:471)
at Java.util.concurrent.FutureTask.run(FutureTask.Java:262)
at Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1145)
at Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:615)
at Java.lang.Thread.run(Thread.Java:745)
at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.Java:56)

Irgendwelche Ideen? Ich habe es mit Gradle 2.3 - 2.7 ausprobiert und bekomme immer diesen Fehler beim Erstellen eines Release Builds.

build.gradle vom Hauptmodul:

import Java.util.regex.Pattern

buildscript {
repositories {
    maven { url 'https://maven.fabric.io/public' }
    mavenCentral()
}

dependencies {
    classpath 'io.fabric.tools:gradle:1.+'
    classpath 'com.jakewharton.sdkmanager:gradle-plugin:0.12.0'
}
}

apply plugin: 'Android-sdk-manager'
apply plugin: 'com.Android.application'
// This does not break the build when Android Studio is missing the JRebel for     Android plugin.
apply plugin: 'com.zeroturnaround.jrebel.Android'
apply plugin: 'io.fabric'

repositories {
maven { url 'https://maven.fabric.io/public' }
}


Android {
signingConfigs {
    config {
        keyAlias 'XXX'
        keyPassword 'XXX'
        storeFile file('../signing/keystore.jks')
        storePassword 'XXX'
    }
}
compileSdkVersion 22
buildToolsVersion '22.0.1'
defaultConfig {
    applicationId "com.coffeemeetsbagel"
    minSdkVersion 16
    targetSdkVersion 22
    versionCode 605
    versionName '2.0.6.0'
    signingConfig signingConfigs.config
    multiDexEnabled true
}

productFlavors {
    Lollipop {
        minSdkVersion 21
    }

    everything {
        minSdkVersion 16
    }
}
buildTypes {
    release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        signingConfig signingConfigs.config
        debuggable false
    }
    debug {
        debuggable true
    }
    superuser.initWith(release)
    superuser {
        debuggable true
        minifyEnabled false
    }
}

packagingOptions {
    exclude 'META-INF/LICENSE.txt'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/license'
    exclude 'META-INF/license.txt'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/NOTICE.txt'
    exclude 'META-INF/notice'
    exclude 'META-INF/notice.txt'
    exclude 'META-INF/DEPENDENCIES'
    exclude 'META-INF/DEPENDENCIES.txt'
}

dexOptions {
    javaMaxHeapSize "4g"
}
}

dependencies {
compile files('libs/commons-validator-1.4.1.jar')
compile files('libs/com.kontagent.Android.sdk.jar')
compile files('libs/urbanairship-lib-4.0.4.jar')
compile files('libs/apsalar.jar')
compile('com.crashlytics.sdk.Android:crashlytics:[email protected]') {
    transitive = true
}
compile 'com.github.chrisbanes.photoview:library:1.2.3'
compile 'com.facebook.Android:facebook-Android-sdk:4.1.0'
compile 'com.Android.support:support-v4:22.2.1'
compile 'com.Android.support:cardview-v7:22.2.1'
compile 'com.squareup.okhttp:okhttp-urlconnection:2.0.0'
compile 'com.squareup.okhttp:okhttp:2.4.0'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.google.code.gson:gson:2.3'
compile 'com.google.Android.gms:play-services-ads:7.5.0'
compile 'com.google.Android.gms:play-services-analytics:7.5.0'
compile 'com.google.Android.gms:play-services-gcm:7.5.0'
compile 'com.google.Android.gms:play-services-base:7.5.0'
compile 'com.google.Android.gms:play-services-location:7.5.0'
compile 'com.firebase:firebase-client-Android:2.2.0'
compile 'com.facebook.shimmer:shimmer:[email protected]'
compile 'com.balysv:material-ripple:1.0.2'
compile 'io.branch.sdk.Android:library:1.8.8'
compile 'com.facebook.device.yearclass:yearclass:1.0.1'
compile 'com.appyvet:materialrangebar:1.0'
compile 'com.Android.support:multidex:1.0.1'
compile 'com.Adobe.creativesdk:image:4.0.0'
compile 'com.Android.support:recyclerview-v7:22.2.1'
compile 'com.Android.support:appcompat-v7:22.2.1'
compile 'com.Android.support:design:22.2.1'
compile project(':core')
compile project(':layouts')
compile project(':volley')
}
23
Karim Varela

Wenn Sie Android Studio verwenden, wird durch Auswählen der Gradle Console angezeigt, wo das Problem liegt. In meinem Fall waren es doppelte textView-Bezeichner, die diesen Fehler verursacht haben.

51
David Wadge

Funktionierte durch Hinzufügen in build.gradle

 lintOptions {
        checkReleaseBuilds false
    }
29

Mein Fehler ist 

ExternalSystemException: Stringindex außerhalb des gültigen Bereichs: -

Meine App unterstützt Türkisch und Englisch. Meine englischen strings.xml enthält

 <string name="hello_world">Hello world!</string>

und meine türkische strings.xml enthält nicht

<string name="hello_world">Bla bla!</string>

Wenn ich <string name="hello_world">Bla bla!</string> zur Datei türkische strings.xml hinzufüge, wurde das Problem gelöst.

Hinweis: Bitte schauen Sie sich die Gradle Console von Android Studio an enter image description here

6
ethemsulan

Ich hatte das gleiche Problem mit Android Studio 1.4 Build am 28. September 2015. Was ich getan habe, war: 

  1. Startet ein Build auf dem Haupt-Gradle-Skript, das eine Laufkonfiguration im Menü erstellt hat. 

  2. Die Laufkonfiguration wurde durch Hinzufügen von ": app: assembleRelease" in der Skriptparameterzeile bearbeitet. und startete es. 

  3. Der Gradle-Build zeigte mir, dass mir fehlende Übersetzungen in der Datei strings.xml fehlten. 

Nach dem Fixieren. Generierte signierte APK ohne Probleme beendet.

3
Toma Velev

Ich hatte das gleiche Problem aber mit diesem Fehler:

ExternalSystemException: String index out of range: -119

Mein Problem war, dass ich im String-Editor vergessen hatte, eine Standardvariable in meine Übersetzung zu setzen. Nachdem ich sie hinzugefügt hatte, war das Problem gelöst.

Ich hoffe es hilft!

1
Kokusho

Also bin ich wieder auf Android Studio 1.3 zurückgekehrt und das Problem ist weg.

0
Karim Varela

Obwohl dies ein alter Thread ist, können die folgenden Informationen für manche Leute nützlich sein. Ich habe eine etwas andere Nachricht erhalten (aber ähnlich, wenn Sie für die folgende Nachricht googeln, werden Sie zu diesem Thread weitergeleitet.)

Execution failed for task ':app:mergeReleaseResources'.
> String index out of range: 0

Für mich bestand das Problem darin, dass der String.xml der Name für eine Stringressource fehlte, wie unten erwähnt. 

<string name="">Some strings...</string>

Durch Hinzufügen des richtigen Ressourcennamens wurde das Problem behoben.

<string name="some_string">Some strings...</string>
0
Paul