iOS problem

23 views
Skip to first unread message

nkring

unread,
Nov 4, 2011, 6:51:47 PM11/4/11
to Axiis
I've made a flex mobile app using axiis. It seems to run fine when
running in the emulator, but when I try to run it on an actual iphone
the app will lock up when trying to render a graph. I have narrowed
it down to having a VAxis or HAxis tag. If those aren't included, the
graph renders just fine.

I'm currently using flex 4.5, air 3.0, and am using the
Axiis_Library_flex4.5 library, and my phone is running iOS 4.0.

Has anyone else tried rendering on an actual device and were you able
to have success?

Thomas Gonzalez

unread,
Nov 4, 2011, 9:55:07 PM11/4/11
to ax...@googlegroups.com
Trying playing around with the fonts and labels in those components - there may be issues with Degrafa RasterText and the new flash font engine

- Tom

*** Sent from my iPhone ***

> --
> You received this message because you are subscribed to the Google Groups "Axiis" group.
> To post to this group, send email to ax...@googlegroups.com.
> To unsubscribe from this group, send email to axiis+un...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/axiis?hl=en.
>

nkring

unread,
Nov 10, 2011, 10:52:56 AM11/10/11
to Axiis
I figured out what the root cause was. The problem itself was only
evident if the .ipa that was running on my phone was built by
exporting a release build. If I built the .ipa doing the fast build
then the graphs rendered fine.

What seemed to be the cause were lines in the commitProperties
function in DataCanvas that I think the adobe compiler was errantly
optimizing out.
For example, take this line:

for (i = _backgroundSprites.length-1; i<backgroundGeometries.length; i+
+) {

I checked the values of _backgroundSprites.length and
backgroundGeometries.length and they would both be what I would
expect, and they definitely should have caused the body of the for
loop to be executed, however the body of the for loop was completely
skipped over.

If I changed that line to this:

var bgSpritesLen:int = _backgroundSprites.length-1;
var bgGeoLen:int = backgroundGeometries.length;
i=0;
for (i = bgSpritesLen; i < bgGeoLen; i++) {

then the body of the for loop would execute and the graph would render
properly. I really wish I knew why that worked.

I didn't test it, but I assume the equivalent loop for
foregroundGeometries in the same function suffers that same problem.
Reply all
Reply to author
Forward
0 new messages