尝试使用以下代码来运行应用程序但是收到以下错误。“Manifest merger失败,出现多个错误,请参阅日志”

时间:2017-04-02 20:19:55

标签: android xml

尝试使用以下代码来运行应用程序,但是收到以下错误。“Manifest merger失败,出现多个错误,请参阅日志”。我之前在应用程序gradle文件中做了一些更改,因为应用程序涉及使用“CardView和Recycler视图”(在stackoverflow中的几个问题上建议进行更改)附加下面的所有应用程序文件。有人可以帮我这个吗? Gradle控制台:

    package com.example.sumeet.cardviewreclyerview_try1;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.Menu;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu_home, menu);
        return super.onCreateOptionsMenu(menu);
    }
}

MainActivity.java

package com.example.sumeet.cardviewreclyerview_try1;

import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

/**
 * Created by Sumeet on 03-04-2017.
 */

public class VersionAdapter extends RecyclerView.Adapter<VersionAdapter.VersionViewHolder> {

    private String[] version = {"Alpha", "Beta", "CupCake", "Donut", "Eclair", "Froyo", "Gingerbread", "Honeycomb", "Ice Cream Sandwich", "Jelly Bean", "KitKat", "Lollipop", "Marshmallow", "Nougat", "O"};

    @Override
    public VersionAdapter.VersionViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {


        View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.each_row, parent, false);
        VersionViewHolder viewHolder = new VersionViewHolder(v);
        return viewHolder;
    }

    @Override
    public void onBindViewHolder(VersionAdapter.VersionViewHolder holder, int position) {
        holder.text.setText(version[position]);
    }

    @Override
    public int getItemCount() {
        return version.length;
    }

    public static class VersionViewHolder extends RecyclerView.ViewHolder {
        private TextView text;

        public VersionViewHolder(View itemView) {
            super(itemView);
            text = (TextView) itemView.findViewById(R.id.textview_card);
        }
    }
}

VersionAdapter.java

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.sumeet.cardviewreclyerview_try1.MainActivity">


    <android.support.v7.widget.RecyclerView
        android:id="@+id/recycler"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scrollbars="vertical"
        android:layout_above="@+id/floatingActionButton"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"></android.support.v7.widget.RecyclerView>

    <android.support.design.widget.FloatingActionButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:clickable="true"
        android:src="@android:drawable/ic_dialog_email"
        tools:ignore="MissingConstraints"
        tools:layout_editor_absoluteX="312dp"
        tools:layout_editor_absoluteY="439dp"
        android:id="@+id/floatingActionButton" />

</RelativeLayout>

activity_main.xml中

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <EditText
        android:id="@+id/textview_card"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="textPersonName"
        android:text="Name" />
</android.support.v7.widget.CardView>

each_row.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <item
        android:id="@+id/add_item"
        android:icon="@android:drawable/ic_menu_add"
        android:title="Item"
        app:showAsAction="always" />
    <item
        android:id="@+id/delete_item"
        android:icon="@android:drawable/ic_menu_delete"
        android:title="Item"
        app:showAsAction="always" />
    <item
        android:id="@+id/search_item"
        android:title="Search" />
    <item
        android:id="@+id/settings_item"
        android:title="Settings" />
</menu>

menu_home.xml(菜单文件)

    apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "com.example.sumeet.cardviewreclyerview_try1"
        minSdkVersion 9
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
        compile 'com.android.support:cardview-v7:21.+'
        compile 'com.android.support:recyclerview-v7:21.+'
    })

    compile 'com.android.support:appcompat-v7:25.3.1'
    compile 'com.android.support:design:22.2.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.0-beta5'
    compile 'com.android.support:recyclerview-v7:+'
    testCompile 'junit:junit:4.12'
}

的build.gradle(APP)

{{1}}

1 个答案:

答案 0 :(得分:7)

您正在尝试使用Android支持库的多个版本:

  • compile 'com.android.support:appcompat-v7:25.3.1'
  • compile 'com.android.support:design:22.2.0'
  • compile 'com.android.support:recyclerview-v7:+'

所有 com.android.support工件使用相同版本。那个版本不应该是+。鉴于这三行,我会选择25.3.1