views:

112

answers:

3

I recently released a game on the Android market. It seems to be working fine for most people, but everyone using a Samsung Galaxy S is reporting the same problem: The graphics for the game are not being drawn on screen (though they appear to be present, sound effects are still generated). The game uses a SurfaceView to draw the various elements from PNG graphics, and everything is scaled so that it will work on any resolution. I don't have a Galaxy S, so debugging is quite hard, can anyone who's had experience developing on a Galaxy S let me know if they found any particular quirks with the device?

A: 

Samsung Galaxy S GT-I9000 has very slow internal sd card. It is probably due to errors in a file system. Make sure your application does I/O operations on internal sd card only when absoultely neccessary.

Check here for details:

http://stackoverflow.com/questions/3501451/sqlite-is-extremely-slow-in-samsung-galaxy-gt-i9000

radek-k
It could be a problem with loading the image files from internal storage I guess, but wouldn't that throw some kind of exception if there was a file IO problem?
fredley
+2  A: 

try loading the files in a loading screen to memory first and only then play the game.

Jason
Any tips on how to do that?
fredley
Perform the loading of all the items you are goid to display and use for example: BitmapFactory.decodeResource(id) and SoundPool.Load() on all the files you are going to be needing as soon as the game starts. and only then beging the game using the handles you have just recived from all the loading methods you called.
Jason
Thanks, I'll give that a try
fredley
Still no luck :-(
fredley
A: 

Sorry, for some reason it won't allow me to comment above... I was having the exact same problem with my game where I load one bitmap which is a png and draw simple rectangles, but they are not drawn to the screen on the galaxy S... I was preloading my Bitmap using the BitmapFactory.decodeResource(id) and the problem still occurs. I cannot find a solution to why this is happening anywhere

Aaron
My Galaxy S arrives tomorrow, I'll let you know!
fredley