Open CosminRadu opened 9 years ago
Android Studio 3.2.1, Gradle 4.6. Java 1.8
In module1 I use in dir libs/android-binding-v0.6-build718.jar
It's containt class:
android\support\v4\accessibilityservice\AccessibilityServiceInfoCompat$AccessibilityServiceInfoIcsImpl.class
in project/build.gradle:
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
in app/build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.myproject"
minSdkVersion 23
targetSdkVersion 28
versionCode 421
versionName "2.1.421"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
}
}
def AAVersion = '4.5.2'
dependencies {
annotationProcessor "org.androidannotations:androidannotations:$AAVersion"
annotationProcessor "org.androidannotations:ormlite:$AAVersion"
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:animated-vector-drawable:28.0.0'
implementation 'com.android.support:exifinterface:28.0.0'
implementation 'com.android.support:cardview-v7:28.0.0'
implementation 'com.android.support:customtabs:28.0.0'
implementation 'com.android.support:support-media-compat:28.0.0'
implementation 'com.android.support:support-v4:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'org.apache.commons:commons-lang3:3.8.1'
implementation 'org.apache.httpcomponents:httpclient:4.5.6'
implementation 'com.google.android.gms:play-services-gcm:16.0.0'
implementation 'com.google.code.gson:gson:2.8.2'
implementation 'com.j256.ormlite:ormlite-android:5.1'
implementation 'commons-io:commons-io:2.6'
implementation "org.androidannotations:androidannotations-api:$AAVersion"
implementation "org.androidannotations:ormlite-api:$AAVersion"
implementation project(':module1')
implementation project(':module2')
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
here dependencies:
+--- com.google.android.gms:play-services-gcm:16.0.0 | +--- com.google.android.gms:play-services-base:16.0.1 | | +--- com.google.android.gms:play-services-basement:16.0.1 | | | --- com.android.support:support-v4:26.1.0 -> 28.0.0 () | | --- com.google.android.gms:play-services-tasks:16.0.1 | | --- com.google.android.gms:play-services-basement:16.0.1 () | +--- com.google.android.gms:play-services-basement:16.0.1 () | +--- com.google.android.gms:play-services-iid:16.0.0 | | +--- com.google.android.gms:play-services-base:16.0.1 () | | +--- com.google.android.gms:play-services-basement:16.0.1 () | | +--- com.google.android.gms:play-services-stats:16.0.1 | | | --- com.google.android.gms:play-services-basement:16.0.1 () | | --- com.google.android.gms:play-services-tasks:16.0.1 () | --- com.google.android.gms:play-services-stats:16.0.1 ()
But I get error:
:app:transformDexArchiveWithExternalLibsDexMergerForDebugD8: Program type already present: android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat$AccessibilityServiceInfoIcsImpl
FAILED
Hi, the code is not updated since android 5 as new features on android and the approach of android SDK makes this library lost its original purpose.
Unless you're planning to target for android 4 or earlier, I suggest you use different frameworks instead of android binding.
On Mon, Dec 17, 2018, 18:07 lmdic notifications@github.com wrote:
Android Studio 3.2.1, Gradle 4.6. Java 1.8
In module1 I use in dir libs/android-binding-v0.6-build718.jar
It's containt class:
android\support\v4\accessibilityservice\AccessibilityServiceInfoCompat$AccessibilityServiceInfoIcsImpl.class
in project/build.gradle:
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1' in app/build.gradle:
apply plugin: 'com.android.application'
android { compileSdkVersion 28 defaultConfig { applicationId "com.myproject" minSdkVersion 23 targetSdkVersion 28 versionCode 421 versionName "2.1.421" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
} buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } packagingOptions { exclude 'META-INF/DEPENDENCIES' }
}
def AAVersion = '4.5.2'
dependencies { annotationProcessor "org.androidannotations:androidannotations:$AAVersion" annotationProcessor "org.androidannotations:ormlite:$AAVersion"
implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'com.android.support:appcompat-v7:28.0.0' implementation 'com.android.support:animated-vector-drawable:28.0.0' implementation 'com.android.support:exifinterface:28.0.0' implementation 'com.android.support:cardview-v7:28.0.0' implementation 'com.android.support:customtabs:28.0.0' implementation 'com.android.support:support-media-compat:28.0.0' implementation 'com.android.support:support-v4:28.0.0' implementation 'com.android.support.constraint:constraint-layout:1.1.3' implementation 'org.apache.commons:commons-lang3:3.8.1' implementation 'org.apache.httpcomponents:httpclient:4.5.6' implementation 'com.google.android.gms:play-services-gcm:16.0.0' implementation 'com.google.code.gson:gson:2.8.2' implementation 'com.j256.ormlite:ormlite-android:5.1' implementation 'commons-io:commons-io:2.6' implementation "org.androidannotations:androidannotations-api:$AAVersion" implementation "org.androidannotations:ormlite-api:$AAVersion" implementation project(':module1') implementation project(':module2') testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.2' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
here dependencies:
+--- com.google.android.gms:play-services-gcm:16.0.0 | +--- com.google.android.gms:play-services-base:16.0.1 | | +--- com.google.android.gms:play-services-basement:16.0.1 | | | --- com.android.support:support-v4:26.1.0 -> 28.0.0 (
) | | --- com.google.android.gms:play-services-tasks:16.0.1 | | --- com.google.android.gms:play-services-basement:16.0.1 () | +--- com.google.android.gms:play-services-basement:16.0.1 (
) | +--- com.google.android.gms:play-services-iid:16.0.0 | | +--- com.google.android.gms:play-services-base:16.0.1 () | | +--- com.google.android.gms:play-services-basement:16.0.1 (
) | | +--- com.google.android.gms:play-services-stats:16.0.1 | | | --- com.google.android.gms:play-services-basement:16.0.1 () | | --- com.google.android.gms:play-services-tasks:16.0.1 ( ) | --- com.google.android.gms:play-services-stats:16.0.1 ()
But I get error:
:app:transformDexArchiveWithExternalLibsDexMergerForDebugD8: Program type already present: android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat$AccessibilityServiceInfoIcsImpl FAILED
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/gueei/AndroidBinding/issues/12#issuecomment-447789605, or mute the thread https://github.com/notifications/unsubscribe-auth/ABk8X0eIV0T8bjZhzYjl-lAVufiHsQg6ks5u52ztgaJpZM4DhOtw .
The built JAR file provided in the root of this enlistment embeds instead of references Google's android-support-v4 library (as opposed to the earlier released android-binding-v30-0.52.jar which does not). This difference makes it difficult to build a project that references both the android-bindings JAR and the app compat library (com.android.support:appcompat-v7) due to duplicate errors raised during DEX-ing. BTW, I noticed that the ".fatjar" file under androidbindingv30 does attempt to exclude android-support-v4: excludes=<jar|android-support-v4.jar>;<jar|annotations.jar> but for some reason this didn't seem to stick...
Could you update the published binary to not include the external bits?