Using Multidex to solve INSTALL_FAILED_DEXOPT errors on Android

At work, we have been receiving reports of people, particularly on Android 2, not being able to install from the Google Play Store citing an error message “Package file is invalid“. At the same time, I was trying to test one of the features I was developing on a couple of Android 2 test devices we have in the office, but I was repeatedly getting an INSTALL_FAILED_DEXOPT error from adb. It seemed that both of these issues could be related.

iOS Screen Resolutions

iOS screen resolutions from an app developer’s point of view. 2007: In the beginning Back in 2007 when the first iPhone and iPod Touch were launched, iOS developers only had to worry about one resolution: 480×320.  Its aspect ratio is 3:2. Life was great. 2010: The retina displays Fast forward three years and three generations later.  In 2010, the iPhone 4 and iPod Touch 4th generation were launched with the first Retina Displays, which doubled the resolution of the screens.  The new resolution thus was 960×640.  This was great for developers as the new resolution had the same aspect ratio of Continue Reading

Debugging NSNotifications on iOS

For iOS developers, this is a really cool technique.  Sometimes you want to see all the NSNotifications that get posted in your app, whether it is for debugging, or to see the timing of where listeners can be hooked in.  Using breakpoints in Xcode will allow us to inspect the notifications. Follow this procedure to set it up: In Xcode, open the breakpoints panel on the left sidebar. Click the + icon at the bottom left of the panel.  Select “Add Symbolic Breakpoint…“ Enter the following details: Symbol: -[NSNotificationCenterpostNotificationName:object:userInfo:] Click Add Action and enter the following details: Debugger Command: po Continue Reading