Faits: A. A l'issue d'une instruction qui s'est déroulée exclusivement en français, l'Office de l'assurance-invalidité du canton de Fribourg a, par décision du 14 mai 2008, rejeté la demande de prestations déposée le 30 juin 2006 par F._. Par mémoire rédigé en allemand, l'assurée a formé le 17 juin 2008 un recours devant la Cour des assurances sociales du Tribunal cantonal du canton de Fribourg. Dans le cadre de l'échange d'écritures, l'office AI a demandé à ce que la procédure se déroule dans la langue de la décision contestée et sollicité la traduction française du mémoire de recours. Interpellée sur la question de la langue de la procédure, l'assurée a requis que celle-ci se poursuive en allemand. Par ordonnance du 2 décembre 2008, le Tribunal cantonal a constaté que la procédure devait se dérouler en français et refusé de déroger aux règles du code fribourgeois de procédure et de juridiction administrative. Il a imparti à l'assurée un délai de 30 jours à compter de l'entrée en force de l'ordonnance pour traduire son mémoire de recours en français, en l'avertissant qu'à défaut, il ne serait pas pris en considération. L'assurée n'a pas donné suite à cette invitation. Estimant que le recours était entaché d'un vice de forme, le Tribunal cantonal l'a déclaré irrecevable par jugement du 4 mai 2009. B. F._ interjette un recours en matière de droit public contre ce jugement dont elle demande l'annulation. Elle conclut au renvoi de la cause à la Cour des assurances sociales du Tribunal cantonal du canton de Fribourg, afin que celle-ci entre en matière et se prononce sur le fond du litige. L'office AI conclut au rejet du recours, tandis que l'Office fédéral des assurances sociales a renoncé à se déterminer. Invité par le Juge instructeur à se prononcer sur le recours, la Cour des assurances sociales du Tribunal cantonal du canton de Fribourg a déposé des observations. Dans sa réplique du 27 novembre 2009, la recourante a confirmé ses conclusions.