5
votes

(if you'd like, download a .zip of the source code that demonstrates the error.)

Start off with a new Adobe Air Android app, set to GPU rendering mode. Add a DisplayObject to the stage, and set its .cacheAsBitmap value to true. Then run the app on a Dell Venue 8 7840. Here's a screenshot: the green square is a simple MovieClip with the shape drawn using its . .graphics property. The glitched out space is supposed to be a red square, drawn using exactly the same method, only with .cacheAsBitmap = true

enter image description here

This only happens on this particular device, using this particular rendering mode - updating the Android OS version from 4.4 to 5.0 doesn't fix it.

Any ideas on what's causing this, and how to fix it without using a different rendering mode or not caching the graphics as bitmaps?

2
Maybe report a bug to Dell regarding this issue? It can as well be a hardware/driver error that you cannot resolve on your own. - Vesper
I suggest you to try different AIR SDK versions (start from latest 16, 17 and 18 beta, you can download them here helpx.adobe.com/air/kb/archived-air-sdk-version.html), if bug exists in all versions report to adobe bugbase.adobe.com. That device has intel atom platform, bug can be related to x86 support as well. - fsbmain
definitely only happens on this device - my friend's phone (non-intel chip, android 5.0.2) doesn't show the same glitch. only happens on this particular tablet. - matt lohkamp
publishing for different AIR SDK versions doesn't help - older or newer. We've been using v16 up until this point, incidentally. - matt lohkamp
I am seeing the exact same issue on Amazon Fire HD 7 (4th generation) tablet. - revoxover

2 Answers

0
votes

I had these unexpected results before, twisted them sometimes adding to cacheAsBitmap also cacheAsBitmapMatrix with a scaled 2x matrix. Takes more memory but did the trick a few times.

0
votes

Try to set

stage.quality = StageQuality.LOW;

This solved the issue for me.