basically you have two ways how to earn money with a free app:
1, Ads - not very sustainable method which in addition bothers your players. You need really huge volume of daily impressions to monetize with ads. When you have some user base, you can implement to your game some crosspromotion mechanics via providers as Chartboost or PlayHaven and display ads for other games and earn some money this way. But in general, ads are only complementary monetization method. Another ad networks you can implement are iAds (Apple), AdMob (Google) or Tapjoy.
2, Freemium model - your game is free, but you offer bonus features, levels, consumables and other things through in-app purchases. The best performing games on App Store and Google Play today are freemium games - see for example Candy Crush Saga. Basically, you can play that game for free, but when you want some special boost or faster progress, you pay.
Setting up a proper virtual goods and game mechanics is a role for experienced game designer. And then you need to test monetization every day, implement new changes, then test again, then change, then test, etc. Modern mobile games are services with permanent updates - like every week or even twice a week.
If you are a new developer, try reading my new blog AppFreak, maybe you will find it interesting.