0

activity_loginなどのxml名が衝突しているライブラリプロジェクトがあります.ライブラリプロジェクトでActivityを実行すると、独自のxmlではなくxmlが膨張し、その後NPEがスローされます。

私はすでに完全修飾されたRファイル名を付けようとしましたが、それでも間違ったファイルを膨らませているようです.

Ps: クリーン ビルドを試しましたが、AS1.2.1.1 でも動作しません。これは AS のバグですか、それとも何か間違ったことをしていますか

ここに私のgradleファイルがあります

buildscript {
    repositories {
        maven { url 'http://download.crashlytics.com/maven' }
    }

    dependencies {
        classpath 'com.crashlytics.tools.gradle:crashlytics-gradle:1.+'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'crashlytics'

repositories {
    maven { url 'http://download.crashlytics.com/maven' }
}


android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "com.xxx"
        minSdkVersion 14
        targetSdkVersion 21
        versionCode 17
        versionName "2.4.3"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'),'proguard-rules.pro'
        }
    }
}

   dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.android.support:appcompat-v7:21.0.+'
    compile 'com.google.android.gms:play-services:6.5.+'
    compile 'com.android.support:support-v4:21.0.+'
    compile 'com.android.support:recyclerview-v7:22.0.+'
    compile 'com.android.support:cardview-v7:21.0.+'
    compile project('libraries:holograph')
    compile project('libraries:facebook')
    compile files('libs/google-api-client-android-1.18.0-rc.jar')
    compile files('libs/google-api-client-java6-1.18.0-rc.jar')
    compile files('libs/google-api-client-1.18.0-rc.jar')
    compile 'com.crashlytics.android:crashlytics:1.+'
    compile project(':chartlib')
    compile project(':payu')
}

そしてpayuのbuild.gradleは

apply plugin: 'com.android.library'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 21
        versionCode 2
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile('de.keyboardsurfer.android.widget:crouton:1.8.+@aar') {
        exclude module: 'support-v7'
        compile 'com.android.support:appcompat-v7:18.0.+'
    }
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'de.greenrobot:eventbus:2.2.1'
    compile 'com.loopj.android:android-async-http:1.4.6'
    compile 'com.mobsandgeeks:android-saripaar:1.0.3'
    compile project(':CustomBrowser')
}

そして私のSettings.gradle

include ':app', ':payUMoneysdk', ':CustomBrowser'
4

1 に答える 1

0

これは仕様によるものです。ライブラリ アクティビティのレイアウトをオーバーライドしていると考えてください。私はより便利な文字列、色などに広く使用しています。

プロジェクトの XML レイアウトの名前を変更するだけです。

于 2015-06-05T08:50:01.890 に答える