Faits:
A. Entre le 31 janvier et le 3 octobre 2008, A._ a fait l'objet de plus de vingt rapports de contravention pour mendicité et exercice d'une profession ambulante sans s'être acquittée de la taxe journalière idoine. Ces contraventions lui ont été notifiées par publications dans la Feuille d'avis officielle du canton de Genève. Le 3 octobre 2008, la police a saisi sur la prénommée les sommes de 8 fr. et 7 euros.
Le 29 novembre 2011, A._ a demandé au Service des contraventions du canton de Genève (ci-après: le Service des contraventions) de lui restituer un montant de 2'588 fr., qui aurait été confisqué par des gendarmes aux fins d'acquitter des amendes qui ne lui auraient pas été notifiées. Le 7 février 2012, ce service lui a demandé de lui communiquer les références des amendes en question et de lui faire parvenir une copie des quittances de saisies. A._ a répondu que les amendes n'avaient jamais été notifiées et que les doubles des quittances demandées devaient figurer dans son dossier. Elle a donc réitéré sa requête, la dernière fois le 8 mars 2012. Le 14 mars 2012, le Service des contraventions l'a informée du fait que son dossier était transmis à son service juridique. Le 23 avril 2012, il a répondu à la prénommée qu'il n'envisageait pas la restitution des sommes prélevées, en se référant à une "décision matérielle" qualifiée de valable et en précisant qu'il allait procéder à "une nouvelle notification".
B. Dans l'intervalle, par acte du 12 avril 2012, A._ avait formé un recours pour déni de justice auprès de la Chambre pénale de recours de la Cour de justice du canton de Genève (ci-après: la Cour de justice). Celle-ci a statué par arrêt du 15 mai 2012, en déclarant le recours irrecevable. Elle a d'abord relevé que le recours était devenu sans objet dès lors qu'il visait à obtenir une décision formelle qui a finalement été rendue le 23 avril 2012. Quant à la décision portant sur la saisie alléguée de 2'588 fr., elle ne figurait pas au dossier. A teneur du courrier du 23 avril 2012, il semblait toutefois que le Service des contraventions ait l'intention de procéder à une nouvelle notification de cette décision, que la recourante pourrait contester en temps voulu. La Cour de justice a encore fait des considérations sur le fond, en relevant que le séquestre semblait a priori conforme à l'art. 268 du code de procédure pénale suisse (CPP; RS 312.0).
C. Agissant par la voie du recours en matière pénale, A._ demande au Tribunal fédéral d'annuler cet arrêt, de constater le déni de justice du Service des contraventions et d'ordonner audit service de rendre une décision formelle sur sa requête du 29 novembre 2011, subsidiairement de renvoyer la cause à l'autorité cantonale pour nouvelle décision. Invoquant les art. 29 Cst. et 6 CEDH, elle se plaint d'un déni de justice en raison d'un retard injustifié à statuer sur sa requête. Elle sollicite en outre l'octroi de l'assistance judiciaire. La Cour de justice et le Service des contraventions ont présenté des observations, concluant à l'irrecevabilité du recours, subsidiairement à son rejet. A._ a formulé des observations complémentaires.

Considérant en droit:
1. Le recours en matière pénale, au sens de l'<ref-law>, est ouvert contre une décision de saisie prise au cours de la procédure pénale. La recourante a le statut d'accusée dans le cadre des procédures ayant conduit aux saisies alléguées et elle a un intérêt juridique à obtenir l'annulation de l'arrêt attaqué, de sorte que la qualité pour recourir doit lui être reconnue (<ref-law>). La décision litigieuse revêt en outre un caractère final (<ref-law>) dans la mesure où elle oppose une fin de non recevoir à la recourante, mettant ainsi un terme à la procédure initiée pour un prétendu déni de justice. On peut enfin admettre que le recours conserve un objet malgré la réponse du Service des contraventions du 23 avril 2012, la recourante alléguant que ce courrier ne statue pas sur sa requête initiale. Il y a donc lieu d'entrer en matière sur le recours.
2. L'art. 29 al. 1 Cst. garantit notamment à toute personne, dans une procédure judiciaire ou administrative, le droit à ce que sa cause soit traitée dans un délai raisonnable. L'art. 6 par. 1 CEDH n'a pas de portée plus étendue sur ce point (<ref-ruling> consid. 4 p. 325 et la jurisprudence citée). Ces dispositions consacrent le principe de la célérité, ou, en d'autres termes, prohibent le retard injustifié à statuer. Viole la garantie ainsi accordée, l'autorité qui ne rend pas une décision qu'il lui incombe de prendre dans le délai prescrit par la loi ou dans le délai que la nature de l'affaire et les circonstances font apparaître comme raisonnable (<ref-ruling> consid. 5.1 p. 331 s.; <ref-ruling> consid. 5 p. 323 ss et les références). Pour déterminer la durée du délai raisonnable, il y a lieu de se fonder sur des éléments objectifs. Doivent notamment être pris en compte le degré de complexité de l'affaire, l'enjeu que revêt le litige pour l'intéressé ainsi que le comportement de ce dernier et des autorités compétentes. L'attitude de l'intéressé s'apprécie avec moins de rigueur en procédure pénale et administrative qu'en procédure civile; celui-ci doit néanmoins entreprendre ce qui est en son pouvoir pour que l'autorité fasse diligence. Par ailleurs, on ne saurait reprocher à l'autorité quelques temps morts, qui sont inévitables dans une procédure. Cependant, une organisation judiciaire déficiente ou une surcharge structurelle ne peuvent justifier la lenteur excessive d'une procédure, l'Etat ayant à organiser ses juridictions de manière à garantir aux citoyens une administration de la justice conforme au droit constitutionnel (<ref-ruling> consid. 5.2 p. 332 et les références citées).
3. En l'occurrence, l'objet de la requête déposée par la recourante le 29 novembre 2011 était la restitution d'un montant de 2'588 fr., qui aurait été confisqué par des gendarmes aux fins d'acquitter des amendes qui n'auraient pas été notifiées. Le Service des contraventions a donné suite à cette requête le 7 février 2012, en sollicitant en vain des renseignements complémentaires de la part de la recourante, qui s'est bornée à réclamer la restitution du montant prétendument confisqué sans donner davantage d'informations. Il a encore répondu à l'intéressée le 14 mars 2012, en l'informant que le dossier était transmis à son service juridique, et le 23 avril 2012, en relevant qu'il n'envisageait pas de restituer le montant réclamé et qu'il allait procéder à une "nouvelle notification".
On peine à discerner l'objet exact de cette nouvelle notification et on ignore si le service concerné admet que le montant allégué a bien été saisi. De plus, il est vrai que plusieurs mois se sont écoulés depuis la requête du 29 novembre 2011 et que l'intéressée n'a pas toujours obtenu des réponses rapides à ses courriers. Cette situation s'explique toutefois par le caractère vague de la requête formulée par la recourante et par le manque de collaboration de celle-ci. En effet, dans la mesure où l'intéressée est capable de chiffrer précisément ses prétentions, on peut attendre d'elle qu'elle explique sur quels éléments elle se fonde et qu'elle facilite la tâche du service concerné en étayant sa demande de remboursement. En omettant de le faire, elle contribue elle-même à rallonger la procédure. Elle doit par ailleurs s'accommoder de certains temps morts inévitables et elle ne saurait exiger que sa cause soit traitée en priorité. Il convient néanmoins d'inviter le Service des contraventions à statuer à bref délai, pour le cas où il ne l'aurait pas encore fait. Quoi qu'il en soit, il y a lieu de constater qu'à ce stade l'autorité n'a pas manqué à son devoir de diligence et que les art. 29 al. 1 Cst. et 6 par. 1 CEDH n'ont pas été violés.
4. Manifestement mal fondé, le recours doit être rejeté. Il n'y a pas lieu d'accorder l'assistance judiciaire, dès lors que les conclusions du recours apparaissaient d'emblée vouées à l'échec (<ref-law>). Compte tenu de la situation de la recourante et de la nature du litige, il se justifie néanmoins de statuer sans frais (<ref-law>).

Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. La requête d'assistance judiciaire est rejetée.
3. Il n'est pas perçu de frais judiciaires.
4. Le présent arrêt est communiqué à la mandataire de la recourante, au Service des contraventions et à la Cour de justice du canton de Genève, Chambre pénale de recours.
Lausanne, le 19 juillet 2012
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Fonjallaz
Le Greffier: Rittener