Adium always presenting Apple Quarantine Message

I've been getting a warning dialog on my Mac (Lion 10.7) when opening Adium. It recently updated to the newest beta and is presenting the following quarantine message every time I open it - “Adium.app” is an application downloaded from the Internet. Are you sure you want to open it?Every other time I have gotten the quarantine message, it clears itself after the first launch. This time it did not. I found a quick and easy way to remove the quarantine extended file attribute: ...

January 1, 2012 · 1 min · Aaron

Missing AccessibilitySettingsLoader bundle with iOS 5.0.1 debugging

After upgrading my iPhone 4 to iOS 5.0.1, Xcode has been giving me the following error message when debugging my Migraine Diary app remotely: warning: Unable to read symbols for /Users/aaron/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/System/Library/AccessibilityBundles/AccessibilitySettingsLoader.bundle/AccessibilitySettingsLoader (file not found). warning: No copy of AccessibilitySettingsLoader.bundle/AccessibilitySettingsLoader found locally, reading from memory on remote device.  This may slow down the debug session. I tried deleting the directory and having Xcode pull down the symbols off of the phone again. No success. I ended up copying the contents of the main SDK bundles into the one in my local library. Solved it. Not sure if this is the right solution but it works. I vaguely remember this happening last time Apple released a small point release. ...

December 5, 2011 · 1 min · Aaron

iOS Basics: nil vs NULL vs NSNull

Yes, there are three ways to represent a null value in Objective-C. NULL = Absence of a value with C-style pointers nil = Absence of value with Objective-C object variables NSNull = A nil boxed as an object for storage in a collection If you try adding nil to a NSDictionary or NSArray, you will find out it doesn't perform as expected. If you absolutely need to store a null value in a collection, you can use NSNull to represent the lack of a value. For example: ...

November 23, 2011 · 1 min · Aaron

iOS - Customize Table View Cells

Ever wanted to have alternated colors on your table view cells? If so, you've probably done something inside of cellForRowAtIndexPath and applied a background color to your cell there. Would you be surprised to know that's completely wrong? Yup. Wrong. WRONG WRONG WRONG. I didn't know this, but any styles applied to cells based on state or whatever should really be in willDisplayCell - NOT when you configure the cell itself! Per Apple's documentation for the Table View delegate - ...

July 7, 2011 · 1 min · Aaron

iOS - Pull App Version From Bundle Configuration

We all like to put the current application version number in an "about" screen somewhere for users to reference. It's a pain, however, to have to update that screen every time we do a release as well as the version in the target configuration for the bundle. So why not pull the version number from the bundle? Here's how to do it: NSString version = [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString)kCFBundleVersionKey]; NSString *version = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"]; ...

July 7, 2011 · 1 min · Aaron

Time Warner Cable Power / SNR Acceptable Values

I recently upgraded my Time Warner Cable RoadRunner service to the RoadRunner Extreme 30Mbps down / 5Mbps up service. Part of that service upgrade required a new modem to be installed and a technician to come out to validate line quality values. Turns out, I could have done a self install myself and saved the $30 but I wasn't given that option even after asking. In any case, while the technician was at my house I noticed on his computer screen power levels and signal to noise (SNR) levels for my modem. Right next to it were the acceptable ranges that Time Warner allows. I asked if I could take a picture of his screen, which he refused, but allowed me to record the values. Here I present them to you for your reference with my values in parenthesis. ...

July 5, 2011 · 2 min · Aaron

iTunes Connect - Invalid Binary

I spent the past week pulling out my hair trying to submit an update for Centare's EyeOnWeather application to iTunes Connect. I kept getting a reject from the system and all I got for an error message was "Invalid Binary." THANKS, THAT'S SOOPER. Eventually I ended up attempting to contact iTunes Connect Support for further details. I thought it might have been missing icons, malformed Info.plist, something. I haven't changed anything in the project drastically with how it builds, so I was at a loss. Turns out, I was picking the wrong provisioning profile in my setup. Man I felt stupid. Ends up that I'm not crazy - Apple's documentation on how to set up your project for building still only references Xcode 3. Awesome for the rest of the world using Xcode 4. Here are some tips I got from Apple iTunes Connect support for pulling in information to submit to their developer team: ...

May 26, 2011 · 2 min · Aaron

UITextView having rounded corners

I've been using a UITextView in an app and realized that it didn't have any rounded edges like the default behavior exhibited by the built-in iOS apps. For example in the calendar app, setting the Notes field shows: Inside of Apple's Human Interface guidelines it specifically states "A text view is a rounded rectangle of any height. A text view supports scrolling when the content is too large to fit inside its bounds." Adding a UITextView to a view shows square corners by default. So how the hell do you get rounded corners? Interface Builder doesn't show anything about corners. Seems like the only way to get this behavior is by doing the following in code: ...

April 26, 2011 · 1 min · Aaron

Xcode 4 - Problem submitting App with Static Library

I'm submitting a new version of my Migraine Diary App to the App Store and was running into problems with Xcode 4 giving me the following error: "[Your App Name] does not contain a single-bundle application or contains multiple products. Please select another archive, or adjust your scheme to create a single-bundle application." There is an issue or maybe it's an intentional design thing with Xcode 4 and how it handles statically built libraries being included in your project. I'm specifically using Core Plot and it's instruction set hasn't been updated for Xcode 4 yet. Here are the things I had to do to get Core Plot to bundle correctly with my App to submit it: ...

March 28, 2011 · 1 min · Aaron

iOS Basics - UINavigation Controller & Back Button Text

I've brought an old project out of the moth balls recently, the Migraine Diary application I wrote as part of my master's thesis. It was my first "real" iPhone app and I call tell I didn't know what I was doing entirely looking through the code. What this has forced me to do, however, is re-learn some of the basics of iOS development and of Apple design patterns. I have been spending some time back in the Apple developer documentation and will probably be posting some of the gotchas that tripped me up two years ago and I'm solving now with the better, more elegant solution. ...

March 20, 2011 · 2 min · Aaron