May 18, 2013

Monitor and Debug iOS Apps With Charles Proxy

From Tobias Sjösten:

Charles is a web debugging proxy application. It acts as a middle man between your browser and your web application, where it can do a multitude of helpful services.

You can use it for debugging, where it shows you exactly what traffic is sent and received.

Charles is an HTTP proxy / HTTP monitor / Reverse Proxy that allows viewing all traffic between your system and the Internet, including requests, responses and the HTTP headers.

Real Time iOS Interface Inspection

TUAW covers SparkInspector, a tool for refining iOS app user interface elements.

Targeting devs looking to refine their user interfaces, it enables you to interactively tweak view properties like frames and layers.

…it provides a custom layer inspector — one that could (and, honestly should) inspire Apple. It enables you to update layer attributes like shadows and transforms, while viewing the results in real time.

Everything Apple Needs to Introduce at WWDC

Failure to introduce each and every one of these features and updates will result in another stock price plummet, calls for Tim Cook’s ouster and an infinite amount of comments on tech blogs decrying that Android is superior to Apple’s iOS.

After that introduction, Justin goes on to list 50 features. It is an impressive list, I’d be happy with just this:

The removal of the 100 device limit for iOS beta testing, or at a minimum deleting a device gives the slot back to you before your iOS developer program renewal date.

April 29, 2013

Perspective On The Two Minute Sellout Of WWDC 2013

Jason D. O’Grady has a few interesting thoughts regarding the nearly instantaneous sell out of WWDC 2013.

Jason’s article begins with the following:

Let’s take a look back.

In 2009, tickets sold out in one month
In 2010, tickets sold out in eight days
In 2011, tickets sold out in 12 hours
In 2012, tickets sold out in 2 hours
In 2013, tickets sold out in 2 minutes.

By extension, 2014 WWDC tickets will probably sell out in 2 seconds. And you’ll probably need to write a very clever script to actually procure tickets.

Love the comment about the script, I’m sure there are a few of us up to the task.

The article goes on to explore several ideas about ways to manage the process going forward. As we all know, there is no one perfect solution.

Regardless of how this pans out next time around, good news for all us iOS techies, we are clearly working on a platform that has tremendous interest. Good for business.

iOS Open Source: Facebook Chat Heads Look Alike

Matthias Brutella created the ChatHeads open source project to mimic the functionality found in the Facebook app, where avatars of your friends are shown in small bubbles. The bubbles can be dragged around on the screen and when pressed, a conversation is started.

In Matthias’s words: The goal of this project was to implement the interaction (drag and release, pressing) with the ChatHead bubbles as well as the animations.

The project includes some interesting code, including unique animations. Read the info on github where Matthias explains the math behind the bounce animation.

Download ChatHeads

You can download ChatHeads from github.

Enable Compiler Warnings To Your Advantage

Ole Begemann has written an excellent piece on how to get the most out of compiler warnings. This is information is worth digesting as it relates to understanding Xcode compiler warnings.

From Ole:

Compiler warnings are one of the most helpful tools for developers. The compiler can not only warn you about obvious mistakes (such as a method you forgot to implement); it also identifies many code patterns that, though syntactically correct, are potentially dangerous (like signed/unsigned conversion) or just plain wrong (such as mismatched format specifiers in a format string).

I agree with Ole, use the tools the compiler provides. When the compiler issues a warning, it warrants a closer look at your code.

And here’s a great tip from Ole’s post, you can disable warnings for section of code, where the rest of the file is not affected:

// Code tip from Ole Begemann
// http://oleb.net/blog/2013/04/compiler-warnings-for-objective-c-developers/
 
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wsign-compare"
 
int i = 100;
unsigned int u = 200;
if (i < u) {  // no warning
  ...
}
 
#pragma clang diagnostic pop

iOS Code Signing Giving You A Headache?

Check out the Apple document Troubleshooting Code Signing On iOS. If you’ve ever been down the road of trying to get anything beyond Xcode signing to cooperate (e.g. code signing from the command line), no doubt you’ll fully appreciate the information included in this Apple technical note.

From the basics of code signing to interpreting error messages, there’s something here for most anyone who has run into a code signing issue.

April 28, 2013

Mac OS X Tip: Enable Tab Key On All Dialog Box Options

Mac Tips For iOS Developers

You know the drill to get your new Mac (or iPhone, or iPad…) configured to work the way you do: install everything you can think of, tinker, install some more, tinker, repeat…

When it’s time to get some work done that’s when you run into the subtle little things you forgot you adjusted the last time you setup a new machine.

Here’s one such example. By default, Mac OS X dialog boxes do not allow you to use the tab key to move between all the options in said dialog. And just why that is, is beyond me.
More...

One More Reason The iPhone Rules

We’ve become accustomed to the iPhone camera in our everyday life, never giving it a second thought.