Tuesday, 28 June 2011

Android Adventures #1

Welcome to my first entry of my adventures on porting games to Android. Here I'll list all the "WTF"s I got these past few months.

  • The NDK Debugger doesn't work with NDK-built binaries (states various section-related errors). Use vs-android.
  • The NDK Debugger can't trap startup crashes on native code. Instead the app will restart over and over before the debugger attaches to the process.
  • Sometimes when the app crashes and I'm debugging without a debugger, the crash dumper crashes halfway through.
  • A simple stack overflow on layout crash causes the adb server to die. Gotta reboot. The only way to figure out why it crashed is to dump the adb logcat to a file before it crashes.
  • Including a single line of SC++L code will cause the app to not start at all, crashing at some SC++L-related code before any other code is even ran (initializer-related, probably). Solution: Don't use the SC++L.
  • Sometimes the addr2line program will give you an erroneous filename and line (e.g., TwoPlayerGame.cpp:0). Solution: Run addr2line with  -C -f -e. It'll show the function prototypes.
  • Half the time GLSurfaceView will overlap any other views, no matter what layout you use.
I probably have a lot more issues to report, but it's been so long I can only remember a few.

0 comments:

Post a Comment