Use the 3.0 iPhone SDK to deploy to older versions (like 2.2.1)

I’m integrating Pinch Media’s analytics and OpenFeint’s social gaming tools into my latest iPhone app. I just nabbed r64 of the Pinch library and dropped it into my app. When I compiled, I received two odd errors:

“___restore_vfp_d8_d15_regs”, referenced from:
[...]
“___save_vfp_d8_d15_regs”, referenced from:
[...]

The [...] was a big list of objects tied to the r64 library. So, I dropped a note to the folks at Pinch and received this great reply.

- You want to build an app that will work on iPhone OS 2.2 devices.
- You’re switching Base SDK to do so

According to Apple (no link handy, but I heard this all the time at
WWDC last week), you should do the following:

- Set Base SDK (for all configurations) to iPhone Device 3.0
- Set iPhone OS Deployment Target to iPhone OS 2.2 (or whichever you
like)

(You’ll find these settings in the Build tab if you Get Info on your
project (the top item in the Groups & Files pane in Xcode)

The issue is that they’re using a newer compiler in the 3.0 SDK, and
we’re going with their Best Practices (use 3.0 SDK, choose a
lower-version Target if you wish), and there are some features of the
compiler (which generates code that works all the way down to 2.0)
that are only available with the 3.0 release.

I’m sharing it here because it applies to pretty much any app.

** Also, if you are developing with OpenFeint make sure you grab the 6.16 release. This is the first release that will compile properly with the 3.0SDK.

Share and Enjoy:
  • Digg
  • del.icio.us
  • Reddit
  • Slashdot
  • Technorati
  • DZone
  • NewsVine
  • StumbleUpon
  • E-mail this story to a friend!
  • Sphinn

Undefined _weak_escape(), Redirection, and the WordPress 2.8 Upgrade

If you upgraded to WordPress 2.8 and ended up with an error like this…


Fatal error: Call to undefined method WordPress_Module::_weak_escape() in ../wp-includes/wp-db.php

Chances are you have the Redirection plugin. Anything prior to version 2.1.14 will throw this error when you upgrade. Of course, it would have been nice if you upgraded the plugin prior to upgrading WordPress, but you didn’t do that… did you?

I didn’t either. :)

No worries. The solution is simple enough:

  1. Rename the /wp-content/plugins/redirection directory to /wp-content/plugins/redirection-bad (or something like that) – This will cause WordPress to disable the plugin.
  2. You should be able to log into the WP admin now.
  3. Go to Plugins in the WP admin and confirm that the Redirection plugin is disabled.
  4. Change the /wp-content/plugins/redirection-bad back to /wp-content/plugins/redirection.
  5. Refresh the Plugins page in the WP admin.
  6. You should be able to use the automatic upgrade now on the Redirection plugin.

If you have other blogs to upgrade, try upgrading the plugin first… unless you like this sort of thing. :)

Share and Enjoy:
  • Digg
  • del.icio.us
  • Reddit
  • Slashdot
  • Technorati
  • DZone
  • NewsVine
  • StumbleUpon
  • E-mail this story to a friend!
  • Sphinn

Using Amazon’s MP3 Service Instead of iTunes Store

Just a week ago, I installed Amazon’s MP3 Downloader. This program connects to Amazon’s library of MP3 digital downloads (both single tracks and full albums) and downloads directly to iTunes. By using this program, you can avoid the current DRM in the Apple iTunes Store and avoid the future price increase Apple and the music labels are planning for April 2009 on iTunes.

April iTunes Price Increase

Price increase, did I say? Well, sort of. According to this press release, iTunes audio will all be DRM free in April but instead of $0.99 there will be a sliding scale based on some magical formula worked out between Apple and the records labels:

“We are thrilled to be able to offer our iTunes customers DRM-free iTunes Plus songs in high quality audio and our iPhone 3G customers the ability to download music from iTunes anytime, anywhere over their 3G network at the same price as downloading to your computer or via Wi-Fi,” said Steve Jobs, Apple’s CEO. “And in April, based on what the music labels charge Apple, songs on iTunes will be available at one of three price points—69 cents, 99 cents and $1.29—with many more songs priced at 69 cents than $1.29.”

Back to the Amazon Downloader

Ok, well, who knows what this really means. I guess we’ll find out in April. In any case, I tried the Amazon MP3 Downloader on a whim and I liked it.

The Amazon MP3 Downloader is a small application for OSX and Windows that will tie Amazon music downloads into iTunes Library or the Windows Media Player.

I tried out the program on the Mac, and it was simple:

1. Install the Amazon MP3 Downloader.
2. Select music from the Amazon library of MP3 digital downloads.
3. Downloads begin automatically, triggering the application to load.
4. Enjoy… Really, that’s it. To prove it, I created a little video of me buying a song (go full-screen for a better view of the screenshots):

As you can see, the progress of your downloads appears in the application. You can even pause and resume if you need to. Oh, and I still suck at making screencasts but maybe I’ll get better with practice – or not.

Downloaded files end up in a folder called “Amazon MP3″ (in the Music folder) and you can also have files automatically loaded into the iTunes library. Both options are turned on by default (see screenshot below).

amazon_mp3_prefs.jpg

Share and Enjoy:
  • Digg
  • del.icio.us
  • Reddit
  • Slashdot
  • Technorati
  • DZone
  • NewsVine
  • StumbleUpon
  • E-mail this story to a friend!
  • Sphinn

How to Use Google Docs to Create Polls and Surveys

Sometimes a joke leads to something useful… At least that’s the excuse I’m using to justify the time I’ve spent playing around with Twitter, Google Docs, and ScreenFlow while I’m on vacation. :)

180px-Graham_Chapman_Colonel.jpg
“Right! Now let’s have a proper screencast!”

You see, yesterday, I ran a little survey on Awesome Mustache to gauge the reaction of the Twitterverse to Chris Brogan’s recent face shaving. Admittedly, this is a silly reason to run a survey but it was better than musing about “Twitter Authority.”

As it was a silly thing, I wasn’t going to pay a nickel to collect the data. I didn’t want to install any software either. So, I decided to use the Forms feature of Google Docs.

When you create a form in Google Docs, you can embed the form in a web page, email it, or use the standalone page to collect responses. Responses are stored in a Google Docs spreadsheet and there is also a nice little summary report available complete with charts. This was perfect for my needs.

Here is the form embedded in a post on Awesome Mustache and here are the survey results, sliced up in my follow-up post.

After this went out, I received a few questions about creating the survey, so I whipped up this little screencast demo using ScreenFlow on my Mac. Sorry if it isn’t the most polished of demos but I think you’ll find everything you need to jump into Google Docs Forms and make your own poll or survey:

*Go full screen on this so that you can see the menu choices and such.

Share and Enjoy:
  • Digg
  • del.icio.us
  • Reddit
  • Slashdot
  • Technorati
  • DZone
  • NewsVine
  • StumbleUpon
  • E-mail this story to a friend!
  • Sphinn

Swapping FeedBurner for Google’s AdSense Feedproxy

Since I’m a geek, I have to try out every new software package or service that comes along, so migrating from FeedBurner to Google’s Feedproxy was more curiosity than necessity. However, I suspect that everyone will need to move eventually.

The Feedproxy service is basically a clone of FeedBurner that hooks directly into AdSense. This allows the site owner to theoretically monetize a feed. It theoretical of course because someone actually has to click on the ads. In addition to AdSense integration, Feedproxy also implements the Google Analytics charting engine so the reports look better. Aside from that, it’s identical to FeedBurner… for now.

As I started down the path, I came across this brief article. The process was straightforward enough, but I thought I’d expand the step-by-step instructions, add a bit about AdSense setup, and then give you my initial impressions of the service:

Step-by-Step Instructions

1. Log into AdSense.
2. Select the AdSense Setup tab
3. Choose AdSense for Feeds from the list of available services

adsense_for_feeds.jpg

4. Way down at the bottom of the page, hit the link for “Move FeedBurner feeds to your Google Account”

add_feeds.jpg

5. You’ll be asked to log into FeedBurner and then presented with the list of all your feeds. I didn’t see a way to opt out of moving some feeds so I just went ahead and moved all the feeds on my account.
6. Wait. ;)

7. Once the feeds are moved, Google gives you a confirmation. At the bottom of page, your feeds will appear along with links to the new feed URLs. Do not leave this page.
8. Open a new tab in your browser and log into your Wordpress (or other blog tool admin).
9. I use the FeedSmith plugin so updating the URL for the feed was as simple as copying the link from the page mentioned at step #7 and pasting it into Settings->FeedBurner.
10. Rinse and Repeat for Remaining Blogs

When you’re done, move onto setting up your AdSense ads…

AdSense Integration with Feeds

One of the most compelling reasons is the integration with AdSense. AdSense integration provides you with a simple, automatic way to monetize your feed. Ultimately, if you have enough subscribers, you may want to sell ads in a different way but for the beginner or small player AdSense is the quick and easy way to go.

After Google migrates your feed, you can set up AdSense units tied to individual feeds or across all the sites you manage. Standard AdSense options for type and color should be familiar to AdSense publishers, with a special twist added for frequency, post-length, and position.

create_ad_unit.jpg

Frequency – This option allows you to define how often ads show up in the stream. You can choose to show ads after each feed item or skip to the 2nd, 3rd, or 4th item. I chose to show the ad after every second item.

Post-Length – Allow you to limit ads so that only appear after posts of a certain word count. I suppose this would be useful if you had many small posts and didn’t want to clutter your feed.

Position – As you might expect, this allows you to decide where the ad shows up in relationship to the feed item. (top or bottom)

Don’t get antsy after you hit SAVE. Google says it takes about 10 minutes for the ads to show up. Took a little longer for me.

Initial Impressions

Instead of logging into feedburner.com, you log into http://feedburner.google.com. Everything basically looks the same (for now). However, the chart looks like a Google Analytics chart. I’ve included a sample below from one of my sites:

feed_stats.jpg

One of the reasons I made this switch is that I was hoping to have more accurate stats. I can’t tell you if the new service is better at updating or not, but I can say that the reports look better.

I also make use of FeedBurner’s email forms. I’m glad to say that I didn’t need to change anything here. The forms work as they should, confirmation text was retained from FeedBurner too. Hooray!

I’ll post a follow-up in a few days to let you all know if the reliability improved.

Share and Enjoy:
  • Digg
  • del.icio.us
  • Reddit
  • Slashdot
  • Technorati
  • DZone
  • NewsVine
  • StumbleUpon
  • E-mail this story to a friend!
  • Sphinn