Weird. No errors from dx.
> Creating DEX....
> /usr/local/android/sdk-linux_x86/build-tools/23.0.2/dx -JXmx4096M --dex --output /tmp/foo/target/release /tmp/foo/target/release/mininified-classes.jar /usr/local/android/sdk-linux_x86/tools/support/annotations.jar
However, I opened up that mininified-classes.jar, and it turns out the SplashActivity was removed it by something, before dexing! So the problem is occurring between compiling and mininifiying, whatever that is.
So it is in fact looking like a proguard problem.
The only errors I see from that stage are:
> Copying resources from program jar [/home/lken/.m2/repository/neko/neko/4.0.0-alpha5/neko-4.0.0-alpha5.jar]
> Warning: can't write resource [META-INF/MANIFEST.MF] (Duplicate zip entry [neko-4.0.0-alpha5.jar:META-INF/MANIFEST.MF])
Also the command is:
> Running Proguard...
> /usr/local/android/sdk-linux_x86/tools/proguard/bin/proguard.sh @/tmp/foo/build/proguard-minify.cfg -injars /tmp/foo/target/release/classes:/home/lken/.m2/repository/tigris/tigris/0.1.1/tigris-0.1.1.jar:/home/lken/.m2/repository/org/timmc/handy/1.7.0/handy-1.7.0.jar:/home/lken/.m2/repository/neko/neko/4.0.0-alpha5/neko-4.0.0-alpha5.jar:/home/lken/.m2/repository/com/fasterxml/jackson/dataformat/jackson-dataformat-smile/2.5.3/jackson-dataformat-smile-2.5.3.jar:/home/lken/.m2/repository/com/android/support/support-annotations/21.0.0/support-annotations-21.0.0.jar:/home/lken/.m2/repository/cheshire/cheshire/5.5.0/cheshire-5.5.0.jar:/home/lken/.m2/repository/utilza/utilza/0.1.73/utilza-0.1.73.jar:/home/lken/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.5.3/jackson-core-2.5.3.jar:/home/lken/.m2/repository/com/fasterxml/jackson/dataformat/jackson-dataformat-cbor/2.5.3/jackson-dataformat-cbor-2.5.3.jar:/home/lken/.m2/repository/org/skummet/clojure/1.7.0-r1/clojure-1.7.0-r1.jar:/tmp/foo/target/release/aar-extracted/com.android.support_support-v4_aar_21.0.0/classes.jar:/tmp/foo/target/release/aar-extracted/com.android.support_multidex_aar_1.0.0/classes.jar:/tmp/foo/target/release/aar-extracted/com.android.support_support-v4_aar_21.0.0/libs/internal_impl-21.0.0.jar -libraryjars /usr/local/android/sdk-linux_x86/tools/support/annotations.jar:/usr/local/android/sdk-linux_x86/platforms/android-18/android.jar -outjars /tmp/foo/target/release/mininified-classes.jar
> ProGuard, version 5.2.1
So. It's proguard causing trouble.
And.... sure enough proguard is discaring the classes.
And the problem is found and fixed:
> diff --git a/build/proguard-minify.cfg b/build/proguard-minify.cfg
> index 5d712a3..47fa795 100644
> --- a/build/proguard-minify.cfg
> +++ b/build/proguard-minify.cfg
> @@ -59,5 +59,5 @@
> -keep public class **__init
>
> --keep public class test.leindroid.sample.*
> +-keep public class my.damn.namespace.*
>
> # The support library contains references to newer platform versions.
> @@ -72,2 +72,3 @@
> -keep public class com.google.android.gms.* { public *; }
> -dontwarn com.google.android.gms.**
> +
>
When porting the app from old neko to new neko, I copied the proguard.cfg from the sample project.
And forgot to edit it to match the new app.
So, this app is finally going to be released to the Google Play store, exactly 2 years later.
Thanks for your help, and thanks for lein-droid and neko!
-ken
--
--------