Microedition i RMS - problem

0

Witam
Chcialem zaimplementowac na potrzeby pisanej przeze mnie gry mechanizm zapisywania najlepszych wynikow na kazdym etapie gry. Etapow jest 9, wiec potrzebuje utworzyc 9 rekordow przy pomocy RMS.

No i tu mam dylemat. Zrobiony przeze mnie mechanizm dziala nastepujaco:

Tworzony jest obiekt zapisujacy punktacje, konstruktor wywoluje metode init(), ktora sprawdza czy lista rekordow jest pusta. Jezeli tak - tworzy 9 nowy rekordow (1..9).
Po zakonczonej grze wywoluje tenze mechanizm i probuje zapisac wynik dla danego poziomu (1..9, poziom = nr rekordu - to jest jasne chyba).
Mechanizm sprawdza czy padl rekord i jezeli tak zapisuje nowy wynik do bazy.

Wolalbym rozwiazac to tak, ze pomijam w konstruktorze sprawdzanie rekordow i przy probie zapisu wyniku jezeli zwroci mi wyjatek ze rekord nie istnieje to go tworze. Ale funkcja addRecord niestety dodaje rekord o najwiekszym, wolnym ID, wiec nic z tego nie wychodzi.

Moze ktos ma koncepcje jak to rozwiazac?

Kolejna sprawa, to zapisuje dane przez RMS w postaci tablicy bajtow, wynik int przeksztalcam na String, a ze String tworze tablice bajtow - nie da sie prosciej? Pozniej po otrzymaniu tablicy bajtow wrzucam je do Stringa, a pozniej ze Stringa do Integer, i z Integer do int. Uff zamotane... Nie da sie prosciej?

I jeszcze jedno pytanie. To moja 1 doswiadczenie z RMS. Baza usuwa sie z telefonu automatycznie wraz z usunieciem midletu, czy trzeba implementowac jakis mechanizm usuwajacy utworzone dane?

Pozdrawiam

0

Przy pierwszym uruchomieniu stwórz odpowiednią ilość rekordów. Następne uruchomienia nie będą miały już tego typu problemów.

1 użytkowników online, w tym zalogowanych: 0, gości: 1