finally something that makes sense :D checking it out now

On Wed, Jan 8, 2014 at 12:21 PM, Perry Nguyen <[email protected]> wrote:

> This can be verified by following these steps:
>
> sbt clean android:run # will fail
> sbt android:run # will succeed if it re-dexes (might require a slight code
> change, add a blank line)
> sbt clean android:run # will fail again
> # use a new scala interface, force full proguard again
> sbt android:run # will fail, because it is a full proguard
>
>
> On Wed, Jan 8, 2014 at 10:20 AM, Perry Nguyen <[email protected]> wrote:
>
>> No, the problem you're encountering is not what's the difference between
>> release and debug proguard, the problem here is a full proguard run vs. a
>> cache-hit.
>>
>> Your first debug package build will always fail, because proguard
>> processes all of your code and removes your native callbacks(?)
>>
>> Subsequent debug runs /work/ because your code does not get adulterated
>> by proguard, it effectively links your code against pre-processed libraries.
>>
>> Release builds always fail because they are always a full proguard run.
>>
>> The solution, is to properly set up proguard, it looks like you need to
>> add -keepclassmembers class * { native **; } as I mentioned just  before.
>>
>>
>> On Wed, Jan 8, 2014 at 10:16 AM, Daniel Skinner <[email protected]> wrote:
>>
>>> yeah so im inexperienced with proguard but that was my first notion and
>>> source of my original question, being, what's the diff on debug and release
>>> proguard? Answer being nothing. I'm unsure of how/where to dive into
>>> proguard issues from there.
>>>
>>>
>>> On Wed, Jan 8, 2014 at 12:13 PM, Perry Nguyen <[email protected]>wrote:
>>>
>>>> Come to think of it, that's a likely scenario; native interfaces
>>>> probably got removed. proguard-cache hits bypass proguarding your code; so
>>>> all your code is dex'd unadulterated (only scala libraries get
>>>> proguarded/reduced).
>>>>
>>>>
>>>> On Wed, Jan 8, 2014 at 10:12 AM, Perry Nguyen <[email protected]>wrote:
>>>>
>>>>> Alternatively, it's possible because your jni interfaces (java-side)
>>>>> are getting proguarded/obfuscated, if you have those rules.
>>>>>
>>>>>
>>>>> On Wed, Jan 8, 2014 at 10:11 AM, Perry Nguyen <[email protected]>wrote:
>>>>>
>>>>>> It's a red-herring
>>>>>>
>>>>>>
>>>>>> On Wed, Jan 8, 2014 at 10:10 AM, Daniel Skinner <[email protected]>wrote:
>>>>>>
>>>>>>> as noted previously, only works in debug when i get debug message on
>>>>>>> classes.dex regen. I dont think its related to this but that's the only
>>>>>>> visual difference that identifies when it works
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Jan 8, 2014 at 12:09 PM, Perry Nguyen <[email protected]>wrote:
>>>>>>>
>>>>>>>> And this time it worked, seems quite random
>>>>>>>>
>>>>>>>>
>>>>>>>> On Wed, Jan 8, 2014 at 10:08 AM, Perry Nguyen 
>>>>>>>> <[email protected]>wrote:
>>>>>>>>
>>>>>>>>> just android:run
>>>>>>>>>
>>>>>>>>> implicitly does package-debug
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Wed, Jan 8, 2014 at 10:08 AM, Daniel Skinner <[email protected]>wrote:
>>>>>>>>>
>>>>>>>>>> are you building like this?
>>>>>>>>>>
>>>>>>>>>> > compile
>>>>>>>>>> > android:package-debug
>>>>>>>>>> > android:install
>>>>>>>>>> ...
>>>>>>>>>> [shows debug message indicating regen of classes.dex]
>>>>>>>>>> ...
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Wed, Jan 8, 2014 at 12:07 PM, Perry Nguyen <[email protected]
>>>>>>>>>> > wrote:
>>>>>>>>>>
>>>>>>>>>>> Your app crashes for me regardless of whether it's a debug or
>>>>>>>>>>> release build.
>>>>>>>>>>>
>>>>>>>>>>> I/DEBUG   (  177):          75105aa8  74f71dc0
>>>>>>>>>>>  /data/app-lib/com.example.radio-2/libaacarray.so
>>>>>>>>>>> I/DEBUG   (  177):          75105aac  74f42a53
>>>>>>>>>>>  /data/app-lib/com.example.radio-2/libaacarray.so
>>>>>>>>>>> (Java_com_spoledge_aacplayer_ArrayDecoder_nativeStart+94)
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Wed, Jan 8, 2014 at 10:06 AM, Perry Nguyen <
>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Then it's unrelated to proguard, or dex files.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Jan 8, 2014 at 10:04 AM, Daniel Skinner <[email protected]
>>>>>>>>>>>> > wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> from a clean unzip with a signing key of previous attachment
>>>>>>>>>>>>>
>>>>>>>>>>>>> ~ $ sbt
>>>>>>>>>>>>> > compile
>>>>>>>>>>>>> ...
>>>>>>>>>>>>> > android:package-release
>>>>>>>>>>>>> ...
>>>>>>>>>>>>>
>>>>>>>>>>>>> ~ $ rm ./target/android-bin/classes.dex
>>>>>>>>>>>>>
>>>>>>>>>>>>> > android:install
>>>>>>>>>>>>> ...
>>>>>>>>>>>>> [indicates regen of classes.dex]
>>>>>>>>>>>>> ...
>>>>>>>>>>>>>
>>>>>>>>>>>>> Start the app and still fails.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Wed, Jan 8, 2014 at 11:45 AM, Perry Nguyen <
>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> And you have never indicated whether removing classes.dex
>>>>>>>>>>>>>> works
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> a release has nothing to do with a debug build, particularly
>>>>>>>>>>>>>> in 1.2.5
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Wed, Jan 8, 2014 at 9:45 AM, Perry Nguyen <
>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> bad file, cannot be unpacked.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Wed, Jan 8, 2014 at 9:09 AM, Daniel Skinner <
>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> bleh, link that works
>>>>>>>>>>>>>>>> https://www.dropbox.com/s/xfhd7r05vgdtaj6/share.tar.gz
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Wed, Jan 8, 2014 at 11:05 AM, Daniel Skinner <
>>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>  Thanks, was a busy week for me last. I tried 1.2.5 but
>>>>>>>>>>>>>>>>> it doesn't resolve anything. I tried a local install/fork of 
>>>>>>>>>>>>>>>>> the android
>>>>>>>>>>>>>>>>> sdk plugin to do similar without much luck, but as promised
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> https://drive.google.com/a/dasa.cc/file/d/0B6hxg-gC2Uz_SDhMMFlpUHZSMnc/edit?usp=sharing
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> There's an archive demonstrating the exact problem. The
>>>>>>>>>>>>>>>>> archive is still pointing to 1.2.4 in the plugins file. Setup 
>>>>>>>>>>>>>>>>> a key for
>>>>>>>>>>>>>>>>> signing and such. To produce a clean build
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> ~ $ sbt
>>>>>>>>>>>>>>>>> android:package-debug
>>>>>>>>>>>>>>>>> android:install
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Producing a release build doesn't work and manually
>>>>>>>>>>>>>>>>> signing seems to *not* be much of an option b/c im seeing 
>>>>>>>>>>>>>>>>> issues on similar
>>>>>>>>>>>>>>>>> devices, different networks, where some users can upgrade and 
>>>>>>>>>>>>>>>>> other's
>>>>>>>>>>>>>>>>> can't. So random reader beware ..
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> On Monday, January 6, 2014 7:07:27 AM UTC-6, pfn wrote:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> anyway, I've released 1.2.5 which will also force a clean
>>>>>>>>>>>>>>>>>> dex on every release build
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> On Wed, Jan 1, 2014 at 12:06 PM, Perry Nguyen <
>>>>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> indeed, I suppose the dex file might need to be removed
>>>>>>>>>>>>>>>>>>> for a release build (when switching back and forth)
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> On Wed, Jan 1, 2014 at 10:52 AM, Daniel Skinner <
>>>>>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> I'm guessing this is related here
>>>>>>>>>>>>>>>>>>>> https://github.com/pfn/android-sdk-plugin/blob/
>>>>>>>>>>>>>>>>>>>> master/src/tasks.scala#L947
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> On Wednesday, January 1, 2014 12:35:40 PM UTC-6, pfn
>>>>>>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> same rules are applied regardless of build type
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> On Wed, Jan 1, 2014 at 10:23 AM, Daniel Skinner <
>>>>>>>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> I'm using the pfn/android-sdk-plugin and I don't
>>>>>>>>>>>>>>>>>>>>>> think this is any fault of the plugin but i have an app 
>>>>>>>>>>>>>>>>>>>>>> that depends on
>>>>>>>>>>>>>>>>>>>>>> https://code.google.com/p/aacdecoder-android/ which
>>>>>>>>>>>>>>>>>>>>>> i already have compiled into a jar and dropped into libs.
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> Debug builds work just fine but release builds cause
>>>>>>>>>>>>>>>>>>>>>> the native lib to seg fault and having previously 
>>>>>>>>>>>>>>>>>>>>>> carried this over from a
>>>>>>>>>>>>>>>>>>>>>> non-proguard project, I was thinking there are differing 
>>>>>>>>>>>>>>>>>>>>>> options set by the
>>>>>>>>>>>>>>>>>>>>>> plugin based on build type (debug/release).
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> I only noticed this single file in the repo for
>>>>>>>>>>>>>>>>>>>>>> configuring proguard: https://github.com/p
>>>>>>>>>>>>>>>>>>>>>> fn/android-sdk-plugin/blob/master/resources/android-
>>>>>>>>>>>>>>>>>>>>>> proguard.config
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> but might i be on the right track here? Or does the
>>>>>>>>>>>>>>>>>>>>>> plugin apply the same rules regardless of build type? 
>>>>>>>>>>>>>>>>>>>>>> Digging into the
>>>>>>>>>>>>>>>>>>>>>> source now
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>>>>>>> You received this message because you are subscribed
>>>>>>>>>>>>>>>>>>>>>> to the Google Groups "scala-on-android" group.
>>>>>>>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving
>>>>>>>>>>>>>>>>>>>>>> emails from it, send an email to scala-on-andro...@
>>>>>>>>>>>>>>>>>>>>>> googlegroups.com.
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> For more options, visit https://groups.google.com/
>>>>>>>>>>>>>>>>>>>>>> groups/opt_out.
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>  --
>>>>>>>>>>>>>>>>>>>> You received this message because you are subscribed to
>>>>>>>>>>>>>>>>>>>> the Google Groups "scala-on-android" group.
>>>>>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving
>>>>>>>>>>>>>>>>>>>> emails from it, send an email to scala-on-andro...@
>>>>>>>>>>>>>>>>>>>> googlegroups.com.
>>>>>>>>>>>>>>>>>>>> For more options, visit https://groups.google.com/
>>>>>>>>>>>>>>>>>>>> groups/opt_out.
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>  --
>>>>>>>>>>>>>>>>> You received this message because you are subscribed to a
>>>>>>>>>>>>>>>>> topic in the Google Groups "scala-on-android" group.
>>>>>>>>>>>>>>>>> To unsubscribe from this topic, visit
>>>>>>>>>>>>>>>>> https://groups.google.com/d/topic/scala-on-android/y_O8oSwDDTo/unsubscribe
>>>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>>>> To unsubscribe from this group and all its topics, send an
>>>>>>>>>>>>>>>>> email to [email protected].
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> For more options, visit
>>>>>>>>>>>>>>>>> https://groups.google.com/groups/opt_out.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>  --
>>>>>>>>>>>>>>>> You received this message because you are subscribed to the
>>>>>>>>>>>>>>>> Google Groups "scala-on-android" group.
>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails
>>>>>>>>>>>>>>>> from it, send an email to
>>>>>>>>>>>>>>>> [email protected].
>>>>>>>>>>>>>>>> For more options, visit
>>>>>>>>>>>>>>>> https://groups.google.com/groups/opt_out.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>  --
>>>>>>>>>>>>>> You received this message because you are subscribed to a
>>>>>>>>>>>>>> topic in the Google Groups "scala-on-android" group.
>>>>>>>>>>>>>> To unsubscribe from this topic, visit
>>>>>>>>>>>>>> https://groups.google.com/d/topic/scala-on-android/y_O8oSwDDTo/unsubscribe
>>>>>>>>>>>>>> .
>>>>>>>>>>>>>> To unsubscribe from this group and all its topics, send an
>>>>>>>>>>>>>> email to [email protected].
>>>>>>>>>>>>>> For more options, visit
>>>>>>>>>>>>>> https://groups.google.com/groups/opt_out.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>  --
>>>>>>>>>>>>> You received this message because you are subscribed to the
>>>>>>>>>>>>> Google Groups "scala-on-android" group.
>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails from
>>>>>>>>>>>>> it, send an email to
>>>>>>>>>>>>> [email protected].
>>>>>>>>>>>>> For more options, visit
>>>>>>>>>>>>> https://groups.google.com/groups/opt_out.
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>  --
>>>>>>>>>>> You received this message because you are subscribed to a topic
>>>>>>>>>>> in the Google Groups "scala-on-android" group.
>>>>>>>>>>> To unsubscribe from this topic, visit
>>>>>>>>>>> https://groups.google.com/d/topic/scala-on-android/y_O8oSwDDTo/unsubscribe
>>>>>>>>>>> .
>>>>>>>>>>> To unsubscribe from this group and all its topics, send an email
>>>>>>>>>>> to [email protected].
>>>>>>>>>>> For more options, visit https://groups.google.com/groups/opt_out
>>>>>>>>>>> .
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>  --
>>>>>>>>>> You received this message because you are subscribed to the
>>>>>>>>>> Google Groups "scala-on-android" group.
>>>>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>>>>> send an email to [email protected].
>>>>>>>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>  --
>>>>>>>> You received this message because you are subscribed to a topic in
>>>>>>>> the Google Groups "scala-on-android" group.
>>>>>>>> To unsubscribe from this topic, visit
>>>>>>>> https://groups.google.com/d/topic/scala-on-android/y_O8oSwDDTo/unsubscribe
>>>>>>>> .
>>>>>>>> To unsubscribe from this group and all its topics, send an email to
>>>>>>>> [email protected].
>>>>>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>>>>>
>>>>>>>
>>>>>>>  --
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "scala-on-android" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>> send an email to [email protected].
>>>>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>  --
>>>> You received this message because you are subscribed to a topic in the
>>>> Google Groups "scala-on-android" group.
>>>> To unsubscribe from this topic, visit
>>>> https://groups.google.com/d/topic/scala-on-android/y_O8oSwDDTo/unsubscribe
>>>> .
>>>> To unsubscribe from this group and all its topics, send an email to
>>>> [email protected].
>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>
>>>
>>>  --
>>> You received this message because you are subscribed to the Google
>>> Groups "scala-on-android" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>
>>
>>
>  --
> You received this message because you are subscribed to a topic in the
> Google Groups "scala-on-android" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/scala-on-android/y_O8oSwDDTo/unsubscribe
> .
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> For more options, visit https://groups.google.com/groups/opt_out.
>

-- 
You received this message because you are subscribed to the Google Groups 
"scala-on-android" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to