質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.37%

  • Android

    6988questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • Android Studio

    4115questions

    Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

ビルド時にManifest merger failed with multiple errorsエラーが発生

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 7,496

kaji

score 603

Eclipseで開発されたものをAndroidStudioで動かすようにしてる最中です。

エラーは以下の通りです。

Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed with multiple errors, see logs


ビルドメッセージは以下の通りです(Message Gradle Build)

Information:Gradle tasks [:app:clean, :app:generateDebugSources, :app:mockableAndroidJar, :app:prepareDebugUnitTestDependencies, :app:generateDebugAndroidTestSources, :app:assembleDebug]
Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed with multiple errors, see logs
Information:BUILD FAILED

開発の構成は以下の通りです。
testプロジェクトに
独自libraryのmoduleをimportしている感じです。

ネットで調べたところ2つのAndroidManifest.xmlが
競合していると起こるエラーとのことだったので
(testプロジェクトと独自library)のAndroidManifest.xmlを調べてみたのですが、
それっぽいところはありませんでした。

その他情報でやったところ
library側の<uses-sdk android:minSdkVersion="11"/>を削っても同様のエラーが出ました。
xmlns:tools="http://schemas.android.com/tools"をmanifestタグに追加すると良いとあり、追加してみましたが、同様のエラーになりました。

**sampleプロジェクト側AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="jp.co.test.sampleHoge" >

    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".SampleHoge"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

        <activity android:name="jp.co.test.sdk.Hoge.HogeActivity"
            android:theme="@android:style/Theme.Translucent"
            android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
            android:screenOrientation="behind"/>

        <meta-data android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version"/>
    </application>

</manifest>

**library側(AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="jp.co.test.hogesdk"
    android:versionCode="23"
    android:versionName="1.5.6" >

    <uses-sdk android:minSdkVersion="11"/>

    <application android:label="hogeSDK" >
    </application>

</manifest>
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

checkベストアンサー

0

ライブラリ側のapplicationタグの属性labelを削除してもダメですか?

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/10/05 16:24 編集

    削除してみたところ以下エラーになりました。

    Error:Execution failed for task ':app:processDebugManifest'.
    > Manifest merger failed : uses-sdk:minSdkVersion 10 cannot be smaller than version 11 declared in library [SampleHoge:hogesdk:unspecified] /d/android/sample/SampleHoge/app/build/intermediates/exploded-aar/SampleHoge/hogesdk/unspecified/AndroidManifest.xml
    Suggestion: use tools:overrideLibrary="jp.co.test.hogesdk" to force usage

    少なくとも11とありますが、ライブラリ側 AndroidManifest.xmlには<uses-sdk android:minSdkVersion="11"/>と定義されています。

    キャンセル

  • 2016/10/05 16:32

    それはメインプロジェクトの方のバージョンが低いと言っているエラーでは?

    キャンセル

  • 2016/10/05 18:01 編集

    メインプロジェクト側にも
    <uses-sdk android:minSdkVersion="11"/>
    を定義してみましたが、以下の通り同様のエラーとなりました。

    Error:Execution failed for task ':app:processDebugManifest'.
    > Manifest merger failed : uses-sdk:minSdkVersion 10 cannot be smaller than version 11 declared in library [SampleHoge:hogesdk:unspecified] /d/android/sample/SampleHoge/app/build/intermediates/exploded-aar/SampleHoge/hogesdk/unspecified/AndroidManifest.xml
    Suggestion: use tools:overrideLibrary="jp.co.test.hogesdk" to force usage

    エラー内に
    tools:overrideLibrary="jp.co.test.hogesdk"
    の提案があったので一旦<uses-sdk android:minSdkVersion="11"/>を削除して
    以下をメインプロジェクト側に追加したのですが、
    <uses-sdk tools:overrideLibrary="jp.co.test.hogesdk"/>

    以下エラーが発生しました。
    Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
    > com.android.build.api.transform.TransformException:
    com.android.ide.common.process.ProcessException:
    java.util.concurrent.ExecutionException:
    com.android.dex.DexException:
    Multiple dex files define Lcom/google/ads/AdRequest$ErrorCode;

    上記エラーをネットで調べると
    build.gradleに
    defaultConfig {
    multiDexEnabled true
    }
    を追加するといいと書いてあったので、
    メインプロジェクト側に追加したのですが今度は
    以下エラーとなりました。

    Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
    > com.android.build.api.transform.TransformException:
    java.util.zip.ZipException: duplicate entry:
    com/google/android/gms/signin/internal/zzg.class

    これもネットで調べたところbuild/cleanすると良いとあったので、
    cleanしてみたのですが、上記エラーのままでした。

    色々修正してもエラー続きなので
    そもそもが間違ってるとかとかありますでしょうか?

    キャンセル

  • 2016/10/05 18:57

    メインプロジェクトのgradleのminSdkVersionの値がおかしいんだと思いますよ。

    キャンセル

  • 2016/10/05 19:22

    メインプロジェクト側のbuild.gradleを
    確認すると
    minSdkVersion 10
    となっておりました。
    一旦、"minSdkVersion 10"エラーとなっているところまで修正を戻して、
    minSdkVersion 11
    に修正いたしました。
    実行したところ"minSdkVersion 10"エラーは消えましたが、
    以下前回でたエラーが発生してしまいました。
    Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
    > com.android.build.api.transform.TransformException:
    com.android.ide.common.process.ProcessException:
    java.util.concurrent.ExecutionException:
    com.android.dex.DexException:
    Multiple dex files define Lcom/google/ads/AdRequest$ErrorCode;

    minSdkVersion 11の修正が適切にできてないのでしょうか?

    キャンセル

  • 2016/10/05 19:28

    エラーをしっかりと読んでください。
    sdkのバージョンはもう大丈夫です。

    今度はメインとライブラリで同じライブラリをインポートしているようです。
    dependenciesを確認してください。

    キャンセル

  • 2016/10/06 10:50 編集

    メイン側
    build.gradle
    dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.google.android.gms:play-services-ads:8.1.0'
    compile 'com.android.support:appcompat-v7:24.2.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha7'
    compile project(':hogeSDK')
    }

    ライブラリ側
    build.gradle
    dependencies {
    compile files('libs/google-play-services.jar')
    }

    メイン側の
    compile 'com.google.android.gms:play-services-ads:8.1.0'
    を外すことで解消できました。
    yonaさんのおかげで解決できました。
    ありがとうございます。

    キャンセル

同じタグがついた質問を見る

  • Android

    6988questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • Android Studio

    4115questions

    Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。