@lancelotavery gave the correct answer and I accepted it. I just managed to open the properties field and was returning to enter this answer when I saw it.
I enter this answer only to demonstrate that the desired behavior can be done without adding a jsonwriter.
As expected, this was one of those things that were very easy as soon as you know the trick.
Answer: you cannot put HTML in the description field.
HOWEVER, the facebook dialog accepts a parameter called "properties", which can be either a string or a string representation of another dictionary that can have exactly 2 values, TEXT and HREF. So by adding a line like this:
NSString* propString = @"{\"Download it free: \":{\"href\":\"http://bit.ly/12345\",\"text\":\"On iTunes AppStore\"}}";
and then pasting this pair into the parameters:
propString, @"properties",
everything works. So, the final editing of my code above looks something like this:
NSString *description = @"Wow, what a great app! " @"Download it free: " @"<a href=\"http://itunes.apple.com/us/app/myApp/id12345?mt=8\">" @"On iTunes AppStore." @"</a>" ; NSString* propString = @"{\"Download it free: \":{\"href\":\"http://bit.ly/12345\",\"text\":\"On iTunes AppStore\"}}"; // post FB dialog NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys: // @"This is what I say about myApp:", @"message", // user msg @"MyApp!", @"name", // Bold/blue name @"MyApp is cool!", @"caption", // 1st line description, @"description", // 2nd line @"http://itunes.apple.com/us/app/myApp/id12345?mt=8", @"link", @"http://farm6.static.flickr.com/5230/5576336654_075c2abcf9_s.jpg", @"picture", propString, @"properties", nil]; [facebook dialog: @"feed" andParams: params andDelegate: self];