English  Español  Português  Français  Italiano  Deutsch  Nederlands  Svenska  Dansk  Suomi  Norsk  Русский  Polski  Română  Български  Hrvatski  Česky  中国  中國  日本語  한국어  Ελληνική  हिन्दी  العربية 
J2ME lo sviluppo di software per telefoni cellulari
(2002)
Colin Fahey
moto_t720_open_lightanddark02.jpg
Motorola T720 telefono cellulare, mostrato aperto

1. Attenzione

Questo documento è obsoleto!  Le informazioni contenute in questo documento potrebbero essere stati validi e utili per l'anno 2002, ma molte cose sono cambiate negli anni successivi!  Questo documento dovrebbe essere considerato solo come un interessante record storico di 2002 l'anno.  Non fare affidamento su qualsiasi informazione o consulenza in questo documento.  Tutte le informazioni tecniche contenute in questo documento è molto obsoleta. 

Download di auto-creato il software, l'auto-creato immagini, e di auto-creato telefono melodie segnalazione (vale a dire, “suonerie),„ è relativamente rara e difficile nel corso 2002.  Purtroppo, sei anni più tardi, alcuni telefoni cellulari fornitori di servizi (comprese le Apple, che prevede l'esclusivo software e “suoneria„ per il portale iPhone) continuano a imporre restrizioni su come scaricare il software, immagini e musica, a causa del telefono cellulare i fornitori di servizi di cui godono estremamente grandi profitti finanziari controllo da questi tipi di download. 

Fortunatamente, i telefoni cellulari, come quelli con “l'Android„ piattaforma software, sarà in eterno fine la capacità delle aziende di creare e sfruttare i mercati chiusi per tali impieghi di telefoni cellulari.  Anche se i consumatori volentieri acquistato telefono cellulare di servizio piani che includevano costi molto elevati per il download di software, immagini e musica, questo è a causa del limitato numero di telefono cellulare di servizio le opzioni disponibili. 

Le dinamiche economiche che hanno permesso a taluni tipi di società a crescere a dominare il mercato non deve essere interpretata come implicito forte approvazione da parte dei consumatori.  Dato che le imprese iniziano a dominare, e quindi rendono difficile o impossibile per i concorrenti di entrare nel mercato, che domina la società è in grado di offrire prodotti che combinano un elevato valore positivo (ad esempio, la capacità di comunicare da qualsiasi luogo), con elevato valore negativo (ad esempio, i prezzi elevati auspicabile per il software, immagini e musica, che altrimenti sarebbero liberamente disponibili; quindi, il servizio aggiunge valore negativo).  Nessun consumatore è costretto ad acquistare un telefono cellulare, ma non vi è alcun dubbio che il telefono cellulare in posizione dominante prestatori di servizi hanno progressivamente creato le condizioni che non può essere considerato “un„ libero mercato.  Pertanto, il telefono cellulare mercato dei servizi è stata economicamente “inefficiente„ ed è stato un onere eccessivo per i consumatori. 

Speriamo, i requisiti che telefono cellulare di servizio frequenze radio essere a disposizione di servizi concorrenti a ristabilire normali valori di mercato per il trasferimento dei dati, quali telefono cellulare che i fornitori di servizi sono nuovamente ridotti a semplici vettori di dati (vale a dire, solo fornendo larghezza di banda) piuttosto che informazioni o intrattenimento fornitori ! 

L'attività di trasporto di dati devono essere separati dalle attività di vendita dei dati, altrimenti non ci sarà un incentivo per le imprese di trasporto dati per bloccare i concorrenti di dati di vendita attraverso lo stesso canale di trasporto dati. 

Le console per videogiochi mercato soffre dello stesso problema.  I produttori di console per videogiochi sono l'hardware nel settore della creazione di dispositivi che possono visualizzare video giochi, ma quelle stesse società hanno anche il controllo esclusivo del trasferimento di software a quelle delle console per videogiochi.  Pertanto, non vi è un incentivo per il video gioco produttori di console per bloccare i concorrenti di vendere software per la video console per videogiochi.  Se una console per videogiochi produttore hardware focalizzata sulla progettazione e produzione di hardware che potrebbe essere venduta ad un profitto (anziché a una perdita significativa, in quanto con la X-Box e PlayStation e Nintendo console per videogiochi), poi il video gioco mercato prosperare, e la qualità dei migliori videogiochi di migliorare notevolmente, e il costo dei videogiochi sarebbe crollato. 

2. Indice argomenti

(1)
J2ME strumenti di sviluppo
(2)
J2ME semplice programma
(3)
Complesso J2ME programma
(4)
Sun “wireless toolkit„
(5)
Offerta software su un sito Internet
(6)
Download di software da un sito Internet
(7)
Scarica i messaggi di errore e messaggi di errore di installazione
(8)
Creazione, offrire, e il download di “suonerie„
(9)
Creazione, offrire, e il download di immagini
(10)
AT&T telefono cellulare le impostazioni di configurazione (per la rete)
(11)
Link ad altri cellulare risorse
(12)
J2ME rispetto BREW

3. J2ME strumenti di sviluppo

In questa sezione viene descritto come scaricare gli strumenti di sviluppo che possono essere utilizzati per compilare il codice sorgente J2ME nel file di classe adatto per i dispositivi mobili.  Si noti che il Sun “J2ME Wireless Toolkit,„ discussa in una successiva sezione di questo articolo, è necessario scaricare il Java SDK descritte in questa sezione. 

3.1 JDK 1.4 (o successivi)

Ciò significa che è necessario il convenzionale Java 2 SDK da Sun.  E ho scaricato la versione utilizzata 1.4 tramite il seguente link:
http://java.sun.com/j2se/1.4/download.html
Ecco cosa la pagina di download appare come segue:
java2sdk_download_page.jpg
Avviare il programma di installazione.  Installa per la posizione predefinita ( c:\j2sdk1.4.0_03 ) a meno che non siano in grado di risolvere percorso di problemi che possono sorgere. 

3.2 Connected Limited Device Configuration (CLDC)

Io non pretendo di sapere che cosa è questo, ma ho semplicemente scaricato dal sito web Sun.
http://wwws.sun.com/software/communitysource/j2me/cldc/download.html
Ecco ciò che il principale CLDC scaricare pagina web appare come segue:
cldc_download_page.jpg
Solo 1.0.3 era disponibile al momento ho visitato.
Al fine di eseguire il download di questo, avevo bisogno di registrarsi con Sun sito web.  Ho creato il seguente profilo:
Username:        anon***anon
Password:        nospamplease
Favorite color:  blue
Full name:       Prof. Anon Nospamplease
Ho scaricato il seguente file:
j2me_cldc-1_0_3-fcs-src-b17-winunix-14_sep_2001.zip
I decompressi al seguente directory:
C:\j2me
Ho rinominato la directory “cldc-1_0_3-fcs„ semplicemente:
cldc (vale a dire, il percorso completo è c:\j2me\cldc)

3.3 Mobile Information Device Profile (MIDP)

Io non pretendo di sapere cosa sia questo, ma ho semplicemente scaricato dal sito web Sun.
http://java.sun.com/products/midp/
Ecco ciò che il principale MIDP scaricare pagina web appare come segue:
midp_download_page.jpg
Ho scaricato il seguente file:
j2me_midp-1_0_3-fcs-src-b26-win-19_sep_2001.zip
I decompressi al seguente directory:
C:\j2me
Ho rinominato la directory “midp-1_0_3-fcs„ semplicemente:
midp (vale a dire, il percorso completo è c:\j2me\midp)

3.4 Configurazione degli strumenti

3.4.1 Creare percorsi

Aggiungi le seguenti righe al vostro file AUTOEXEC.BAT:
REM ---- Java Support ----
SET MIDP_HOME=C:\j2me\midp
SET PATH=%PATH%;c:\j2sdk1.4.0_03\BIN;
PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\j2sdk1.4.0_03\BIN;C:\j2me\midp\bin;%PATH%
Poi vigore queste variabili per essere ricaricati, eseguendo il file batch:
cmd_prompt_autoexec_bat.jpg
c:\>  autoexec.bat
È inoltre possibile impostare queste stesse variabili, usando la variabile d'ambiente Windows pannello di controllo.

Notate che ho scelto di specificare esplicitamente i percorsi delle directory per la mia attuale versione del Java 2 SDK.  Pertanto, se mi aggiornamento, quindi devo modificare il file AUTOEXEC.BAT per specificare la nuova directory. 

3.4.2 Controllare il Jave 2 SDK binari

Una volta che le impostazioni di cui sopra in vigore, si dovrebbe essere in grado di eseguire i programmi Java strumento dal prompt dei comandi senza specificare il percorso completo per lo strumento dei programmi. 

Il seguente comando avviare il telefono cellulare emulatore di dispositivo: 
cmd_prompt_midp.jpg
c:\>  midp
La seguente immagine mostra il telefono cellulare emulatore di dispositivo: 
java_midp_launch.jpg

4. J2ME semplice programma

4.1 Scrivere codice Java

Utilizzando qualsiasi editor di testo, una persona può digitare il codice, come per questo HelloMIDlet.java codice sorgente del file:
file_image_hellomidlet_java.jpg
Ecco il codice in formato solo testo:
// File: HelloMIDlet.java
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class  HelloMIDlet
extends       MIDlet
implements    CommandListener
{
    private Command exitCommand;
    private Display display;
    private TextBox t = null;

    public HelloMIDlet()
    {
        display = Display.getDisplay( this );
        exitCommand = new Command( "Exit", Command.EXIT, 2 );
        t = new TextBox
        (
            "Hello MIDlet",
            "Test string",
            256, 0
        );
        t.addCommand( exitCommand );
        t.setCommandListener( this );
    }

    public void startApp()
    {
        display.setCurrent( t );
    }

    public void pauseApp()
    {
    }

    public void destroyApp( boolean unconditional )
    {
    }

    public void commandAction( Command c, Displayable s )
    {
        if (c == exitCommand)
        {
            destroyApp( false );
            notifyDestroyed();
        }
    }
}

4.2 *.java compilare codice per *.class

cd  c:\HelloMIDlet
Attenzione: Il seguente comando deve essere su una sola riga, ma è stata ampliata a più linee di testo solo per chiarezza.
(Directory corrente: C:\HelloMIDlet)
javac
    -target 1.1
    -d .\
    -bootclasspath c:\j2me\midp\classes
    HelloMIDlet.java
cmd_prompt_javac.jpg
Nota: Il “-target 1.1„ è necessaria per evitare un errore in futuro “preverify„ fase.  Apparentemente questo ha qualcosa a che fare con un problema con MIDP 1.0.3 sostegno in JDK 1.4. 

4.3 Preverify per generare un nuovo file *.class

cmd_prompt_preverify.jpg
(Directory corrente: C:\HelloMIDlet)
preverify  -classpath  c:\j2me\midp\classes;.  HelloMIDlet
Ciò genera un nuovo *.class il file in una nuova sottodirectory chiamata “output„ (di default).

4.4 Prova il nuovo file *.class

cmd_prompt_midp_midlet.jpg
(Directory corrente: C:\HelloMIDlet)
midp  -classpath  c:\j2me\midp\classes;.\output  HelloMIDlet
Verrà avviata l'emulatore di telefono, indicando che il nuovo “output„ directory contiene alcuni dei file necessari *.class.
La seguente immagine mostra i risultati attesi.
java_midp_hellomidlet.jpg

4.5 Creare un nuovo file di testo, “manifest.mf„, e modificare il file

Un “manifest.mf„ file è essenziale per ottenere un vero e proprio telefono cellulare per interpretare il contenuto di un file *.jar.  Se un buon “manifest.mf„ file non è incluso all'interno della *.jar file, quindi il telefono cellulare potrebbe successo *.jar scaricare il file, ma potrebbe non riuscire ad interpretare il file scaricato, forse un errore di segnalazione come “Unsupported Content Type„. 
Il seguente è un esempio di un semplice file di “manifest.mf„.
file_image_manifest_mf.jpg
Qui è il “manifest.mf„ file come testo normale: 
MIDlet-1: My_Description,, HelloMIDlet
MIDlet-Name: My_Midlet_Suite
MIDlet-Vendor: Colin Fahey, Inc.
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
Si noti che il CLDC e MIDP versioni sono specificate in questo file.  Essere molto cauti e prudenti durante la modifica di vari campi in questo file.  Se si riesce a “File Corrupt„ errori, quindi provare a eliminare tutti i campi che non sono mostrati in questo esempio.  Inoltre, mettere i campi secondo l'ordine in cui appaiono nel esempio.  Inoltre, abbreviare ogni campo valore quanto più è possibile, e mantenere i caratteri limitati a semplici lettere, cifre, i periodi, e trattini.  Alcuni servizi di telefonia cellulare e telefoni cellulari, può più tollerare variazione del campo di ordinazione e il contenuto del campo. 
Attenzione: 

Quando il programma è “jar„ utilizzati per creare un file *.jar, e la “manifest.mf„ file è specificato come il manifesto file, il programma “jar„ legge il file manifest e potrebbero aggiungere altri campi come si crea un file chiamato “MANIFEST.MF„ all'interno del file di output *.jar.  Pertanto, se il “MANIFEST.MF„ file viene estratto da un file *.jar, ed è quindi confrontato con l'originale “manifest.mf„ file specificato durante la creazione del *.jar, i due file potrebbero essere diverse, con l'“MANIFEST.MF„ file contenente i campi più diversi rispetto al file originale “manifest.mf„ . 

Non “MANIFEST.MF„ estrarre un file da un *.jar file e tentare di formare un nuovo *.jar file utilizzando il file che si manifestano.  Se “MANIFEST.MF„ estrarre un file da un file *.jar, quindi assicurati di eliminare tutti i settori, ad eccezione di quelli indicati nella “manifest.mf„ file di esempio sopra indicato. 
Nota:

Icone per i programmi apparentemente non sembrano Motorola T720 sul telefono cellulare.  Questo è il motivo per cui non ho descrivere le mie midlet con un'icona.  Tuttavia, il seguente mostra come impostare un'icona per il programma all'interno del file manifest: 

MIDlet-1: My_Description, /icon.png, HelloMIDlet 

Quando in via di sviluppo per telefoni cellulari che fanno visualizzare le icone per le applicazioni, specificare il nome del file icona, e aggiungere l'icona di file di immagine per la stessa *.jar file specificando il nome del file tra i file di nomi di file da aggiungere al *.jar file. 

4.6 Metti il “manifest.mf„ file e *.class file in un file *.jar

Il seguente comando crea un file di *.jar.  Il *.jar file conterrà determinata manifest.mf file, e conterrà il *.class file trovati nella directory specificata.
cmd_prompt_jar.jpg
Directory corrente: C:\HelloMIDlet
jar  cfm  hi.jar  manifest.mf  -C .\output  HelloMIDlet.class
Complesso ipotetico esempio di creazione di un file *.jar
Supponiamo che un icona file immagine (ad esempio, “icon.png„) è a comparire in un *.jar file come “/icon.png„.  (Nota: le icone del programma non appaiono sulla Motorola T720 telefono cellulare, ma non appaiono su altri tipi di telefono cellulare, e fare apparire nel MIDP emulatore). 

Supponiamo che vi è una directory di nome “images„ con file immagine (formato *.png).  Supponiamo che questa directory, e tutte le immagini contenute nella directory, dovrebbero essere accessibili al programma Java dalla relativa directory /images (in modo che l'immagine “a.png„ saranno accessibili utilizzando il percorso “/images/a.png„). 

Supponiamo che tutti i file *.class prodotta dalla preverify comando sono contenuti in una directory denominata “verified„.  Ad esempio, la versione di verificare la classe principale, “MyApp.class„, sarebbe in “verified„ cartella, insieme con le altre classi del programma.  Tutte queste classi sono accessibili nella root directory del file *.jar. 

Il seguente comando crea un file di *.jar che raggiunge i vari obiettivi specificati nei paragrafi precedenti.  Attenzione: il comando è stato ampliato a più righe di testo qui solo per chiarezza.  Quando si entra il comando a un prompt dei comandi, il comando non devono contenere di riga, altrimenti il comando interprete deve interpretare il testo immesso come comandi multipli indipendenti. 

jar
    cfmv             [Create JAR, Specify JAR Name, Add manifest.mf, Verbose]
    MyApp.jar        [Name of output JAR file]
    manifest.mf      [The manifest.mf file]
    icon.png         [Optional icon, specified by JAD as "/icon.png"]
    images           [Directory to add to JAR as "/images"]
    -C .\verified .
La parte finale del comando è difficile da capire.  Essa ha il seguente significato:  “Cambia la directory di lavoro corrente a .\verified, e quindi mettere *.class tutti i file trovati nella relativa directory '.' (*.class vale a dire tutti i file nella directory di lavoro corrente) al *.jar file.„  Poiché la directory è stato modificato prima di specificare il percorso delle classi per mettere in *.jar il file, il percorso locale non verrà visualizzato nel percorso relativo quando i file vengono messi in *.jar al file. 

Per esempio, si supponga che la classi sono verificati nella seguente directory: 

C:\MyApp\verified 

Supponiamo che ci sono file di classe come le seguenti: 

C:\MyApp\verified\w.class 

Poi precisa “-C .\verified .„  nel comando per creare il file *.jar, a partire da una directory corrente di “C:\MyApp„, si tradurrà in “w.class„ essere messo nella root directory del file *.jar.  </ E>

Attenzione: Quando il “-C„ opzione è specificata, cambia la directory di lavoro corrente, a quel punto, il trattamento della sequenza generale dei parametri di comando per il comando jar.  Pertanto, il comando potrebbe jar si lamentano che non è possibile trovare altri file di cui al comando al di là dei parametri “-C„ opzione.  Se questo accade, è sufficiente spostare il “-C .\verified .„  ad essere la finale dei parametri del comando generale. 

La parte seguente mostra l'output dettagliato del jar comando. 
added manifest
adding: icon.png(in = 449) (out= 454)(deflated -1%)
adding: images/(in = 0) (out= 0)(stored 0%)
adding: images/a.png(in = 2463) (out= 2223)(deflated 9%)
adding: images/b.png(in = 1322) (out= 579)(deflated 56%)
adding: images/c.png(in = 3433) (out= 2874)(deflated 16%)
adding: images/d.png(in = 1524) (out= 801)(deflated 47%)
adding: w.class(in = 2570) (out= 1356)(deflated 47%)
adding: MyApplication.class(in = 4714) (out= 2169)(deflated 53%)
adding: x.class(in = 3239) (out= 1429)(deflated 55%)
adding: y.class(in = 14205) (out= 6481)(deflated 54%)
adding: z.class(in = 9448) (out= 5135)(deflated 45%)

4.7 Creare e modificare un nuovo file *.jad

Un *.jad file è necessario in modo che il telefono cellulare può descrivere un programma per computer ad una persona prima che la persona decide di scaricare il programma.  Il file *.jad fornisce anche alcuni indiretta dal *.jar stessa. 
file_image_hi_jad.jpg
Un esempio di file *.jad, descrivendo un file *.jar
Ecco l'esempio hi.jad il file in formato solo testo:
MIDlet-1: My_Description,, HelloMIDlet
MIDlet-Jar-Size: 1283
MIDlet-Jar-URL: http://www.colinfahey.com/hi.jar
MIDlet-Name: My_Midlet_Suite
MIDlet-Vendor: Colin Fahey, Inc.
MIDlet-Version: 1.0
Ci sono programmi che possono generare il file *.jad, che rende più semplice per aggiornare il campo “MIDlet-Jar-Size:„ ogni volta che il *.jar file è cambiato (e le sue dimensioni modifiche).  Se cercate Internet troverete informazioni utili J2ME programmi. 

Se le dimensioni campo non specificare esattamente byte totale del *.jar file, quindi il seguente messaggio di errore può apparire dopo un successo il download di un telefono cellulare: “Download Failed„ (non scaricare). 

Per il Motorola T720 telefono cellulare, il seguente messaggio di errore potrebbe essere utilizzato per inidcate campi non validi nel *.jad file, o, eventualmente, i campi non validi nel file generato MANIFEST.MF entro il *.jar file: “Failed: File Corrupt„ (non riuscito: il file corrotto). 
Nota: Se la *.jar file si trova nella stessa directory del file corrispondente *.jad Internet su un server web, quindi la *.jad file può semplicemente indicare il nome del file del file *.jar, senza specificare un pieno URL, come nel seguente esempio: 

MIDlet-Jar-URL: hi.jar 

Quando si scaricano i file da un Apache Internet server web per cellulari, uno Motorola T720 telefono cellulare, è accettabile per non comprendere l'intero URL.  Tuttavia, quando il download di questi file da un Yahoo!  Internet server web per cellulari, uno Motorola T720 telefono, il tentativo di scaricare non andrà a buon fine, a meno che un pieno URL percorso del *.jar file è specificato nel file di *.jad, come nel seguente esempio: 

MIDlet-Jar-URL: http://www.colinfahey.com/hi.jar 

Non so il motivo di questo problema, e so che questo problema non riguarda altri telefoni cellulari (o telefono cellulare fornitori di servizi).  Dover specificare l'intero URL per il *.jar il file in *.jad il file è ovviamente scomodo, perché si spostano i file in diverse posizioni su un server richiede la modifica delle informazioni in tutte le *.jad file.  Tuttavia, specificando la piena URL potrebbe rendere il *.jad più affidabili per alcuni telefoni cellulari e di alcuni telefoni cellulari fornitori di servizi. 

4.8 Prova il *.jar file e la *.jad file eseguendo il programma

Il seguente esegue la classe trovato nel file *.jar, descritto dalla *.jad file. 
cmd_prompt_midp_jar_jad.jpg
(Directory corrente: C:\HelloMIDlet)
midp  -classpath c:\j2me\midp\classes;.\hi.jar  -descriptor hi.jad

4.9 Riferimenti per J2ME, MIDP, CLDC sviluppo

Molto di ciò che ho presentato qui può essere trovato su molti altri siti Internet.  Tuttavia, ho corretto alcuni errori riscontrati su altri siti Internet, e ha aggiunto dettagli mancanti, e ha presentato la completa esperienza di qualcuno cercando di fare questa roba.  Qui sono molto istruttiva link che mi ha aiutato ad iniziare: 
http://wireless.java.sun.com/midp/articles/getstart
http://wireless.java.sun.com/midp/articles/setup

5. Complesso J2ME programma

5.1 Introduzione

Il semplice programma presentate nella sezione precedente di questo documento ha solo un unico file di codice sorgente, e il programma funziona quasi nulla e quindi non è un buon esempio di programmazione del telefono cellulare. 

Il mio amico Sam Robertson ha scritto un interessante programma J2ME insegna che una persona di svolgere il gioco di carte “Blackjack„ (chiamato anche “21„).  Un giocatore è presentato con un “rivenditore della carta,„ e il giocatore della coppia di carte, e il giocatore deve decidere cosa fare: “soggiorno, colpito,„ in “doppio-down, o„ si separano. 

Questo programma ha sei file di codice sorgente.  Il programma risponde a input dell'utente, e non semplice disegno e testo aggiornamenti. 
sbj_screen_on_phone.jpg

5.2 Il codice sorgente

Clicca sul seguente link per ottenere il codice sorgente, e la *.jad file, “manifest.mf„ file e un file batch, il tutto in un unico e pratico ZIP file.
sbj.zip
Il codice sorgente contenuto in un file ZIP
6090 bytes
MD5: bf3922035b7a4eef24e107d03b7524c9
Estratto di un arbitrario directory, ma se si estratto per “c:\„ sotto Windows, il seguente esempio di discussione sarà ancora più vicina alla propria situazione.
sbj_directory_files.jpg
Estrazione sbj.zip a “c:\„ crea la directory “c:\sbj„

5.3 File manifest

File: “manifest.mf„:
MIDlet-1: My_Description,, SBJ_MidletT
MIDlet-Name: SBJ_MidletT
MIDlet-Vendor: Sam Robertson
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0

5.4 Il file batch per costruire il programma

Il seguente file batch è grezzo, ma serve come un esempio di come si potrebbe iniziare a scrivere i vostri file batch per costruire il tuo J2ME programma.  Questo esempio file batch il seguente:
(1) Eliminare la directory contenente i vecchi file *.class; 
(2) Eliminare la directory contenente i vecchi file *.class verificato; 
(3) Fai una directory di output “classi;„ 
(4) Compila tutti i sorgenti in *.java a *.class file, con la produzione destinata “alle„ classi di directory. 
(5) Effettuare una “verifica„ di output directory; 
(6) Preverify tutte le classi “nelle„ classi di directory, e mettere le classi verificato nel “verificato„ directory. 
(7) Creare un file *.jar, e aggiungere il mainfest file, e tutte le classi nella directory di “verifica;„ 
*(8) di prova il programma attraverso il preverified classi direttamente; 
*(9) di prova il programma attraverso il *.jar e *.jad file; 

(*...  Questi passaggi sono disabili (da commentare) nel mio file batch.) 
sbj_build_sbj_bat_file.jpg
Il file batch “build_sbj.bat„ per costruire il programma
Qui è lo stesso file (“build_sbj.bat„) in formato solo testo:
rmdir /S /Q classes
rmdir /S /Q verified
del /F /Q  *.jar

mkdir classes

javac  -g:none  -target 1.1  -d .\classes  -bootclasspath c:\j2me\midp\classes  *.java

mkdir verified

preverify  -classpath c:\j2me\midp\classes;.\classes  -d .\verified  .\classes

jar  cvfm sbj. jar manifest.mf  -C  .\verified  .

REM  midp  -classpath c:\j2me\midp\classes;.\verified  SBJ_MidletT
REM  midp  -classpath c:\j2me\midp\classes;.\sbj.jar  -descriptor sbj.jad
REM  Finished

5.5 Costruire dal prompt dei comandi

Qui è il risultato di “build_sbj.bat„ eseguendo il file batch dalla riga di comando:
sbj_build_command_prompt.jpg
Eseguire il file batch “build_sbj.bat„
Si noti che il messaggi di avviso per la “rmdir„ e “del„ operazioni indicano semplicemente che non c'è nulla da rimuovere. 

Potete vedere la nuova directory (cioè, “classes„ e “verified„) e il nuovo file *.jar che ha portato l'esecuzione del file batch:
sbj_new_files_after_build.jpg
Il codice sorgente di file e nuovi file generato

5.6 *.jad file

Per distribuire l'sbj.jar file, abbiamo bisogno di creare e modificare i file sbj.jad per avere il corretto dimensioni *.jar nel campo appropriato:
File: sbj.jad
MIDlet-1: SBJ_MidletT, , SBJ_MidletT
MIDlet-Jar-Size: 7257
MIDlet-Jar-URL: sbj.jar
MIDlet-Name: Sam Blackjack Trainer
MIDlet-Vendor: Sam Robertson
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
Una persona che potrebbe essere necessario aggiungere il testo completo del URL al *.jar file *.jad quando il file viene messo su un sito Internet - ma ho scoperto (da un esperimento) che ero in grado di evitare che citano la piena URL (vale a dire, ho solo precisato il *.jar nome del file da sé).  Tuttavia, la messa in completo URL, ma ho voluto far sapere quello che ho osservato.

5.7 Riepilogo

Avendo più file di origine nel vostro progetto è comune, e in questa sezione abbiamo dato uno greggio illustrazione della costruzione di più classi, seguita da imballaggio e di esecuzione. 

Si prega di consultare la seguente sezione per quanto riguarda utilizzando Sun Wireless Toolkit, il che rende le applicazioni edificio molto più facile. 

6. Sun “Wireless Toolkit (version 1.0.4_01)„

6.1 Introduzione

Sun offre un comodo ambiente di sviluppo per la costruzione e l'imballaggio J2ME programmi: “Java 2 Platform Micro Edition (J2ME) Wireless Toolkit (version 1.0.4_01)„. 

(Attenzione: è necessario scaricare il Java 2 SDK 1.4 come descritto in una precedente sezione di utilizzare questo toolkit.  Farlo ora, se non hai questa versione di Java 2 SDK.) 

Vai al seguente sito Internet per scaricare il toolkit: 

http://java.sun.com/products/j2mewtoolkit/ 
Attenzione!
 

Non fare clic sul link “2.0 Beta 1 English„ (attualmente il top di download) se si sta facendo Motorola T720 sviluppo - in quanto questa versione ha alcuni MIDP-2.0 roba, e su come ovviare a questo può essere un mal di testa. 
j2me_wireless_toolkit_2_0_download_page.jpg
Non scaricare questa versione!  (“2.0 Beta 1 English„)
Ho provato questa versione, e ho avuto per compilare il codice con un sacco di modifiche alle impostazioni disordinato, ma dopo tutto lo sforzo mi sono un'eccezione di protezione quando ho cercato di eseguire.  Non preoccupatevi! 
Scarica la versione “1.0.4_01 English„.  Ecco cosa la pagina di download appare come segue: 
j2me_wireless_toolkit_1_0_4_01_download_page.jpg
La pagina di download Sun J2ME Wireless Toolkit (version 1.0.4_01)
j2me_wireless_toolkit_1_0_4_01_download_page2.jpg
Il Sun J2ME Wireless Toolkit (version 1.0.4_01) FTP elenco dei siti
Questo scaricherà il seguente file: “j2me_wireless_toolkit-1_0_4_01-bin-win.exe„ 
Eseguire il programma da installare sul vostro sistema.

6.2 J2ME Wireless Toolkit: lancio della barra degli strumenti

Dopo il toolkit è installato, è possibile avviare dal “Start„ (start) Il sistema dei menu:
j2me_wireless_toolkit_1_0_4_ktoolbar.jpg
Avvio del programma della barra degli strumenti
È inoltre possibile accedere MIDP-1.0 documentazione tramite la voce “Documentation„ in questo Start (start) dal menu.
j2me_wireless_toolkit_2_0_wtk20_docs_api_index_html.jpg
J2ME Wireless Toolkit (version 1.0.4_01) documentazione

6.3 J2ME Wireless Toolkit: creare progetto e costruire

j2me_wireless_toolkit_1_4_ktoolbar_window.jpg
La barra degli strumenti è pronta.  Fare clic su “New Project...„  per creare un nuovo progetto.
j2me_wireless_toolkit_1_4_ktoolbar_new_project.jpg
New Project: digitare il nome del progetto (diventa JAR nome e il nome del nuovo progetto di directory), e il tipo di MIDlet nome di classe (classe derivata da MIDlet, essenzialmente la classe principale della vostra applicazione). 
j2me_wireless_toolkit_1_4_ktoolbar_project_created.jpg
Google Toolbar: progetto creato.  Si noti che la console ti dice dove mettere il file di origine *.java, ecc  (ad esempio, “c:\WTK104\apps\sbj\src„, ecc) 
j2me_wireless_toolkit_1_4_ktoolbar_project_settings.jpg
Fare clic sul “Settings...„  sulla barra degli strumenti per ottenere questo progetto dal menu Impostazioni. 
“MIDlet-Jar-Size„ trascurare il settore (con valore di “100„ byte) per ora.  Ci sarà infine causare il valore corretto per ottenere insieme. 
j2me_wireless_toolkit_1_4_ktoolbar_project_midlet_settings.jpg
Fare clic sulla scheda MIDlets del progetto impostazioni finestra di dialogo.
Fare clic sulla riga solo nella tabella (“MIDlet-1„) per evidenziare e selezionarlo.  Quindi, fai clic sul pulsante “Edit„. 
j2me_wireless_toolkit_1_4_ktoolbar_project_no_icon.jpg
“Icon„ chiaro il campo se non hai un file *.png a mettere nel tuo file *.jar. 
Effettuare le seguenti operazioni: 

(1) Project --> Clean: rimuove tutti i file *.class;
(2) Build : Costruisce *.class tutti i file e le preverifies;
(3) Project --> Package --> Create Package : produce *.jar e *.jad
j2me_wireless_toolkit_1_4_ktoolbar_clean_build_create_package.jpg
Il risultato della costruzione del *.jar e *.jad
Quando si esegue queste tre fasi, la conseguente *.jar e *.jad sono immediatamente pronti per l'esecuzione in locale emulatore, o per l'immediata diffusione sul vostro sito Internet per gli altri per il download “Over The Air„ (OTA).  La dimensione *.jar nel campo *.jad file verrà corretta.  Non dimenticate di fare passo (3) ogni singola volta che la ricostruzione! 

Ora potete testare premendo il “Run„ (run) pulsante. 
j2me_wireless_toolkit_1_4_ktoolbar_project_launch.jpg
j2me_wireless_toolkit_1_4_ktoolbar_project_running.jpg
Premendo “Run„ per il progetto di legge il *.jad per l'emulatore.  È possibile selezionare le specifiche per avviare MIDlet (di solito solo uno). 
Basta copiare il *.jar e *.jad file da siti specifici (segnalati da barra degli strumenti della finestra della console nel corso di una build di progetto), come ad esempio:
(Dalla finestra della console:)
Wrote c:\WTK104\apps\sbj\bin\sbj.jar
Wrote c:\WTK104\apps\sbj\bin\sbj.jad
Mettere questi file direttamente sul vostro sito Internet, senza modifiche, e dovrebbe funzionare.  Ecco quello che ho visto sul mio telefono cellulare dopo aver compilato il download di questa applicazione “oltre l'aria„ (OTA)
sbj_screen_on_phone.jpg
Sam Robertson's Blackjack Trainer (sbj.jar) esecuzione sul mio telefono cellulare

7. Offerta software su un sito Internet

7.1 Assicurarsi che il server web Internet MIME specifica *.jar tipi di file e file *.jad

Se si dispone di un Apache Internet sul server Web, è necessario creare un file chiamato “.htaccess„ all'interno del tuo sito web directory radice.  Il “.htaccess„ file consente di ignorare Apache configurazione, come ad esempio aggiungendo o superiore MIME tipi di file.  È necessario aggiungere il MIME specificare il tipo corrispondente di *.jar file e *.jad file, come mostrato nel seguente file di testo: 
htaccess_image.jpg
Il mio “.htaccess„ personalizzato per il file di Internet Apache server web.  Nota: ho chiamato questo file “.htaccess.txt„ semplicemente per rendere il file facile da modificare quando si utilizza il sistema operativo Windows.  Il nome del file deve essere cambiato in “.htaccess„ prima il file può essere utilizzato con il Apache Internet server web. 
Qui è il mio semplice .htaccess file come testo normale:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
Apparentemente, per creare o modificare questo file si traduca in un immediato cambiamento di comportamento Apache server.  Immagino che il server controlli Apache la modifica della data e l'ora della “.htaccess„ file su ogni nuova operazione in entrata, e il server di file ricariche che se la modifica di data e ora è cambiato. 

Se si dispone di un diverso tipo di server web Internet, è necessario stabilire le modalità di specificare MIME tipi, e si deve garantire che *.jar file e file *.jad sono assegnate le opportune MIME tipi. 

Saprete se la MIME tipi non sono stati istituiti se il telefono cellulare si rifiuta di *.jad scaricare i tuoi file e le relazioni il seguente errore: 

“406: Not Acceptable„ 

7.2 Facoltativamente fornire link al *.jad il file in HTML o WML documenti

Il Motorola T720 J2ME telefono cellulare con AT&T servizio è in grado di scaricare un file direttamente *.jad, digitando il URL di *.jad il file al telefono cellulare.  Questo è probabilmente a lavorare per altri J2ME telefoni cellulari con altri cellulare fornitori di servizi. 

Tuttavia, potrebbe essere più conveniente per le persone a scaricare il file *.jad selezionando un link all'interno di un documento HTML o all'interno di un documento WML.  (Nota: WML è ora obsoleto.  La maggior parte dei telefoni cellulari possono ora interpretare HTML.) 
file_image_hi_html.jpg
Un semplice documento HTML con un link a un file *.jad
file_image_hi_wml.jpg
Un semplice WML (WAP) pagina con un link a un file *.jad  (Nota: WML è ora obsoleto.  La maggior parte dei telefoni cellulari possono ora interpretare HTML.) 

8. Download di software da un sito Internet

Le seguenti immagini mostrano l'esatta sequenza di azioni ho fatto per scaricare ed eseguire il MIDlet sviluppato e implementato come descritto nelle sezioni precedenti di cui sopra.  Queste immagini sono fotografie dello schermo del mio telefono cellulare. 
t720_screens_download_program.jpg
(1) schermo principale: quando si apre il telefono, viene visualizzata la schermata principale.  Premere il pulsante centrale per andare al menu principale. 
(2) Main Menu: Sposta l'elemento “WebAccess„. 
(3) WebAccess: Sposta l'elemento “Go To URL„. 
(4) Enter URL: Digitare il URL di un *.jad file (o di un documento HTML, o di un documento WML). 
(5) Details; Questa informazione è stata analizzata dal *.jad file.  Premere DOWNLD per scaricare il file *.jar. 
(6) Download Complete; Attendere questo messaggio a scomparire; 
(7) Installing; Attendere questo messaggio a scomparire; 
(8) xxxx bytes transferred; Attendere questo messaggio a scomparire; 
(9) Installed; Attendere questo messaggio a scomparire; 


Quando il WebAccess visualizzato il menu di nuovo, dopo che il programma è stato installato, è sufficiente uscire ciascun menu per tornare alla schermata principale. 
t720_screens_start_program.jpg
(1) schermo principale: quando si apre il telefono, viene visualizzata la schermata principale.  Selezionare l'opzione “Games & Apps„ tramite il menu principale, oppure premere il cursore verso il basso sulla schermata principale. 
(2) Java Powered: Attendere per questo schermo a scomparire. 
(3) Games & Apps: Selezionare la voce con il nome del vostro programma! 
(4) Yay!  Successo del vostro programma! 
Il programma comparsa sul telefono cellulare è molto simile alla comparsa entro l'emulatore.

9. Scarica i messaggi di errore e messaggi di errore di installazione

9.1 Motorola T720 (J2ME) messaggi di errore

I seguenti errori sono messaggi rilevante solo per il Motorola T720 (GSM/J2ME) telefono cellulare. 

9.1.1 “Download Failed„

Causa # 1
Qualsiasi file (HTML, JAD, JAR, MID, GIF) oltre 1644 byte farà questo errore per taluni web host di Internet e server.  Ecco una breve lista di host e server: 
Host / Server                                               Error
===================================================    =================
Apache                                                       No
Microsoft Personal Web Server (direct from your PC)          No
Earthlink (Apache)                                           No
Yahoo! (custom server)                                       Yes
Il problema è dovuto a un difetto nel Motorola T720 GSM/J2ME firmware, che provoca il download di file in frammenti di fallire.
L'unica soluzione è evidente per passare a Internet web host o server tipo.  Altri tipi di telefono cellulare non hanno questo problema. 
Causa # 2
Il “MIDlet-Jar-Size:„ campo di un file *.jad non indica l'esatta byte totale di *.jar il corrispondente file.

9.1.2 “Failed: File Corrupt„

Causa # 1
Il *.jar file usa API funzioni che non sono disponibili sul telefono cellulare specifico. 

Ad esempio, MIDP 2.0 funzioni non sono disponibili sul Motorola T720 GSM/J2ME telefono cellulare (che ha solo funzioni MIDP 1.0).  Un programma può eseguire all'interno di un emulatore, ma potrebbero non eseguito sul telefono cellulare. 

La soluzione è alla ricerca di funzioni in MIDP 2.0 il codice sorgente e la sostituirla con MIDP 1.0 loro funzioni, o eliminare le funzioni che richiedono l'MIDP 2.0 funzioni. 
Causa # 2
Il “manifest.mf„ file utilizzato per creare il file *.jar (tramite l'utilità “jar„) contiene errori. 

Assicurarsi che il file è “manifest.mf„ le seguenti versioni di CLDC e MIDP: 
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
L'intero “manifest.mf„ file dovrebbe apparire quasi esattamente come la seguente: 
MIDlet-1: My_Description,, HelloMIDlet
MIDlet-Name: My_Midlet_Suite
MIDlet-Vendor: Colin Fahey, Inc.
MIDlet-Version: 1.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
Ogni riga di testo in file “manifest.mf„, tra cui l'ultima riga del file, dovrebbe terminare con un “ritorno carraige„ carattere (CR; 13; 0x0d) seguita “da„ una linea “di alimentazione„ (LF; 10; 0x0a) carattere. 

L'unica materia di “manifest.mf„ file nella vostra versione del file che dovrebbe differire da l'esempio mostrato qui sono i primi tre settori di cui l'esempio.  Il finale tre campi deve essere una corrispondenza esatta con l'esempio, e gli ultimi due caratteri del file dovrebbe essere il “trasporto andata e ritorno e„ la linea “di alimentazione„ dopo l'ultimo campo. 

Qui sono possibili problemi nella vostra versione del file “manifest.mf„: 
(1) tuo “manifest.mf„ file contiene caratteri che non sono ASCII caratteri; (Guardate un grafico di ASCII caratteri; qualsiasi al di fuori del carattere da 0 a 127 serie non è valido); 
(2) tuo “manifest.mf„ file non dispone di una “linea di mangimi„ (LF) carattere dopo ogni “trasporto di ritorno„ (CR) carattere alla fine di ogni riga; 
(3) tuo “manifest.mf„ file è invisibile spazi o tabulazioni alla fine di ogni riga prima della cessazione (CR)(LF) linea; 
(4) tuo “manifest.mf„ file contiene un “Manifest-Version:„ linea; 
(5) L'ultima riga del tuo file “manifest.mf„ non si esaurisce con un (CR)(LF) linea di terminazione, ma invece semplicemente raggiunge la fine del file; 
(6) tuo “manifest.mf„ file non hanno l'esatta campi e preciso ordine dei campi come mostrato nell'esempio precedente; 
(7) tuo CLDC versione non è esattamente 1.0, o il vostro MIDP versione non è esattamente 1.0; 
(8) Il tuo nome venditore ha caratteri che non sono ASCII caratteri (ad esempio, caratteri Unicode non sono ammessi); 
(9) tuo “manifest.mf„ file non hanno uno spazio dopo la seconda virgola nel “MIDlet-1:„ linea; 
Forse alcuni dei casi sopra elencati non effettivamente causare problemi per molti telefoni cellulari, ma eliminando tutti i casi elencati sopra potrebbe consentire il download di successo.  Dopo il download è successo, è possibile sperimentare con le variazioni del “manifest.mf„ file per scoprire quali altre cose che si possono fare senza causare errori di download.  “manifest.mf„ Quando il file viene modificato, è importante verificare che il download il programma continua a lavorare per tutti i telefoni cellulari e del telefono cellulare i fornitori di servizi.  Alcuni cellulari e servizi sono meno flessibili rispetto ad altri. 

“manifest.mf„ Quando un file viene aggiunto a un *.jar file tramite il programma jar, jar il programma crea una nuova versione del file manifest all'interno della *.jar file.  La generato versione del file manifest *.jar entro il file sia chiamato “MANIFEST.MF„.  Il programma jar potrebbe aggiungere campi a questo file che non esistono nel file “manifest.mf„ fornite dal programmatore.  Non “MANIFEST.MF„ estrarre un file da un file *.jar, a meno che non si sono preparati per eliminare alcuni campi e fare i restanti campi guardare esattamente come l'esempio “manifest.mf„ file indicato sopra. 

9.1.3 “Unsupported Content Type„

Causa # 1
Il telefono cellulare non può accettare la MIME tipo di comunicazione da parte dei server remoto per un file specifico. 

Ad esempio, JPG file di immagine non sono supportati dal Motorola T720 e provocare questo errore.

Questo errore può verificarsi anche se il MIME tipo per un tipo di file supportati (ad esempio, GIF, MID, JAD, JAR) non è riportato correttamente dal server.  Una persona deve essere molto attento a riferire l'esatta MIME per il tipo di tipi di file supportati. 
Causa # 2
La cache dei file sul telefono cellulare stesso deve essere cancellata (ad esempio, Browser Settings -> Clear Cache). 

Se di recente è stata aggiunta MIME tipi a un server remoto, e poi ha tentato di scaricare un file che in precedenza aveva omesso di installare a causa di una errata o mancante MIME tipo, quindi il file di cache sul telefono cellulare potrebbe essere un ostacolo per scaricare il file nuovamente con il buon MIME tipo. 

E 'anche possibile che il file remoto è stato modificato e che la versione cache è difettoso ed è prevenire la versione del file riparato da essere scaricati come una sostituzione. 

Svuotare la cache del browser sul telefono cellulare che dovrebbe garantire una successiva benefici da scaricare l'ultima configurazione del server (ad esempio, le nuove impostazioni MIME) e file remoto aggiornamenti. 
Causa # 3
[Da Motorola documentazione: http://developers.motorola.com/developers//wireless/global/emea/other/UCT.html]
Come evitare errori “Unsupported Content type„ in WAP 

Se viene visualizzato un errore nel WAP dicendo Unsupported Content type, non necessariamente a causa del contenuto di tipo impostazione.  Molti WAP pagine contengono caratteri speciali, come ad esempio (å ö ä) svedese, e al fine di arrivare ad una corretta visualizzazione è necessario specificare il set di caratteri che si utilizza.  Al fine di specificare set di caratteri che viene utilizzato su una pagina WAP, di modificare l'intestazione Content-Type nella risposta del server per includere il set di caratteri, per esempio “Content-Type: text/vnd.wap.wml; iso-8859-1„.  Quando un utente riceve la risposta da un server, dovrebbe avere tutte le informazioni necessarie per visualizzare il contenuto correttamente. 

Tuttavia, c'è un problema con l'utilizzo di questo approccio.  Tutti i telefoni cellulari per indicare che il gateway set di caratteri di supporto utilizzando “Accept-Charset„ nella richiesta di intestazione.  Secondo HTML specifiche, questo dovrebbe essere paragonato al set di caratteri specificati in una risposta del server, e se essi non corrispondono, l'errore Unsupported Content type dovrebbe essere generato. 

Per rendere il problema più complicato, alcuni WAP gateway non si preoccupano confrontando i set di caratteri supportati dal dispositivo richiesto, di conseguenza, il contenuto non viene visualizzato correttamente su questi dispositivi.  Un'altra complicazione è che la stringa che specifica il set di caratteri tra maiuscole e minuscole, ma alcuni WAP gateway trattarle come distinzione tra maiuscole e minuscole stringhe. 

Tutti insieme, ci saranno risultati molto diversi a seconda di ciò che si utilizza dispositivo, che WAP si utilizza il gateway e il server quello che è risposta. 

L'unico modo per essere sicuri che il contenuto verrà visualizzato correttamente è quello di verificare che cosa semper set di caratteri è accettata dal cliente e trasformare la vostra risposta a tale set di caratteri prima di inviarlo. 

9.1.4 “406: Not Acceptable„ (“The server cannot generate a response that your client can accept.„)

Causa # 1
Hai un telefono cellulare Verizon! 

Verizon non consente ai suoi clienti di scaricare le immagini (GIF), suonerie (MIDI), o programmi, arbitrario da Internet server web.  Si deve utilizzare il loro servizio “Get It Now„, o utilizzare un cavo USB e la “Get Around 'Get It Now' (GAGIN)„ software. 

Soluzione: Basta attendere la concorrenza nel “libero mercato chiuso„ per eliminare “le piattaforme.„  L'intera tecnologia potrebbe essere obsoleto al momento questo successo, ma questo è ciò che accade quando le imprese sono guidate da sola avidità. 
Causa # 2
Il messaggio di errore indica che il tipo MIME associati con l'estensione del file (ad esempio, .gif, .mid, .jar) del file scaricato non è stato specificato da Internet server web.

Se si dispone di un Apache Internet sul server Web, ad esempio, quindi è necessario modificare un file “.htaccess„, aggiungendo le seguenti righe:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid

9.1.5 “413: Requested Entity Too Large„

Causa # 1
Il server che ospita il file scaricato non MIME specificare il tipo di file (ad esempio, GIF, MID, JAR).  Pertanto, il telefono cellulare si presume che il file è in testo normale.  Inoltre, il telefono cellulare potrebbe avere un limite sulla dimensione (in byte) di file di testo che è più piccolo del limite sulla dimensione (in byte) di file binari (ad esempio, GIF, MID, JAR).  Pertanto, un file binario interpretato come un file di testo è suscettibile di superare la dimensione massima consentita di un file di testo, e quindi causare l'errore. 

Se si dispone di un Apache Internet sul server Web, ad esempio, allora si deve modificare uno “.htaccess„ file, aggiungendo le seguenti righe:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid
Causa # 2
Sembra che questo errore può inoltre verificarsi anche se il server remoto è il buon MIME tipi stabilito.  Non ho ancora stabilito quando questo errore si verifica invece del “Download Failed„ per questa situazione. 

Evidentemente, il telefono cellulare Motorola T720 GSM/J2ME non può elaborare un aspetto della HTTP 1.1 specifica che permette ai file di essere spezzato in frammenti, che richiedono più “GET„ richieste. 

Quando si utilizza il telefono cellulare Motorola T720 GSM/J2ME di scaricare file da Internet alcuni tipi di server web, un qualsiasi file (ad esempio, HTML, JAD, JAR, MID, GIF) con dimensioni superiori a 1644 byte farà questo errore.  Ecco un breve elenco di Internet provider di web hosting e se rappresentino o no Internet provider di web hosting, causa un problema per il Motorola T720 GSM/J2ME telefono cellulare:
Host / Server                                               Error
===================================================    =================
Apache                                                       No
Microsoft Personal Web Server (direct from your PC)          No
Earthlink (Apache)                                           No
Yahoo! (custom server type)                                  Yes
Il problema è dovuto al firmware del telefono cellulare Motorola T720 GSM/J2ME, che colpisce la sua capacità di scaricare file in frammenti. 

La soluzione solo apparente, quando il download Motorola T720 GSM/J2ME al telefono cellulare, è quello di evitare determinati server web hosting i tipi.  La maggior parte degli altri tipi di telefoni cellulari non hanno questo problema, e quindi questo problema potrebbe ora essere ignorato. 

9.1.6 “Connection unsuccessful.  Try again later.„

Causa # 1
Questo errore non ha nulla a che fare con il server Internet che ospita il file richiesto. 

Se viene visualizzato questo errore, vi suggerisco di fare le seguenti cose: 
(1) Cancella la cache del browser; 
(2) Cancella la cronologia del browser; 
(3) Spegnere il telefono cellulare; 
(4) Rimuovere la batteria; 
(5) Attendere qualche secondo; 
(6) Metti la batteria torna al telefono; 
(7) Potenza del telefono cellulare; 
(8) Prova a scaricare nuovamente l'; 
Ho ricevuto il messaggio di errore “Connection unsuccessful.  Try again later.  per diversi giorni prima dopo aver acquistato un telefono cellulare.  Quindi, da casuale possibilità, ho rimosso la batteria.  Quando ho messo la batteria di nuovo al telefono cellulare, ho immediatamente avuto accesso a Internet. 

Ho ricevuto questo messaggio di errore più volte durante le successive sei mesi, e la procedura di cui sopra ha ripristinato l'accesso a Internet ogni volta.  Non ho determinare quale fase della procedura potrebbe essere la più importante, ma credo che semplicemente rimuovendo la batteria e la messa indietro la batteria al telefono cellulare potrebbe essere sufficiente. 

A mio parere, questo messaggio di errore è troppo vaga.  Perché è stato il tentativo di collegare soccombente?  È stato il telefono cellulare di servizio di rete troppo occupato?  È stato il telefono cellulare di servizio del “server gateway„ non funziona?  È il mio cellulare non ricevere o trasmettere abbastanza potenza del segnale radio?  Quando sarà il momento giusto per tentare il download di nuovo?  Dieci secondi a partire da adesso?  Un'ora da adesso?  Una settimana a partire da adesso?  Il messaggio di errore sarebbe più utile se fosse più specifica circa la causa del problema e se fosse più specifiche su una possibile soluzione. 
Causa # 2
Se si ha uno “Master Reset„, o se non sono mai stati in grado di accedere a Internet, quindi controllare le impostazioni di rete sul telefono cellulare.  Per un esempio di impostazioni di rete (per il Motorola T720 GSM/J2ME telefono cellulare, per AT&T servizio nella zona Los Angeles, California), vedere la sezione specificata dal seguente link: 
AT&T telefono cellulare le impostazioni di configurazione (per la rete)

10. Creazione, offrire, e il download di “suonerie„

10.1 Creare o acquisire una MIDI file (*.mid)

È possibile creare o acquisire una MIDI file audio (*.mid) da qualsiasi fonte.  Ho trovato il tema musicale per la televisione mostra “Knight Rider„ (1982-1986) in MIDI formato (ad esempio, “knightrider.mid„) con una semplice ricerca di Internet. 

L'immagine seguente vi dà un'idea di come un MIDI file viene visualizzato in un editor di MIDI.  Non è necessario disporre di un editor di MIDI per ottenere musica sul tuo telefono cellulare.  È possibile ottenere uno esistente MIDI file (*.mid) da qualsiasi fonte.  Tuttavia, è anche possibile utilizzare un editor di MIDI di vostra scelta per creare il proprio originale di musica polifonica. 
home_studio_midi_knight_rider.jpg
Cakewalk Home Studio: giocare “knightrider.mid„

10.2 Assicurarsi che il server web Internet conosce il tipo MIDI MIME

Se si dispone di un Apache Internet sul server Web, ad esempio, allora si deve modificare uno “.htaccess„ file, aggiungendo le seguenti righe: 
AddType audio/midi mid
Il “.htaccess„ specificare file o annullare la MIME tipi indicati dal server per i file di vari tipi (di solito indicato dalla estensioni dei file, come ad esempio .MID, .GIF, .JAR). 

Se avete già aggiunto altri tipi MIME per altri tipi di file, il tuo completo “.htaccess„ file potrebbe somigliare il seguente testo:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid
Apparentemente, per creare o modificare questo file si traduca in un immediato cambiamento di comportamento Apache server.  Immagino che il server controlli Apache la modifica della data e l'ora della “.htaccess„ file su ogni nuova operazione in entrata, e il server di file ricariche che se la modifica di data e ora è cambiato. 

Se si dispone di un diverso tipo di server web Internet, è necessario stabilire le modalità di specificare MIME tipi, e si deve garantire che *.jar file e file *.jad sono assegnate le opportune MIME tipi. 

Saprete se la MIME tipi non sono stati istituiti se il telefono cellulare si rifiuta di *.jad scaricare i tuoi file e le relazioni il seguente errore: 

“406: Not Acceptable„ 

10.3 Metti il MIDI file (*.mid) su Internet al vostro server web

Ho copiato un MIDI file denominato “kr.mid„ nella directory principale del mio server web Internet.  È possibile utilizzare il software come “Filezilla„ per rendere il trasferimento FTP semplice e conveniente. 

10.4 MIDI scaricare il file sul tuo telefono cellulare tramite il telefono del servizio di servizi Internet

Per il Motorola T720 GSM/J2ME telefono cellulare, scaricare un file MIDI inizia con la “WebAccess„ menu.  Selezione “Go To URL„, seguita da digitando il URL del MIDI file, inizia il download.  Ad esempio, ho digitato in URL seguente:
http://www.colinfahey.com/kr.mid
Se il download è successo, e se si utilizza un Motorola T720 cellular phone, vi verrà data la possibilità di memorizzare il file sul tuo telefono cellulare.  Quando si decide di archiviare il file, si è data la possibilità di immagazzinare semplicemente nel suo insieme di suonerie o invece l'impostazione del file per essere l'attuale suoneria (che inoltre, come effetto collaterale, negozi nella vostra serie di suonerie) . 
Le seguenti immagini riassumere il processo di download e la riproduzione di file MIDI per il Motorola T720 GSM/J2ME telefono cellulare.  Altri J2ME permesso i telefoni cellulari, con altri telefoni cellulari fornitori di servizi, rischiano di avere una simile procedura di download.  Se il tuo telefono cellulare al fornitore di servizi è Verizon, allora siete fuori di fortuna, nessuno di questo lavoro, e si dovrebbe andare a comprare uno “Android„ telefono per aiutare distruggere il “mercato della telefonia chiuso!„ 
t720_screen_midi_download.jpg
Principali (1) schermo: Premere il pulsante per visualizzare il menu principale. 
(2) Main Menu: Vai al “WebAccess„ voce. 
(3) WebAccess: Vai al “Go to URL„ voce. 
(4) Enter URL: Digitare il URL di un MIDI file (*.mid) su un sito web Internet. 
(5) Connecting: attendere per il download per iniziare.  (Se si “406: Not Acceptable„ ricevuto il messaggio di errore, quindi il server Web di Internet non è opportuno assegnare un tipo MIME per MIDI file (*.mid)).) 
(6) Downloading: attendere per il download alla fine. 
(7) Download Complete: Attendere per questo schermo a scomparire. 
(8) MIDI Playback: Il file MIDI comincia a suonare immediatamente.  Premere il pulsante menu per andare al Tone Menu, e continuano a passo (9), oppure premere il pulsante “STORE„ e passare al punto (12). 
(9) Tone Menu: Hai la possibilità di giocare ... 
(10) Tone Menu: Hai la possibilità di ottenere dettagli. 
(11) Details: Qui vediamo la dimensione in byte. 
(12) Store Options: Dal passo (8) siamo in grado di colpire il pulsante “STORE„ per arrivare a questo menu.  Hai la possibilità di immagazzinare al telefono cellulare di raccolta di brani.  Hit “SELECT„ per memorizzare. 
(13) Stored: Il MIDI sintonia è stato memorizzato. 
(14) Total Bytes Transferred: Questa è semplicemente una notifica del numero di byte scaricati, in modo che non sia sorpreso dal vostro prossimo cellulare di servizio bolletta! 

10.5 Giocare MIDI file in qualsiasi momento sul telefono cellulare

È possibile riprodurre il file memorizzati MIDI in qualsiasi momento sul tuo telefono cellulare, ed è possibile utilizzare qualsiasi file come MIDI il tuo anello suono.
t720_screen_midi_playback.jpg
Principali (1) schermo: Premere il pulsante appropriato per andare al menu principale. 
(2) Main Menu: Vai al “Media Center„. 
(3) Media Center: Vai al “My Tones„. 
(4) My Tones: Evidenziazione tono comincia a suonare immediatamente.  È possibile modificare il nome con il “EDIT„ opzione.  Premendo il pulsante del menu offre altre opzioni. 

10.6 Impostare l'anello di stile per l'utilizzo di un file MIDI

Vai attraverso le seguenti schermate di menu:

(1) schermata principale 
(2) Main Menu 
(3) Ring Styles: premere “SELECT„ 
(4) [Silent, Soft, Loud] Detail: premere “CHANGE„ 
(5) Calls: [current ring style/tune]: premere “CHANGE„ 


Scorrere se elenco dei tipi di stili (silenzioso, le vibrazioni stili, permanente anello di brani, ecc), e in basso, vedrete la vostra scaricato brani.  Basta premere il pulsante “SELECT„ per rendere il vostro nuovo anello di sintonizzare attivo! 

11. Creazione, offrire, e il download di immagini

11.1 Creare un 120 * 160 GIF file immagine (*.gif)

La seguente procedura può essere utilizzata per creare un 120 * 160 GIF file immagine (*.gif) adatto per la visualizzazione sul telefono cellulare Motorola T720 GSM/J2ME, sia come immagine di sfondo per la schermata principale, o come un immagine in galleria di immagini. 
(1) Aprire qualsiasi file di immagine con Microsoft Paint o Adobe Photoshop o qualsiasi altra immagine software di editing; 
(2) Scala o ritagliare l'immagine a 120 pixel di larghezza e 160 pixel di altezza (vale a dire, un 120 * 160 pixel); 
(3) Salvare il file in un formato GIF immagine (*.gif); (Adobe Photoshop Entro il modo per farlo è: File -> Export -> Gif89a) 
Il file immagine deve essere in GIF formato di file di immagine in modo che il Motorola T720 telefono cellulare è in grado di decodificare e visualizzare l'immagine.  Se le dimensioni sono esattamente 120 * 160, quindi l'immagine si adatta perfettamente sullo schermo del telefono cellulare Motorola T720, altrimenti l'immagine sarà in bianco frontiere su due lati. 
Nota: ho scaricato con successo e visualizzato uno *.gif file di immagine che è stata 118 * 120 pixel, che è inferiore alla dimensione dello schermo di 120 * 160.  Penso che la restante parte dello schermo viene riempito con un colore selezionato dal confine di immagine.  Forse il pixel di colore del pixel in alto a sinistra l'immagine viene usato come colore per il vuoto che circonda i confini due facce di una immagine. 
Il Motorola T720 telefono cellulare in grado di visualizzare 4096 colori, che credo sia codificato come 12-bit RGB (4-4-4).  Pertanto, credo che le immagini con piccole sfumature di colore che si estendono grandi aree dovrebbe essere evitato, perché i confini di questi gradienti sarà molto evidente e la distrazione di una persona guardando l'immagine.  Inoltre, la stessa GIF formato è limitato a solo 256 colori diversi, per cui una persona ha bisogno di essere consapevoli di tale limitazione, anche.  In ogni caso, è semper più semplicemente per guardare l'immagine sul telefono cellulare per sapere se l'immagine non è adatto per il telefono cellulare. 
si.gif
Space Invaders (Space Invaders): un 120 * 160 GIF immagine

11.2 GIF mettere il file di immagine (*.gif) su Internet al vostro server web

Ho copiato un GIF file denominato “si.mid„ nella directory principale del mio server web Internet.  È possibile utilizzare il software come “Filezilla„ per rendere il trasferimento FTP semplice e conveniente. 

11.3 GIF scaricare il file sul tuo telefono cellulare tramite il telefono del servizio di servizi Internet

Per il Motorola T720 GSM/J2ME telefono cellulare, scaricare un file di immagine GIF inizia con la “WebAccess„ menu.  Selezione “Go To URL„, seguita da digitando il URL del GIF file, inizia il download.  Ad esempio, ho digitato in URL seguente:
http://www.colinfahey.com/si.gif
Se il download è successo, e se si utilizza un Motorola T720 cellular phone, vi verrà data la possibilità di memorizzare il file sul tuo telefono cellulare.  Quando si decide di archiviare il file, si è data la possibilità di immagazzinare semplicemente nel suo insieme di immagini o invece l'impostazione del file da sfondo l'attuale (vale a dire, “carta da parati).„ 
Le seguenti immagini riassumere il processo di download GIF file di immagine per il Motorola T720 GSM/J2ME telefono cellulare.  Altri J2ME permesso i telefoni cellulari, con altri telefoni cellulari fornitori di servizi, rischiano di avere una simile procedura di download.  Se il tuo telefono cellulare al fornitore di servizi è Verizon, allora siete fuori di fortuna, nessuno di questo lavoro, e si dovrebbe andare a comprare uno “Android„ telefono per aiutare distruggere il “mercato della telefonia chiuso!„ 
t720_screen_image_download.jpg
(1) WebAccess: Vai al “Go to URL„ voce. 
(2) Enter URL: Tipo URL nel GIF di un file di immagine (*.gif) su un sito web Internet. 
(3) Connecting: attendere per il download per iniziare.  (Se si “406: Not Acceptable„ ricevuto il messaggio di errore, quindi il server Web di Internet non è opportuno assegnare un tipo MIME per GIF file di immagine (*.gif)).) 
(4) Anteprima di immagine scaricato, con opzione di “STORE„ (negozio) l'immagine nella memoria del telefono cellulare; 
(5) Store Options: GIF L'immagine può essere semplicemente immagazzinati, oppure può essere utilizzato per sostituire l'attuale “sfondo„ (sfondo della schermata principale), o può essere utilizzato “come„ screen saver (vale a dire, l'immagine che verrà visualizzato quando il telefono cellulare pulsanti non sono stati premuti per un determinato periodo di tempo). 
(6) Changed: Wallpaper [image name]: Questa è semplicemente una notifica che “lo„ sfondo l'immagine è stata modificata. 
(7) La comparsa della schermata principale del telefono cellulare dopo la “carta da parati„ (vale a dire, di fondo) l'immagine è stata modificata.  La “Space Invaders„ hanno conquistato il mio telefono cellulare! 

11.4 GIF immagine animata per l'uso “come„ screen saver sul telefono cellulare

Per scaricare un animato GIF immagine da utilizzare come “screen„ saver immagine sul tuo telefono cellulare, è sufficiente seguire le istruzioni nella sezione precedente del presente documento per la preparazione e il download di un'immagine. 
Se l'immagine è GIF uno GIF l'animazione, quindi “lo„ screen saver mostrerà questa animazione. 
Basta impostare l'immagine come “lo„ screen saver immagine dopo l'immagine è stata scaricata. 
La seguente immagine animata GIF può essere utilizzato come uno “screen saver„ animato immagine Motorola T720 GSM/J2ME sul telefono cellulare. 
sun.gif
Un immagine GIF animate che possono essere utilizzate come uno “screen saver„ animazione immagine Motorola T720 GSM/J2ME sul telefono cellulare.
Purtroppo, il telefono cellulare Motorola T720 non animare l'immagine di “sfondo.„  Sarebbe stato molto awesome per aprire il telefono cellulare e vedere l'animazione uno sfondo sulla schermata principale!  :^( 

Si vedrà soltanto uno animato GIF appaiono sul Motorola T720 telefono cellulare quando il telefono entra in “modalità salvaschermo,„ che potrebbe richiedere 30 secondi o più per iniziare.  (È possibile impostare questo ritardo in uno dei menu.)  L'illuminazione dello schermo è probabile che prima di disattivare lo screen saver appare.  “Lo„ screen saver non viene visualizzato nel corso di una chiamata telefonica attiva.  Pertanto, in considerazione di tutti questi fatti, “lo„ screen saver caratteristica del Motorola T720 telefono cellulare è piuttosto zoppicante. 

12. Motorola T720 GSM/J2ME cellulare impostazioni per il telefono cellulare AT&T rete

12.1 Introduzione

Questa sezione del presente documento è improbabile che questa sia utile a nessuno, perché questa sezione descrive le impostazioni per un periodo molto specifiche del telefono cellulare (Motorola T720 GSM/J2ME) per un periodo molto specifiche del telefono cellulare al fornitore di servizi (AT&T) per una regione molto specifici (Southern California).  Tuttavia, includere queste informazioni per interesse storico. 

12.2 Web Sessions impostazioni

Main Screen
  Main Menu
    More... (Not necessary if list view instead of icon view)
      Web Sessions
        mMode (NOTE: Do [New Entry] if no nMode entry)
          (*** Hit menu key, not LAUNCH! ***)
            Edit
              Name:           mMode
              Homepage:       http://home
              WAP IP 1:       10.250.250.250
              WAP Port 1:     9203
              WAP IP 2:       10.250.250.250
              WAP Port 2:     9203
              Timeout:        2 minutes
              CSD No. 1:      ____________ (blank)
              User Name 1:    ____________ (blank)
              Password 1:     ____________ (blank)
              Speed (Bps) 1:  9600
              Line Type 1:    ISDN
              CSD No. 2:      ____________ (blank)
              User Name 2:    ____________ (blank)
              Password 2:     ____________ (blank)
              Speed (Bps) 2:  9600
              Line Type 2:    Modem
              GPRS APN:       proxy
              User Name:      ____________ (blank)
              Password:       ____________ (blank)
Inoltre, vi è un DNS per Java programmi:
Main Menu
  Settings
    Java Tools
      DNS IP:  10.250.1.10

12.3 Commenti

(1) Fare “un„ ripristino saranno definiti i WAP Port numeri “9201,„ in modo queste devono essere modificate per “9203.„ 

Il (2) secondaria WAP IP and Port è impostato alla stessa IP e porta come principale WAP impostazioni.  Sono stato in grado di utilizzare “mMode„ (vale a dire, vai a qualsiasi URL) con uno totalmente vuoto WAP secondario, ma ho avuto “Line Type 1: Modem„ in quel momento.  Non so se l'impostazione di “ISDN„ rende più probabile che il secondario WAP impostazioni verranno utilizzati. 

(3) “un„ ripristino “Timeout:„ rende il campo “15 minutes„.  Cambia il valore di “2 minutes„. 

(4) Il “Name:„, “Homepage:„, “GPRS APN:„ e coinvolgere tutti i campi digitando in lettere e simboli manualmente. 

(5) I campi che sono indicati nel vuoto l'esempio di cui sopra sono davvero destinato a non avere alcun testo inserito.  Gli spazi vuoti non sono accidentali. 

13. Link ad altri cellulare risorse

13.1 Motorola J2ME SDK 3.0

Motorola ha un kit di sviluppo software SDK che include un emulatore in grado di emulare molte Motorola cellulari, compresi i T720.  È possibile ottenere questo SDK gratuitamente, e non avete bisogno CodeWarrior di utilizzare il telefono cellulare emulatore fornito con il SDK, nonostante tutti la menzione di CodeWarrior sulla Motorola sito web.  Inoltre, in generale, credo che si può ottenere senza CodeWarrior o Motorola SDK anche se si sta facendo di sviluppo professionale per il T720.

È necessario registrarsi con Motorola anche per conoscere le loro J2ME SDK, e tanto meno il download. 

http://kb.motorola.metrowerks.com/motorola/developmentTools.do

Ci sono alcune funzioni per la riproduzione e “Compact MIDI„ anche “*.wav„ file.  Installare e leggere la documentazione per ulteriori dettagli. 
Ecco un commento che ho ricevuto in un messaggio e-mail:
Il Motorola J2ME SDK ti dà (tra le altre cose) “di pelli„ per l'emulatore in modo che l'emulatore sarà simile il telefono cellulare si sta per programmazione.  E 'più di cosmetici.  Dimensioni dello schermo possono variare per esempio, se stai progettando qualcosa in cui le dimensioni dello schermo, il che sicuramente aiuta ad avere un emulatore che corrisponde al bersaglio.  Il SDK comprende anche alcuni Motorola creato aperto Java classi chiamato Lightweight Windowing Toolkit che danno alcuni di voi ciò di cui hai bisogno per creare una domanda con una vera e propria UI - UI vari widget. 

È possibile ottenere senza, ma se si sta facendo un lavoro serio che ti sarebbe probabilmente vuole che ne hanno bisogno.  Se mi è stata la creazione di roba per Sony Ericsson o Nokia o qualsiasi altro telefono cellulare, mi vogliono loro SDKs troppo. 
Ecco una citazione da Motorola's sito web per quanto riguarda la loro SDK:
Il Motorola Software Development Kit (SDK) per il J2ME™ piattaforma è uno strumento utilizzato per lo sviluppo e la sperimentazione programmi scritti nel linguaggio di programmazione Java.  Il SDK include applicazioni che lo rendono facile da lanciare MIDlets (J2ME™ Programs) utilizzando il dispositivo Motorola J2ME™ emulatore.  Insieme, questi strumenti permettono di sviluppare ed eseguire il debug delle vostre J2ME™ programmi in emulazione prima del loro scaricamento di un dispositivo di destinazione.  Il Motorola SDK può essere integrato in Metrowerks' CodeWarrior™ Wireless Studio, Professional Edition, Version 7. 

Questa versione del SDK include numerosi miglioramenti per le prestazioni e la stabilità.  Tutte le funzionalità della precedente versione è supportata, con queste nuove caratteristiche: 

Nuovi telefoni supportati da questa versione: A830. 

Nuova funzionalità supportata da questa versione: 

A830 - Gaming API, Serial Port Connettività, HTTPS protocollo di sostegno.
All devices - Miglioramento prestazioni grafiche

Il SDK supporta i seguenti dispositivi:
*Motorola Accompli (008/6288 and 388)™
*Motorola T280i
*Motorola T720
*Motorola v60i
*Motorola v66i
*Motorola iDEN i1000
*Motorola iDEN Platform
*Motorola StarTAC™
*Motorola i85s

13.2 Sun ONE Studio 4 update 1, Mobile Edition

Un mio amico apparentemente non aveva alcun problema a scaricare e utilizzare questo toolkit - che apparentemente vi offre tutto ciò di cui avete bisogno (JDK, MIDP, CLDC) e strumenti extra per rendere il JAD, ecc  Non ho provato io stesso.  Qui ci sono altri commenti su questo toolkit: 
Citazione da un Slashdot distacco: 
Potresti aver salvato un po 'fastidio l'installazione di tutti i diversi strumenti.  Basta scaricare [sun.com] Sun ONE Studio 4 update 1, Mobile Edition, il suo completamente gratuito (come nella birra), ed è un ottimo ambiente di sviluppo integrato (circa 20 MB download).  Tutti gli strumenti, emulatori e demo da questo articolo sono in bundle.  Dal momento che la settimana scorsa mi sono pubblicati sotto RH Linux 7.2, con 512mb di ram (YOU NEED LOTS OF RAM!!!). 

Ha preso un solo minuto [sun.com] da saltare il regestration schermo per rafforzare attraverso il worm gioco nel debugger  (I semper amore del gioco Worm / serpente / stuzzichini in tutte le sue incarnazioni, e la versione demo è previsto magnificamente programmato - semplice ma object-oriented e multi-threaded in una piccola quantità di codice). 

È necessario registrarsi per il download.  Piattaforme supportate: Linux, Windows, Solaris.
Citazione da un Slashdot distacco:
Dal sun scaricare faq [sun.com]: 
“A causa del modo in cui il nostro servizio di download maniglie sessione di gestione, non è possibile riprendere il download parziale facendo clic sul link di nuovo nella finestra del browser.  Invece, aprire il programma di download manager che si sta usando, e riprendere il download all'interno del download manager stesso.

Noi continuiamo a lavorare con i nostri ingegneri di abilitare il supporto per maggiori gestori di download su più piattaforme.  Per ora, tuttavia, si prega di spegnere tutti gli altri gestori di download e servizi di pubblica utilità se si hanno problemi di download.„
Download di file di grandi dimensioni da sun sotto linux è stato veramente difficile per circa un anno ormai.  L'unico download manager fino a poco tempo fa ero stato in grado di far funzionare è stato DAP sotto windows (attenzione: Spyware).  Fondamentalmente la maggior parte gestori di download (prozgui, getright, opera) non sarà in grado di affrontare con Sun's [insincerità].  Ridicolmente, piuttosto che fissare il proprio sito web solo a lavorare, Sun hanno scritto i propri download manager [sun.com].  Il suo scritto in java, e il suo unico piccolo 140KB!  La cosa sorprendente è che questo è davvero un ottimo download manager, piccolo ingombro, nessun dirottamento del browser, nessun adware / spyware, funziona sotto qualsiasi OS, la verifica automatica dei file, unzips automatico, e solido come una roccia 

13.3 Random forum di distacco:

Il Jad e Jar file sono i soli file necessari per eseguire un'applicazione su un telefono cellulare e, a seconda del telefono cellulare e il metodo che si stanno trasferendo l'applicazione al telefono cellulare, è possibile che solo il jar. 

Se le domande devono essere inviate Over the Air (OTA), vale a dire tramite un web URL, hai bisogno di creare un link su una pagina leggibile da parte del telefono (ad esempio wml, cHtml, cHtml) alla JAD file.  Per OTA download si dovrà anche impostare il server web per gestire jar e jad tipi di file.  In apache è necessario aggiungere le seguenti linee al file httpd.conf: 

AddType text/vnd.sun.j2me.app-descriptor jad 
AddType application/java-archive jar 

Inoltre, è necessario assicurarsi che il URL per il jar file è il URL per il JAR file sul server, non il locale URL 

Se invece si desidera trasferire via IR, Bluetooth o un cavo basta trasferire i file al telefono, installare ed eseguire.  JAD Il file è in genere utilizzato specificamente per garantire il telefono cellulare le informazioni necessarie per OTA download e in quanto tale, la Nokia 7650 e di alcuni altri modelli avete solo bisogno di trasferire i file per jar non OTA trasferimenti. 

13.4 http://wireless.java.sun.com/midp/questions/sar/

SAR (o WTP-SAR) sta per Segmentation and Reassembly.  Si tratta di una funzione opzionale di Wireless Transaction Protocol (WTP) entro il WAP.  SAR definisce un metodo per un WAP gateway per rompere un grande messaggio (uno JAR di file che stai scaricando, per esempio) in piccoli pezzi (la segmentazione) e per il telefono cellulare in modo che pezzo di nuovo insieme (il riassemblaggio). 

Non tutti i telefoni SAR uso, ma la maggior parte di accesso server web WAP attraverso un gateway.  Nokia utilizza SAR, mentre Motorola utilizza funzionalità di HTTP 1.1 per recuperare piccole porzioni di un file uno alla volta e poi rimontare essa. 

Un problema che si pone con WAP gateway riguarda MIME tipi restituiti dal server web.  Se un utente richiede una JAD o JAR file e il server restituisce il tipo sbagliato MIME, il gateway e successivamente il telefono cellulare in grado di gestire correttamente il trasferimento.  Per garantire la corretta download di MIDlets, utilizzare la seguente MIME tipi: 

text/vnd.sun.j2me.app-descriptor jad 
application/java-archive jar 

13.5 Random forum di distacco

Bisogna avere le impostazioni corrette MIME sul server che memorizza .JAD/.JAR file.  Dopo di che potrai scaricare applicazioni per il proprio dispositivo.  Si prega di tenere presente che: - questo processo è piuttosto dispositivo specifico (non necessariamente utilizzando WA protocollo)  - È meglio avere percorsi assoluti per .JAD e .JAR insieme (vale a dire http://www.fooserver.com/repository/JoeDoeApp.JAD) 

13.6 Random forum di distacco

Almeno nel Siemens dispositivi, si dispone di una configurazione specifica per Java, che è diverso da quello delle WAP e GPRS.  È possibile navigare attraverso WAP, ma quando uno si trova midlet, una diversa impostazione viene automaticamente cambiato per eseguire il download.  In M50 a portata di mano, dovete impostare il Java profili in base ai parametri del tuo provider, nel c55 a portata di mano, lo stesso gruppo è chiamato “HTTP profile„ ed è utilizzato anche per altri tipi di download (ad esempio, http connessioni in midlet) . 

13.7 Varie link interessanti avanzate midlet firma roba

http://wirelesssoftware.info/midp_2.0/javax/microedition/midlet/doc-files/PKIAppendix.html

13.8 Very cool midlet introduzione di programmazione

http://wireless.java.sun.com/midp/articles/getstart

13.9 http://wireless.java.sun.com/midp/articles/deploy/

Per distribuire la propria rete wireless, applicazioni in remoto: 

Carica il tuo file (JAD e JAR) a un server web remoto.  Se il progetto è chiamato giochi, per esempio, caricare i file: games.jad e games.jar dal bin directory del vostro progetto casa (per esempio, <toolkit>/apps/games/bin).  Si noti che i due file deve finire nella stessa directory sul server. 

Riconfigurare il web server in modo che essa riconosce JAD e JAR file: 

JAD per il tipo di file, impostare l'estensione del file di .jad e MIME il tipo di text/vnd.sun.j2me.app-descriptor. 

JAR per il tipo di file, impostare l'estensione del file di .jar e la MIME tipo di application/java-archive. 

Come si configura il server web dipende da uno che si sta utilizzando.  Ad esempio, se si sta utilizzando Tomcat, assicurarsi che il proprio web.xml file include le seguenti righe: 

<mime-mapping> 
<extension>jad</extension> 
<mime-type>text/vnd.sun.j2me.app-descriptor</mime-type> 
</mime-mapping> 
<mime-mapping> 
<extension>jar</extension> 
<mime-type>application/java-archive</mime-type> 
</mime-mapping> 


Cambia il tuo JAD del file MIDlet-Jar-URL proprietà per specificare il URL del vostro JAR file.  Ad esempio, nella copia di games.jad hai caricato sul server, cambiare ... 

MIDlet-Jar-URL: games.jar 

...  al ...

MIDlet-Jar-URL: http://YourWebServerAddress:port/pathTo/games.jar 

13.10 Varie link

http://www.microjava.com/articles/techtalk/midp?PageNo=3 
http://www.corej2me.com/DeveloperResources/sourcecode/general/multipleMIDlets/index.shtml 

13.11 Nokia J2ME programma di sviluppo link

Da un Nokia sito:
Nokia's J2ME attuazione consiste nella MIDP 1.0 standard del settore e CLDC 1.0.  La piattaforma è prorogato dal Nokia User Interface (UI) API.  Si dà sviluppatori di applicazioni l'accesso a determinate funzionalità di base del telefono che non è specificato da CLDC 1.0 o MIDP 1.0.  Il Nokia UI API fornisce semplice accesso a funzionalità audio, vibrazioni, illuminazione display, così come alcuni grafici relativi accessori. 
Da un messaggio e-mail che ho ricevuto:
Quindi Nokia sembra essere davvero l'apertura è telefoni a qualsiasi tipo di modifica personalizzata è possibile pensare.  Si potrebbe aggiungere vibrazioni java giochi, cartoni animati bolle aggiungere alle immagini di prendere, e caricare foto sul tuo sito!  Si può scrivere il proprio server, e le persone potessero caricare roba per voi! 
Ecco alcuni raffreddare 7650 link:
DOOM sulla 7650!!: http://www.wildpalm.co.uk/Doom7650.html 
Il 7650 pagina: http://www.nokia.com/nokia/0,1522,,00.html?orig=/phones/7650/index.html 
Nokia J2ME FAQ: http://www.nokia.com/nokia/0,5184,2776,00.html 
Scarica SDKs, J2ME tutorial, e di più: http://www.forum.nokia.com 

13.12 Telefono cellulare programma link

(1) http://midlet.org 
(2) http://spruce.jp/freemidlets 
(3) http://www.gameloft.com 
(4) http://www.microjava.com 

14. J2ME rispetto BREW

14.1 Introduzione

Ci sono due dominante piattaforme software per dispositivi mobili: J2ME e BREW.  Molti telefoni cellulari vettori hanno deciso di offrire cellulari con supporto J2ME: AT&T, T-Mobile, e Sprint.  Uno dei principali vettore ha deciso di offrire solo BREW cellulari con supporto: Verizon. 

Un dispositivo mobile che supporta J2ME può eseguire J2ME programmi, ma non può eseguire programmi BREW.  Un dispositivo mobile che supporta BREW può eseguire BREW programmi, ma non può eseguire programmi J2ME. 

I produttori di dispositivi mobili spesso offrono varie versioni basate su diversi standard di trasmissione senza fili.  Ad esempio, Motorola offre due versioni del T720: GSM e CDMA.  Coincidenza, la GSM versione del T720 sostiene J2ME programmi, e la CDMA versione del T720 sostiene BREW applicazioni.  Pertanto, anche se gli standard di trasmissione senza fili non sono tecnicamente correlati al telefono sistemi operativi, le circostanze del mercato hanno portato a questa correlazione accidentale. 

14.2 Telefono cellulare fornitori di servizi di decidere ciò che un cliente può fare con un dispositivo cellulare

Ecco una sintesi di ciò che telefono cellulare fornitori di servizi di consentire ai clienti di fare: 
[A]  AT&T :
   [1] J2ME Applications:
         Download from any site on the Internet, Over The Air (OTA);
   [2] GIF Files (Images):
         Download from any site on the Internet, Over The Air (OTA);
   [3] MIDI Files (Ring Tones):
         Download from any site on the Internet, Over The Air (OTA);
   [4] Data Cable:
         Cannot (officially) be used to transfer files;

[B] Verizon :
   [1] BREW Applications:
         Download for a fee through Get It Now! (GIN), Over The Air (OTA);
   [2] GIF Files (Images):
         Download for a fee through Get It Now! (GIN), Over The Air (OTA);
   [3] MIDI Files (Ring Tones):
         Download for a fee through Get It Now! (GIN), Over The Air (OTA);
   [4] Data Cable:
         Cannot (officially) be used to transfer files;

[C] Sprint :
   [1] J2ME Applications:
         **** UNKNOWN ****
   [2] GIF Files (Images):
         Download from any site on the Internet, Over The Air (OTA);
   [3] MIDI Files (Ring Tones):
         Download from any site on the Internet, Over The Air (OTA);
   [4] Data Cable:
         Cannot (officially) be used to transfer files;

[D] T-Mobile :
   [1] J2ME Applications:
         Download for a fee through T-Mobile's service, Over The Air (OTA);
   [2] GIF Files (Images):
         **** UNKNOWN ****
   [3] MIDI Files (Ring Tones):
         **** UNKNOWN ****
   [4] Data Cable:
         Cannot (officially) be used to transfer files;
AT&T offre i migliori clienti e gli sviluppatori l'accesso ai telefoni cellulari e dispositivi di file multimediali su Internet.  Evidentemente, AT&T ha deciso di concentrare l'attività di trasporto di byte attraverso le loro reti, piuttosto che tentare di essere nel business della vendita di contenuti multimediali. 

Verizon è la più opprimente del telefono cellulare al fornitore di servizi di tutti.  “Get It Now.„  loro modello di business, che coinvolge clienti limitando artificialmente l'uso del proprio telefono cellulare dispositivi per proteggere l'attività di vendita di contenuti multimediali, ha ispirato molti clienti frustrati per terminare i loro contratti con Verizon o trovare il modo di bypassare il “Get It Now.„  portale.  Proprio come cinema e arene sportive possono praticare prezzi estremamente elevati per i prodotti alimentari, perché i clienti non possono accedere facilmente a fonti alternative di cibo in tali circostanze (ad esempio, vi è una mancanza di accesso alla concorrenza), Verizon possono praticare prezzi estremamente elevati per l'accesso ai file multimediali e programmi software, perché i clienti non possono accedere facilmente a fonti alternative per i file multimediali e programmi software. 

14.3 Binary Runtime Environment for Wireless (BREW)

BREW è “Binary Runtime Environment for Wireless, una piattaforma software proprietario sviluppato da QUALCOMM.  Per saperne di più su BREW, visitare il seguente sito Internet: 

http://www.qualcomm.com/brew

Il SDK può essere scaricato dal Qualcomm.  Nel 2002, il SDK potrebbero essere utilizzate per costruire il software utilizzando Microsoft Visual C++ 6.0, ei programmi potrebbero essere trasferiti ad un telefono cellulare senza “una„ prova “firma.„ 

Tutti i cellulari con contratti Verizon uso BREW.  Tutti i software, immagini, musica e deve essere trasferito attraverso Verizon's “Get It Now.„  portale, e di solito coinvolge pagamento delle tasse al di là dei costi di larghezza di banda della rete. 

14.4 Java 2 Platform, Micro Edition (J2ME)

J2ME è “Java 2 Platform, Micro Edition„, “altamente ottimizzato„ Java ambiente runtime.  Per saperne di più su J2ME, visitare il seguente sito Internet: 

http://java.sun.com/j2me

Potrebbe hanno già fatto alcuni Java programmazione.  J2ME include molte delle classi Java utilizzato per programmi di computer desktop.  Ovviamente, qualsiasi Java classi che sono puro Java codice, e non dipendono da alcun hardware o sistema operativo funzioni, possono essere compilati per l'esecuzione nel contesto di qualsiasi Java macchina virtuale. 

Una persona può creare fili, prese, grafica tele, ecc, molto facilmente.  Una persona che ha bisogno solo di scaricare un file *.JAR (ed eventualmente un file *.JAD) per installare una domanda su un telefono cellulare. 

Scaricare il Java SDK è gratuito.  La documentazione per Java è approfondita.  Milioni di persone hanno sviluppato il codice per Java.  Ci sono numerosi forum di discussione Internet vari aspetti della programmazione Java. 

Nel verbale della semplice ricerca in Internet, ho trovato centinaia di interessanti programmi software, e le immagini, e gli effetti sonori, tutti per la Motorola T720 GSM/J2ME telefono cellulare - e tutti i file costa nulla per il download. 

Sono molto eccitato da essere in grado di trarre pieno vantaggio dalla multimediali aspetti della mia proprietà (vale a dire, il mio telefono cellulare) senza dover pagare il mio telefono cellulare fornitore di servizi per più di niente l'uso della loro rete cellulare. 

14.5 Il mio BREW e Verizon storia di orrore

Ho creato un software per entrambe le J2ME e BREW piattaforme, e, a mio parere, credo che entrambe le tecnologie hanno i loro vantaggi e svantaggi, ed entrambi sono perfettamente in grado di essere utilizzato per creare sofisticati programmi molto facilmente. 

Tuttavia, un business che è interessato a creare e vendere software per telefoni cellulari dovrebbe iniziare da considerare una sola domanda: “Se io sviluppare il software, mi sarà consentito di vendere?„ 

Se si sviluppa un software per la piattaforma J2ME, quindi la maggior parte del telefono cellulare i fornitori di servizi di consentire ai clienti di accedere a qualsiasi sito Internet e scaricare alcun software J2ME, senza imporre al di là di ogni costo il costo del trasferimento di byte attraverso la rete cellulare.  Così, uno sviluppo di software aziendale è certa di essere in grado di avere accesso a potenziali clienti, e può fare le proprie modalità per la raccolta di denaro da parte dei clienti per qualsiasi software acquisti. 

Se si sviluppa un software per la piattaforma BREW, quindi Verizon decide se il software non sarà disponibile per la vendita ai clienti.  Inoltre, sarà estratto Verizon una grande percentuale del prezzo di vendita del software per il privilegio di essere autorizzati a vendere il software attraverso il loro portale esclusivo. 

Qui è il mio BREW e Verizon storia di orrore: 

Ho avuto un idea per un programma software per i telefoni cellulari in un momento in cui i telefoni cellulari sono state cominciando a essere in grado di eseguire BREW e J2ME programmi.  Ero molto eccitato perché ho creduto che avrei potuto creare e pubblicare un unico programma per queste piattaforme a lungo prima di qualsiasi concorrenti sarebbero pronti a creare un prodotto simile.  Ero convinto che io possa finalmente fare qualcosa nella mia vita che mi fanno ricchi.  Quindi, mi chiudere il mio lavoro e ha iniziato a lavorare su una versione BREW della mia idea di software.  Dopo sei mesi di duro lavoro, reddito e non, mi è stato finito con il mio programma BREW!  Ero pronta a presentare al Qualcomm per le prove. 

Che quando ho fatto una scoperta raccapricciante: Anche se il mio programma ha superato la prova di certificazione della qualità, Verizon avrebbe dovuto approvare la vendita di software per il mio - e Verizon potrebbe disapprovare il mio software per qualsiasi motivo (al di là delle ovvie ragioni di essere offensivo o in concorrenza con un altro aspetto della Verizon's imprese).  Ho semplicemente non immaginare questa possibilità.  Tutto quello che ho letto su BREW sviluppo implicito che la sfida era quella di passare le prove di certificazione della qualità.  Nulla di cui ho letto la necessità di avere il software approvato dal telefono cellulare fornitori di servizi.  Io non sono stati sorpresi di apprendere che il telefono cellulare fornitori di servizi potrebbero scegliere di non vendere offensivi o programmi dannosi, ma tali considerazioni sembrava così poco importante per il mio progetto particolare che io non pensare al più generale concetto di telefono cellulare che i fornitori di servizi possono scegliere a non vendere ordinaria programmi software! 

Uno dei miei amici, che avevano già venduto più di videogiochi attraverso programmi Verizon, ha chiesto a un rappresentante Verizon se Verizon avrebbe approvare il mio software per la vendita sul loro rete ...  Il rappresentante Verizon ha “detto:„ no, perché ci sono stati alcuni altri programmi software che in genere già ampio.  Il mio software è stato un vocabolario tutor (con particolare considerazione per la SAT e GRE test standardizzato), ma il Verizon rappresentante ha detto che il gioco di parole genere era già “affollato,„ nonostante il fatto che vi erano meno di 10 testi relativi programmi in totale “Aggiudicati Subito.„  Portale, e gli altri programmi sono stati molto diversi (ad esempio, cruciverba, “Scrabble„, “Boggle„, ecc.)  Il mio programma è stata una conquista tecnologica: E 'memorizzato le definizioni di vocabolario di 5000 parole, insieme con i sinonimi e antonyms, parola e significato gruppi (in modo che il quiz domande sarebbe impegnativo), in un programma che è stato inferiore a 1 MB.  Il mio programma sarebbe stato unico sul mercato per molti mesi, e potenzialmente per un paio di anni. 

Ero arrabbiato, depresso, e finanziariamente rotto.  Sei mesi di lavoro è stata sprecata, perché tutti i Verizon voleva solo il software che è stato certo di vendere migliaia di copie di vendita nel loro portale, e il rappresentante Verizon non pensare il mio software ha un elevato potenziale di vendita. 

Qui è la lezione più importante che ho imparato da questa amara esperienza:  Controlla ogni parte di un piano aziendale prima di iniziare il lavoro.  (Idealmente, ogni parte del piano d'impresa potrebbe essere testato ripetutamente, dalla effettiva esecuzione delle varie procedure di critica, prima e durante il tentativo di creare il prodotto.) 

Avrei dovuto verificare se o non vi sarebbe alcun ostacolo probabilmente a vendere il mio software prima ho iniziato a sviluppare il software.  Mi hanno scoperto che Verizon potrebbe scegliere di non mi permetta di vendere il mio software. 

Ho imparato una seconda lezione:  Evitare situazioni in cui altre persone hanno la capacità di determinare se o non avete accesso a clienti! 
colinfahey.com
informazioni di contatto
English  Español  Português  Français  Italiano  Deutsch  Nederlands  Svenska  Dansk  Suomi  Norsk  Русский  Polski  Română  Български  Hrvatski  Česky  中国  中國  日本語  한국어  Ελληνική  हिन्दी  العربية