Posts Tagged 'Programming'

Source: FJSTransitionController

Here’s a possibly handy piece of source from The Flying Jalapeño Lives — FJSTransitionController! Which is:

Well, FJSTC is a custom “top level view controller” to be used as a replacement for UINavigationControllers and UITabBarControllers. It handles transitions between view controllers, but with more flexibility.

Instead of managing a stack or an array of view controllers, FJSTC manages a Dictionary. You can associate VCs with keys and load them arbitrarily…

That would’ve been kinda handy, well last week actually, when we were putting a bunch (thirty-one, to be exact) of inconsistently hierarchical views into a navigation controller and winding up with hints of inelegance whilst doing so. But hey, it’s working-ish now, although we might consider retrofitting it, since FJSTC includes a few other nifty features like FTUtils-provided animations. If that sounds interesting, source on github and project on codaset!

Continue Reading →

Library: ASIHTTPRequest

We’re not quite sure how we managed to overlook this so far, but if you’re outgrowing NSConnection and figure that you need something CFNetwork based, there is an excellent library called ASIHTTPRequest that wraps it nicely, is compatible with iPhone and desktop both, and has plenty of features, some of the more nifty being:

Yes, that is indeed a comprehensive feature list. Source on github; group on Google; and Lighthouse bug base even. And BSD-licensed to boot. Why, it’s like an awesome sundae topped with awesome sauce!

[UPDATE: But ho! The very next day, we stumble across a purported good reason to NOT use it --

I'm sorry, I have to speak out against the ASIHTTP library. It's mostly quite good, but because it doesn't sit on the NSURL* classes it ignores any global proxy settings. This is particularly an issue in a VPN environment, but it comes up in other situations as well. Unless you're willing to deal with wonky support issues (and bad reviews as a result), don't use it.

Hmmm. That does sound like a worry ... but we could swear that CFNetwork can use CFProxySupport to get the global proxy settings, because we've done that. On the desktop, mind you. Perhaps CFProxySupport is not available/functional on the iPhone? Or this fellow is just making stuff up? If you have some actual iPhone experience to know one way or the other, please share!]

Continue Reading →

Monetization: .app/ads

Well, this looks like a remarkable step up in monetization functionality for the penurious iPhone app developer: the (still in beta) OPEN! and FREE! .app/ads “ad management platform for iPhone developers”. And what is an “ad management platform” exactly?

.app/ads gives you complete freedom over the ad space within your apps by providing an open and free ad management platform. There are a lot of revenue opportunities for app developers today, and you can count on even more direct ad and ad network opportunities being available in the future. Given the turnaround times on App Store approvals, locking your app into using just one ad network, or even just one ad network aggregator, could cost you substantial ad revenues. Take advantage of all the opportunities available to you now and in the future with .app/ads. You can easily manage and run third-party ad network and aggregator SDKs (AdMob, Mobclix, TapJoy, AdWhirl, et al.), direct ads, house ads, content (such as Twitter and RSS feeds), in-app purchases, and developer-direct marketplace offers from just one platform. Use one dashboard to manage your ad space and optimize what is going to make you the most money while maximizing your users’ experiences.

That does sound exceedingly comprehensive, indeed. We had been intrigued by the Flurry AppCircle idea, but since they’ve shown a distinct absence of willingness to answer any emails sent to them, we’ve kinda cooled on the idea of relying on them for any business purpose. [UPDATE: Why look at that, the AppCircle SDK arrived in our mailbox first thing the very next morning. How coincidental!] And these guys certainly do a great deal more, if the non-beta version lives up to the advertising (heh) here. Read more about them at TUAW and at TechCrunch.

Indeed, it would be an interesting exercise to see just how many of the ad providers listed in our increasingly disjointed advertising/analytics collection one could fit into this platform…

Continue Reading →

APNS Update

So we’re just about to the point in That Big Project that’s been chugging along here where the server’s message delivery system moves over to an APNS basis, which will no doubt be very interesting indeed. So we’ve been looking around for some help with that.

The scale and immediacy of messaging envisioned makes reliance on third-party services potentially problematic for this project, so those are out. (Although as an aside, in the iLime vs. Urban Airship competition for your third party APNS needs, last fall we did an exploratory APNS-based project and picked iLime because it looked simpler at first glance and fit in with our Google App Engine prototype nicely, and had no complaints about how that worked out.)

So, since the last time we noticed an APNS roundup, anything new out there on the roll-your-own side of the things? Why yes, yes there is indeed. Here’s some more resources that look interesting:

Programming Apple Push Notification Services

A comprehensive walkthrough of how to implement the client side and “test” with an OS X-hosted faux server.


Open source PHP/MySQL application, looks very comprehensively documented indeed.

ApnsPHP: Apple Push Notification & Feedback Provider

Another PHP application.

pyapns — An APNS provider for your app

XML-RPC based with Python and Ruby native APIs.


Java? People still use that? Well, if that’s you, check this out.

[UPDATE: When we did our server, the pem/passphrase problem was the biggest hurdle: this post lays out nicely how to sort that!]

And hey, if any of you out there have anything good or bad to say about these various bits and pieces out there for the DIY APNS service writer, or if there’s anything of potential note we’ve overlooked thus far, please share!


mattt / rack-push-notification: “A Rack-mountable webservice for managing push notifications.”

Apple Push Notifications with Mule Cloud Connect

How to build an Apple Push Notification provider server (tutorial)

Sending Apple Push notifications in rails with Redis and apn_sender

Apple Push Notification Service Gem

Open Source Easy To Use Multiple App iOS Push Notification Provider (Python and Twisted Based)

Apple Push Notification Services in iOS 6 Tutorial: Part 1/2 and Part 2/2

Easy To Use GUI Tool For Debugging iOS Push Notifications

Continue Reading →

Platform: Z2Live

So this email showed up on the iPhoneSDK list today:

Hi Developers,

We’re excited to announce the availability of the Z2Live Multiplayer SDK for iPhone, iPad and iPod touch.


  • Multiplayer networking that works on WiFi, Edge and 3G
  • Voice Chat between players
  • Friend Invitations via Push Notification
  • GKSession API compatibility to make porting Bluetooth games to the Internet easier
  • No need for a game server (the devices connect directly to each other)

Please follow this link to begin building your next generation multiplayer games and set yourself apart from the pack:

Thank you and great gaming!

And why yes, if you follow that link, particularly to the features page here, it does look like quite the platform indeed for building your multiplayer games on. And as our biggest project right now (actually, our biggest iPhone project yet by a good bit) is putting together a multiplayer game, we’re keenly aware of just how time-consuming this stuff is to put together on your own.

Oddly enough, we do not see at first glance any hint as to pricing we are so blind that we completely overlooked the quite blatantly obvious and straightforward pricing on the terms of use page. And that would be: 30 cents per user per year. So you’re probably not interested unless the features are offered as part of a subscription package. And how well will that work? Well, we’ll have an idea sooner or later, as that multiplayer game we mentioned above is indeed meant to be monetized in precisely that fashion. It’s a pretty seriously server-centric the deal that wouldn’t be too appropriate for Z2Live anyways.

But hey, if you are putting together something that could use it, you probably want to check it out for a build or buy decision. And if you do, let us know what you think, k?

Continue Reading →

Source: FTUtils

Oooh, here’s some cool stuff: a bunch of nifty canned CoreAnimation routines called FTUtils:

The code in FTUtils is common utility code extracted from Free Time Studios iPhone projects. Currently, there is only one primary utility (FTAnimation) and some simple preprocessor macros. Some unit tests exist for the code, but more are needed.

OK, it could be described more enthusiastically, along the lines of “DOZENS OF TEH AWESOME CORE ANIMATION FX!1!one!”

But hey, if you want that little extra bit of groovy animation polish in your app — and who, we ask rhetorically, doesn’t? — it’s definitely worth checking out: see the video at the above link or just grab the source off github and run the demo!

h/t: The Flying Jalapeño Lives via iPhoneFlow!

Continue Reading →

Cocoa Architecture

Here’s a post worth reading over at M Cubed on comparative architectural strategies in Cocoa:

A while back I wrote a post on how I was pushing towards making my apps much more manageable, by separating my once monolithic app delegates and nibs into various view and window controllers. Yesterday Justin Williams wrote a post on his blog about Getting Started with Core Data, Bindings and NSViewController

Justin’s post included a project he’d worked on, implementing core data tutorial application from CocoaDevCentral using several window and view controllers rather than one monolithic class and nib. The way he built his version was quite interesting, as it was differently to how I would have approached the task. As it was a relatively simple project, I thought it would be of benefit to some to provide an alternate way of building the same app. I don’t think there has been two Cocoa developers giving two different ways of implementing an entire app before…

No, if there has been, we’ve missed it. We’re always on the lookout for insightful articles about the use of Core Data, and this quite thoroughly qualifies on that count, but even if that’s not one of your main interests there’s still a lot of insight to be gained here!

Continue Reading →

XML Parsing

If you’ve got any XML-parsing tasks on deck, here is a most exhaustively thorough comparison of your options:

How To Chose The Best XML Parser for Your iPhone Project

We hadn’t even heard of all of these, actually. So far we’ve only needed to parse data feeds in our iPhone projects, so we’ve just used the SDK’s NSXMLParser for trivial jobs, and for heavy lifting the TBXML parser we mentioned here, which does indeed seem to come out well in this comparison too; but if we ever run into a situation where editability is required, from a quick read through here looks like GDataXML is a solid frontrunner for that. But options are always nice!


RaptureXML is a new attempt at making usage easy!

Continue Reading →

Website Snippets

Here from the awesomely-named Cats Who Code blog is an article of 10+ Useful Code Snippets To Develop IPhone Friendly Websites — some of which are interesting for use in your UIWebView-presented embedded content as well, looks like:

  • Detect iPhones and iPods using Javascript
  • Detect iPhones and iPods using PHP
  • Set iPhone width as the viewport
  • Insert an iPhone specific icon
  • Prevent Safari from adjusting text size on rotate
  • Detect iPhone orientation
  • Apply CSS styles to iPhones/iPods only
  • Automatically re-size images for iPhones
  • Hide toolbar by default
  • Make use of special links
  • Simulate :hover pseudo class

The blog looks pretty interesting in general if you’re into HTML, WordPress, etc. at all. Which, yeah, we will be one of these days, at least to find a theme that’s actually readable to save our Gracious Readers’ eyes. Just as soon as things slow down just a smidgen. 2018 is looking not bad. So far…

Continue Reading →

Tip: CodeSense FAIL

Hey, you noticed in your new Xcode projects recently that CodeSense is only working for your code, not SDK frameworks? And haven’t been able to figure out why? Yeah, us too. Turns out the problem is turning on analysis — aka “RUN_CLANG_STATIC_ANALYZER” — in your base .xcconfig, as noted here on OpenRadar:


For any project of mine in which RUN_CLANG_STATIC_ANALYZER is set to YES, CodeSense symbol lookup fails for non-explicitly-imported symbols (i.e. Foundation/UIKit classes and methods, etc.). Because the CodeSense index fails to build, code completion and option-double-click documentation searches also fail.

Ah, so that’s the trick! And why yes, commenting that line out of our base config file and clicking ‘Rebuild Code Sense’ in the project info has indeed given us our SDK class option-click back. How nice!

However, we really really don’t want to do without the analyzer, as it’s been pretty darn useful in identifying subtle oversights. And in the occasional case where it misidentifies leaks and the like, we’ve tended to adopt the attitude that “well, if the analyzer can’t figure out how this works, the chances are pretty good nobody tasked with maintaining this in future will be able to either”. And in our 20+ years at this programming thing, we have increasingly come to the conclusion that in virtually all cases the only metric worth evaluating code quality by — after “correctness of result”, of course — is not its efficiency, not its cleverness, not its elegance, but its maintainability.

So we’re now trying the workaround of enabling clang only in the debug configuration and leaving it off for the AdHoc/AppStore configurations, and so far that appears to indeed be working and providing us both CodeSense and analysis while developing. But if any of you have a better solution, please share!

Continue Reading →
Page 62 of 89 «...3040506061626364...»