View Full Version : [j2me]problema cattura immagine
DesmoColo
26-09-2007, 10:37
Ho implementato un player con j2me basandomi sulle istruzioni di un tutorial
http://java.html.it/guide/lezione/3178/visualizza-e-salva-foto-e-immagini/
Per testarlo meglio ha installato il jar dell'applicazione sul mio telefonino e ho riscontrato il seguente problema con il metodo "getSnapShot" della classe VideoControl: Quando premo OK, l'applicazione dovrebbe scattare la foto (esempio, un quadro sul muro) e poi visualizzarla. Invece accade che alla pressione di invio, viene visualizzato il messaggio che avverte, che l'applicazione sta cercando di avviare il video e chiede l'autorizzazione a procedere. Una volta dato l'ok, allora viene catturato lo snapshot... però visualizzo il muro perchè mi sono spostato!
Come posso aggirare il problema?
isAlreadyInUse
26-09-2007, 10:38
Semplice non spostarti :D
isAlreadyInUse
26-09-2007, 10:46
Comunque per motivi di sicurezza in J2ME viene chiesta l'autorizzazione per alcune operazioni, tipo la connessione a internet o come nel tuo caso la foto, a meno che non sia un aplicazione firmata.
Per firamre l'applicazione devi :
- Inserire una lista di permessi per le classi che vuoi autorizzare nel manifest del Jad
- Generarti una key
- Firmare il jad
DesmoColo
26-09-2007, 16:38
Sul fatto della sandbox che avverte dell'accesso alla fotocamera vedrò di farmene una ragione:D.
Adesso però avrei un'ulteriore domanda...
Una volta scattata la foto, la memorizzo iin un recordStore.
Come faccio però a: assegnare un nome allo snapshot?
Dovrei trovare il modo di associare una stringa allo snapshot.
Quando vado a scansionare i record del mio recordStore dovrei ripescare quella stringa e appendarla tra gli elementi di una lista.
Quando l'utente si trova su l'item che porta il nome di tale stringa, allora vorrei che fosse visualizzata l'immagine ad essa associata.
IL mio problema sta nell'asociazione stringa-immagine e successiva lettura. Mi potete dare qualche consiglio?
DesmoColo
27-09-2007, 10:10
Forse mi sono spiegato male, quindi ecco cosa sto cercandi di fare:
- Scattare una foto (e ci sono riuscito...)
- Dare un nome alla mia immagine
- Memorizzare l'immagine in un recordStore
- Ripescare dal mio recordStore l'immagine e riprodurla.
Avrei pensato di usare la classe ImageItem ("nomeImmagine", immagine, LAYOUT, "testoAlternativo") e di memorizzare quello nel recorStore.
Che ne pensate?
Forse non ho chiaro il problema ma...diavolo, perchè trattenersi :D.
Il RecordStore è una base dati in cui i dati sono rappresentati come BLOB. Per rappresentare dei dati come blob devi prima stabilire una convenzione di formato. Esempi:
i primi 20 byte contengono il nome dell'immagine come sequenza di caratteri ascii, il resto è l'immagine in formato png;
oppure:
[ASCII][0][IMAGE]
dove [ASCII] è la sequenza di caratteri ASCII che rappresenta il nome dell'immagine, [0] è il byte zero, [IMAGE] è la sequenza di byte che rappresentano l'immagine in formato PNG.
Ma puoi anche dire che un RecordStore contiene una mappa di valori:
[ASCII][INT]
che associano una stringa (il nome dell'immagine) all'id di un Record in un secondo RecordStore il quale conterrà l'immagine in formato PNG.
Insomma, opzioni a volontà.
Una volta che hai la tua convenzione di formato per la rappresentazione del dato [nome][immagine] sei a cavallo. Converti la coppia stringa-immagine nel formato prescelto e la spari nel (o nei) RecordStore. Basandoti sulla stessa convezione recuperi l'immagine associata ad un nome.
DesmoColo
28-09-2007, 00:17
Provo, poi faccio sapere. Grazie per ora!:)
DesmoColo
04-10-2007, 08:38
Ci l'ho fatta!
Ho memorizzato nel medesimo record di un recordstore stringa e immagine.
Ho però un problema nel quando scatto la foto.
Quando avvio l'applicazione dall'emulatore, parte un filmato. Quando premo ok, appare la sandbox che mi avverte che j2me sta per accedere alla fotocamera. Acconsento, ma invece di appararirmi la foto, mi appare il canvas e basta, senza immagini. Ho provato a installarla sul telefono. Li qualche volta funziona (ovvero la foto appare) e qualche volta no...
Da cosa può diepndere?
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.