it-swarm.com.ru

добавить 'tools: replace = "Android: value"' в элемент <meta-data> на AndroidManifest

Я следую учебному пособию по разработке HeadFirst для Android и столкнулся с проблемами после добавления: private ActionBarDrawerToggle boxToggle;

Элемент управления устарел, поэтому я следовал инструкциям в стеке, чтобы решить эту проблему, добавив com.Android.support:appcompat-v7:26.0.0-alpha1 к модулям приложения Зависимости 

Но теперь я получаю следующие ошибки сборки:

Ошибка: не удалось выполнить задачу «: app: processDebugManifest».

Ошибка слияния манифеста: Атрибут meta-data#[email protected] value = (25.3.1) из [com.Android.support:recyclerview-v7:25.3.1] AndroidManifest.xml: 24: 9-31 .__ , также присутствует в [com.Android.support:appcompat-v7:26.0.0-alpha1] AndroidManifest.xml: 27: 9-38 value = (26.0.0-alpha1) . Предложение: добавьте 'tools: replace = "Android: value"' к элементу в AndroidManifest.xml: 22: 5-24: 34, чтобы переопределить.

Вот код:

51
D.Hodges

Проблема в том, что все библиотеки поддержки с одинаковой версией и основной версией должны соответствовать версии SDK компиляции. 

Поэтому попробуйте принудительно установить конкретную версию библиотеки поддержки . Поместите это в конец вашего модуля приложения в build.gradle.

configurations.all {
    resolutionStrategy.eachDependency { DependencyResolveDetails details ->
        def requested = details.requested
        if (requested.group == 'com.Android.support') {
            if (!requested.name.startsWith("multidex")) {
                details.useVersion '25.3.0'
            }
        }
    }
}
177
Sagar Giri

Сначала добавьте эту строку в ваш тег манифеста, если у вас еще нет:

xmlns:tools="http://schemas.Android.com/tools"

Пример:

<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
    package="com.winanainc"
    Android:versionCode="3"
    Android:versionName="1.2"
    xmlns:tools="http://schemas.Android.com/tools">

Затем добавьте этот метатег в ваше приложение, чтобы перезаписать вашу версию инструментов сборки, в данном случае, например, я выбрал версию 25.3.1.

<application>
   ...
   ..
    <meta-data
        tools:replace="Android:value"
        Android:name="Android.support.VERSION"
        Android:value="25.3.1" />
</application>
16
DJM

Изменены все версии библиотеки поддержки на 25.3.1 и работали как шарм:

compile 'com.Android.support:appcompat-v7:25.3.1'
compile 'com.Android.support:design:25.3.1'

Вам также необходимо изменить следующие параметры на 25:

compileSdkVersion 25
targetSdkVersion 25
5
Darush
 <application
            Android:allowBackup="true"
            Android:icon="@mipmap/ic_launcher"
            Android:label="@string/app_name"
            Android:largeHeap="true"
            Android:supportsRtl="true"
            Android:theme="@style/AppTheme"

            >
            <meta-data
                tools:replace="Android:value"
                Android:name="Android.support.VERSION"
                Android:value="26.0.0" />
        </application>
3
DILSHAD AHMAD

Открыть Android Studio -> Открыть файл манифеста

Добавить <uses-sdk tools:overrideLibrary="Android.support.v17.leanback"/>. Не забудьте также включить xmlns:tools="http://schemas.Android.com/tools" перед тегом <application>

замещать 

compile 'com.Android.support:recyclerview-v7:+' 

от

compile 'com.Android.support:recyclerview-v7:25.3.1'

и добавить 

compile 'com.Android.support:appcompat-v7:25.3.1'
compile 'com.Android.support:design:25.3.1'
2
Atul
  1. В Android Studio -> Открыть файл манифеста
  2. Переключитесь на Merged Manifest и проверьте файл Other Manifest.

В моем случае я использую файлы поддержки 26.1.0, но обнаружил, что support-v13 - это 26.0.1  enter image description here

Поэтому я добавил implementation 'com.Android.support:support-v13:26.1.0' в файл Gradle и проблема решена

0
mhcpan

ответ @sagar giri - временная работа. что я сделал, чтобы решить это, объясняется в конце.

Если в последней версии Android Studio установлена ​​последняя библиотека поддержки, а в модуле приложения build gradle установлена ​​старая версия библиотеки поддержки, то в Android Studio происходит сбой из-за несоответствия версий.

Поэтому обновите версию своей библиотеки поддержки до последней, исправьте последние изменения библиотеки поддержки, такие как переименование значков и т.д., И перестройте ее.

надеюсь, поможет...

0
Boopathi T
        Add <meta-data> tag in manifest.xml file as below...


    <?xml version="1.0" encoding="utf-8"?>
    <manifest package="com.demo"
        xmlns:Android="http://schemas.Android.com/apk/res/Android"
        xmlns:tools="http://schemas.Android.com/tools">

        <uses-permission Android:name="Android.permission.INTERNET"/>

        <application
            Android:name=".MyApplication"
            Android:allowBackup="true"
            Android:icon="@mipmap/ic_launcher"
            Android:label="@string/app_name"
            Android:supportsRtl="true"
            Android:theme="@style/AppTheme">
            <activity
                Android:name=".MainActivity"
                Android:theme="@style/AppTheme">
                <intent-filter>
                    <action Android:name="Android.intent.action.MAIN"/>

                    <category Android:name="Android.intent.category.LAUNCHER"/>
                </intent-filter>
            </activity>

            **<meta-data
                tools:replace="Android:value"
                Android:name="Android.support.VERSION"
                Android:value="25.3.1" />//this 25.3.1 version should be same which we defined in the build.gradle file. i am using compileSdkVersion 25**

        </application>
 </manifest>

Работать наверняка @ASK ....

0
Ambilpura Sunil Kumar