Почему я получаю: ошибка «preserveIconSpacing is private» - PullRequest
0 голосов
/ 21 октября 2018

Я взял свой старый проект Android, который был разработан на Eclipse Luna несколько лет назад, и попытался его оживить.

Я импортировал его в Android Studio, который, как мне сказали, может конвертировать его в свой собственный.формат, и я смогу продолжить работу.

После того, как я бросил все начальные ошибки компоновки и совместимости версий, я застрял на следующей ошибке и не могу ее пропустить:

c:\....\MyProjectFolder\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:643: error: resource android:attr/preserveIconSpacing is private.

Как-нибудь обойти это или это законная ошибка?

Вот мой build.gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "28.0.3"

    defaultConfig {
        applicationId "com.eibimalul.smartgallery"
        minSdkVersion 16
        targetSdkVersion 22
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

dependencies {
    compile 'com.android.support:gridlayout-v7:19.1.0'
    compile 'com.android.support:appcompat-v7:19.1.0'
    compile files('libs/robobinding-0.8.3-jar-with-dependencies.jar')
    compile files('libs/simple-xml-2.7.1.jar')
    compile files('libs/universal-image-loader-1.9.2.jar')
}

Просто чтобы очистить решение: Решение для этогоошибка с большой помощью ответа Мохсена ниже была:

  1. Я изменил содержимое build.gradle после ответа Мохсена ниже, обновив старые зависимостии изменение компиляции для реализации - ошибка исчезла.
  2. Я следовал решению здесь , чтобы устранить вторую ошибку, которую я получил (ресурс целое число / google_play_services_version) - см. ниже.

У меня теперь есть третья ошибка, но она не связана с первой, поэтому я считаю, что основная проблема была решена.

1 Ответ

0 голосов
/ 21 октября 2018

values.xml: 643: ошибка: ресурс android:attr/preserveIconSpacing является личным.

Вы используете частный ресурс , поэтомуэта проблема возникла.

Комментирование этой строки или удаление ее поможет продолжить.


Обновление: Здесь изменено build.gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    buildToolsVersion "28.0.3"

    defaultConfig {
        applicationId "com.eibimalul.smartgallery"
        minSdkVersion 16
        targetSdkVersion 28
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

dependencies {
    implementation 'com.android.support:gridlayout-v7:28.0.0'
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation files('libs/robobinding-0.8.3-jar-with-dependencies.jar')
    implementation files('libs/simple-xml-2.7.1.jar')
    implementation files('libs/universal-image-loader-1.9.2.jar')
}

Я просто изменил версии appcompat и compileSdkVersion и т. Д.для того, чтобы обновить их.Кроме того, если это не помогло, поскольку эти библиотеки достаточно стары ( Дата (8 июля 2013 г.) например), возможно, вам следует заменить их новейшими зависимостями.

Например,добавьте:

implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'

Вместо compile files('libs/universal-image-loader-1.9.2.jar'), поскольку он может загружать библиотеки из онлайн-хранилищ, и вам не нужно добавлять их вручную.

Также используйте implementation вместо compile.

Если ошибка все еще появляется, проверьте эту ссылку и добавьте простой xml следующим образом: https://stackoverflow.com/a/19455878/4409113

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...