J2ME de desarrollo de software para teléfonos celulares
(2002)
Colin Fahey

Motorola T720 teléfono celular, se muestra abierto
1. Advertencia
Este documento está obsoleto! La información contenida en este documento podría haber sido válido y útil en el año 2002, pero muchas cosas han cambiado en años posteriores! Este documento sólo debe ser considerado como un interesante registro histórico del año 2002. No confiar en cualquier información o asesoramiento en este documento. Toda la información técnica en este documento es muy obsoleta.
Descarga de la libre creación de software, auto-creado imágenes, y auto-creado teléfono melodías de alerta (es decir, “tonos de llamada),” es relativamente raro y difícil en el año 2002. Lamentablemente, seis años más tarde, algunos teléfonos celulares los proveedores de servicios (incluidos los Apple, que proporciona el software exclusivo y “tono de timbre” para el portal iPhone) sigue imponiendo restricciones a la descarga de software, imágenes y música, teléfono celular, porque los proveedores de servicios gozan de gran beneficios financieros mediante el control de este tipo de descargas.
Afortunadamente, los teléfonos celulares, tales como aquellos en los que participa la “Android” plataforma de software, siempre poner fin a la capacidad de las empresas para crear y explotar los mercados cerrados para esos usos de los teléfonos celulares. Aunque los consumidores voluntariamente adquiridos teléfono celular que los planes de servicio incluyen costes muy elevados para la descarga de software, imágenes y música, esto se debe a que el limitado número de teléfono celular opciones de servicio disponibles.
La dinámica económica que han permitido a algunas empresas a crecer a dominar el mercado no debe interpretarse como una aprobación implícita fuerte por los consumidores. A medida que las empresas empiezan a dominar y, a continuación, hacen difícil o imposible para los competidores entrar en el mercado, las empresas dominantes pueden ofrecer productos que combinan un elevado valor positivo (por ejemplo, la capacidad de comunicarse desde cualquier lugar) con un alto valor negativo (por ejemplo, los altos precios conveniente para software, imágenes y música, todos los que de otro modo serían de libre acceso, por lo tanto, el servicio agrega valor negativo). Ningún consumidor se ve obligado a comprar un teléfono celular, pero no hay duda de que la dominante de teléfonos celulares los proveedores de servicios han ido creado las condiciones que no se puede considerar un “mercado libre.” Por lo tanto, el servicio de telefonía celular del mercado ha sido “económicamente” ineficiente y ha sido una carga indebida sobre los consumidores.
Ojalá, los requisitos que el servicio de teléfono celular radiofrecuencias a disposición de la competencia los servicios de restablecer los valores normales de mercado para la transferencia de datos, por ejemplo, teléfono celular que los proveedores de servicios están nuevamente reducidos a meros portadores de datos (es decir, sólo ofrecer el ancho de banda), en lugar de información o proveedores de entretenimiento !
El negocio de transporte de datos deben ser separados de la actividad de venta de datos, de lo contrario, habrá un incentivo para el transporte de datos de empresas a bloquear los competidores de la venta de datos a través del mismo canal de transporte de datos.
El video juego de consola del mercado sufre del mismo problema. Los fabricantes de la consola de videojuegos de hardware están en el negocio de la creación de dispositivos que puede mostrar video juegos, pero esas mismas empresas también tienen el control exclusivo de la transferencia de software a las consolas de videojuegos. Por lo tanto, es un incentivo para la consola de vídeo juego a los fabricantes a los competidores de bloquear la venta de software para la consolas de videojuegos. Si una consola de videojuegos fabricante de hardware se centró en el diseño y la fabricación de hardware que podrían ser vendidas a un beneficio (en lugar de en una pérdida significativa, al igual que con la X-Box y PlayStation y Nintendo consolas de videojuegos) y, a continuación, el video juego del mercado que prospere, y la calidad de los mejores juegos de video que mejorar de manera espectacular, y el costo de videojuegos se derrumbaría.
2. Tema índice
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
3. J2ME herramientas de desarrollo
En esta sección se describe cómo descargar las herramientas de desarrollo que pueden ser utilizados para compilar el código fuente J2ME en archivos de clase adecuado para dispositivos móviles. Tenga en cuenta que el Sun “J2ME Wireless Toolkit,” que se examina en una sección posterior de este artículo, requiere la descarga de la Java SDK se describe en esta sección.
3.1 JDK 1.4 (o posterior)
Esto significa que necesitas convencional Java 2 SDK de Sun. He descargado y utilizado a través de la versión 1.4 el siguiente enlace:
Esto es lo que la página de descarga tiene el siguiente aspecto:
Inicie el programa de instalación. Instalar en la ubicación predeterminada ( c:\j2sdk1.4.0_03 ) a menos que sean capaces de resolver vía los problemas que puedan surgir.
3.2 Connected Limited Device Configuration (CLDC)
No voy a pretender saber de qué se trata esto, pero yo simplemente descargado desde el sitio web Sun.
Aquí es lo que el principal CLDC descargar la página web tiene el siguiente aspecto:
1.0.3 sólo estaba disponible en el momento que visité.
Con el fin de descargar este, que necesitaba para inscribirse en Sun sitio web. He creado el siguiente perfil:
Username: anon***anon
Password: nospamplease
Favorite color: blue
Full name: Prof. Anon Nospamplease
He descargado el archivo siguiente:
j2me_cldc-1_0_3-fcs-src-b17-winunix-14_sep_2001.zip
I descomprimido a la siguiente directorio:
Me cambió el nombre del directorio “cldc-1_0_3-fcs” simplemente:
cldc (es decir, la ruta completa es c:\j2me\cldc)
3.3 Mobile Information Device Profile (MIDP)
No voy a pretender saber lo que esto sea, pero yo simplemente descargado desde el sitio web Sun.
Esto es lo que MIDP la principal página web de descarga tiene el siguiente aspecto:
He descargado el archivo siguiente:
j2me_midp-1_0_3-fcs-src-b26-win-19_sep_2001.zip
I descomprimido a la siguiente directorio:
Me cambió el nombre del directorio “midp-1_0_3-fcs” simplemente:
midp (es decir, la ruta completa es c:\j2me\midp)
3.4 Configuración de herramientas
3.4.1 Establecer rutas
Añada las siguientes líneas a su AUTOEXEC.BAT archivo:
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%
A continuación, la fuerza de estas variables para la recarga mediante la ejecución del archivo por lotes:
También puede configurar estas mismas variables usando la variable de entorno Windows panel de control.
Observe que he elegido para especificar explícitamente el directorio caminos a mi versión actual de la Java 2 SDK. Por lo tanto, si actualizo, entonces tengo que modificar el archivo AUTOEXEC.BAT para especificar los nuevos directorios.
3.4.2 Compruebe la Jave 2 SDK binarios
Una vez que los ajustes se aplicarán, usted debería ser capaz de ejecutar la herramienta Java programas desde la línea de comandos sin especificar la ruta completa a los programas de la herramienta.
El siguiente comando se iniciará el teléfono celular emulador de dispositivo:
La siguiente imagen muestra el teléfono celular emulador de dispositivo:
4. Simple J2ME programa
4.1 Escriba el código Java
Utilizando cualquier editor de texto, una persona puede escribir en el código, como por ejemplo para este HelloMIDlet.java archivo de código fuente:
Aquí está el código en texto sin formato:
// 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 compilar código para *.class
Precaución: El siguiente comando debe estar en una sola línea, pero se ha ampliado a varias líneas de texto sólo en aras de la claridad.
(Directorio actual: C:\HelloMIDlet)
javac
-target 1.1
-d .\
-bootclasspath c:\j2me\midp\classes
HelloMIDlet.java
Nota: El “-target 1.1” es necesaria para evitar un error en el futuro “preverify” etapa. Al parecer, este tiene algo que ver con un problema con MIDP 1.0.3 apoyo en JDK 1.4.
4.3 Preverify para generar un nuevo archivo *.class
(Directorio actual: C:\HelloMIDlet)
preverify -classpath c:\j2me\midp\classes;. HelloMIDlet
Esto genera un nuevo archivo en *.class un nuevo subdirectorio llamado “output” (por defecto).
4.4 Prueba el nuevo archivo *.class
(Directorio actual: C:\HelloMIDlet)
midp -classpath c:\j2me\midp\classes;.\output HelloMIDlet
Así se inicia el emulador de teléfono, lo que indica que el nuevo “output” directorio contiene algunos de los archivos necesarios *.class.
La siguiente imagen muestra el resultado esperado.
4.5 Crear un nuevo archivo de texto, “manifest.mf”, y editar el archivo
A “manifest.mf” archivo es esencial para obtener un teléfono celular real para interpretar el contenido de un archivo *.jar. Si un archivo “manifest.mf” no está incluido dentro de la *.jar archivo y, a continuación, el teléfono celular puede descargar con éxito la *.jar archivo, pero podría dejar de interpretar el archivo descargado, posiblemente un error de información, tales como “Unsupported Content Type”.
El siguiente es un ejemplo de un simple archivo “manifest.mf”.
Aquí está la “manifest.mf” archivo como texto sin formato:
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
Observe que el CLDC y MIDP versiones se especifican en este archivo. Ser muy prudente y conservador cuando la redacción de los diferentes campos en este archivo. Si usted recibe “File Corrupt” errores y, a continuación, intenta eliminar todos los campos que no se muestran en este ejemplo. También, poner los campos en el orden en que aparecen en el ejemplo. Asimismo, reducir el valor de cada campo tanto como pueda, y mantener los caracteres limitado a simples letras, dígitos, los períodos, y guiones. Algunos servicios de telefonía celular y teléfonos celulares, pueden tolerar más la variación del campo de pedidos y contenido de los campos.
Precaución:
“jar” Cuando el programa se utiliza para crear un archivo *.jar, “manifest.mf” y el archivo se especifica como el manifiesto de archivo, el programa “jar” reza el manifiesto de archivo y podría añadir más campos, ya que crea un archivo llamado “MANIFEST.MF” dentro de la producción *.jar archivo. Por lo tanto, si la “MANIFEST.MF” archivo se extrae de una *.jar archivo y, a continuación, se compara con el original “manifest.mf” archivo especificado durante la creación de la *.jar, los dos archivos puede ser diferente, con la “MANIFEST.MF” archivo que contiene varios campos que el archivo original “manifest.mf” .
No “MANIFEST.MF” extracto de un archivo desde un archivo y *.jar intento de formar un nuevo *.jar archivo con el archivo que se manifiestan. Si “MANIFEST.MF” extracto de un archivo desde un *.jar archivo y, a continuación, asegúrese de eliminar todos los campos excepto los que se muestra en el ejemplo “manifest.mf” archivo se muestra arriba.
Nota:
Iconos para programas aparentemente no aparecen en el Motorola T720 teléfono. Esta es la razón por la que no puedo describir mis MIDlet con un icono. Sin embargo, la siguiente muestra cómo configurar un icono para el programa en el manifiesto de archivo:
MIDlet-1: My_Description, /icon.png, HelloMIDlet
En el desarrollo de los teléfonos celulares que hacer para mostrar iconos de aplicaciones, especifique el icono de nombre de archivo, y agregar el icono de archivo de imagen a sí mismo en la *.jar archivo especificando el nombre del archivo entre los nombres de archivo de los expedientes que se añade a la *.jar archivo.
4.6 Ponga el archivo “manifest.mf” y *.class archivo en un archivo *.jar
El siguiente comando crea un archivo *.jar. *.jar El archivo contiene el archivo especificado manifest.mf, y contendrá la *.class archivos encontrados en el directorio especificado.
Directorio actual: C:\HelloMIDlet
jar cfm hi.jar manifest.mf -C .\output HelloMIDlet.class
Complejo ejemplo hipotético de la creación de un archivo *.jar
Supongamos que un icono de archivo de imagen (por ejemplo, “icon.png”) es que aparezca en un archivo *.jar como “/icon.png”. (Nota: Programa de iconos no aparecen en el Motorola T720 teléfono celular, pero no aparecen en otros tipos de teléfonos celulares, y aparecen en el MIDP emulador).
Supongamos que hay un directorio llamado “images” con archivos de imagen (formato *.png). Supongamos que este directorio, y todas las imágenes contenidas en el directorio, debe ser accesible a la Java programa por la relativa /images directorio (por ejemplo una imagen que “a.png” sería accesible utilizando la ruta de acceso “/images/a.png”).
Supongamos que todos los archivos *.class producido por el comando preverify están contenidas en un directorio llamado “verified”. Por ejemplo, verificar la versión de la clase principal, “MyApp.class”, se “verified” en la carpeta, junto con las otras clases del programa. Todas estas clases son para ser accesible en el directorio raíz de la *.jar archivo.
El siguiente comando creará un archivo *.jar que logre los diversos objetivos especificados en los apartados anteriores. Precaución: el comando se ha ampliado a varias líneas de texto sólo aquí en aras de la claridad. Al entrar en el comando en el símbolo del sistema, el comando no debe contener saltos de línea, de lo contrario el intérprete de comandos interpretará el texto introducido como varios comandos independientes.
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 final del mando es difícil de entender. Se tiene el siguiente significado: “Cambie el directorio de trabajo actual a .\verified y, a continuación, poner *.class todos los archivos encontrados en el directorio '.' relativa (es decir, todos los *.class archivos en el directorio de trabajo actual) en el archivo *.jar.” Debido a que el directorio se había cambiado antes de especificar la ruta de acceso de las clases para poner en el *.jar archivo, la ruta de acceso local no aparecerán en la ruta de acceso relativa cuando los archivos se colocan en el archivo *.jar.
Por ejemplo, supongamos que la verificación de las clases son en el siguiente directorio:
C:\MyApp\verified
Supongamos que hay archivos de clase como las siguientes:
C:\MyApp\verified\w.class
A continuación, especificando “-C .\verified .” en el comando para crear el archivo *.jar, a partir de un directorio actual de “C:\MyApp”, se traducirá en “w.class” están en el directorio raíz de la *.jar archivo. </ e>
Advertencia: Si el “-C” opción se especifica, cambia el directorio de trabajo actual en ese momento de la transformación global de la secuencia de comando parámetros para el comando jar. Por lo tanto, el comando podría jar se quejan de que no puede encontrar otros archivos mencionados en el mando más allá de los parámetros “-C” opción. Si esto ocurre, basta con mover el “-C .\verified .” a ser el final de los parámetros de comando general.
A continuación se muestra salida verbosa de la 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 Crear y editar un nuevo archivo *.jad
A *.jad archivo es necesario para que el teléfono celular puede describir un programa de ordenador a una persona antes de que la persona decide a descargar el programa. *.jad El archivo también ofrece algunos indirección de la *.jar sí mismo.

Un ejemplo *.jad archivo, que describe un archivo *.jar
Aquí está el ejemplo hi.jad archivo en texto sin formato:
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
Hay programas que pueden generar el archivo *.jad, que le hace más fácil para actualizar el campo “MIDlet-Jar-Size:” cada vez que el archivo se *.jar cambiado (y sus cambios de tamaño). Si usted busca el Internet usted encontrará útil J2ME programas.
Si el tamaño del campo no se especifica el total de bytes exacto de la *.jar el archivo y, a continuación, el siguiente mensaje de error puede aparecer después de una exitosa descarga en un teléfono celular: “Download Failed” (no descargar).
Para el Motorola T720 teléfono celular, el siguiente mensaje de error podría ser utilizado para inidcate campos no válidos en el archivo *.jad, o posiblemente no válidos en los campos generados MANIFEST.MF archivo en el archivo *.jar: “Failed: File Corrupt” (no: archivo corrupto).
Nota: Si el *.jar archivo se encuentra en el mismo directorio que el archivo correspondiente *.jad Internet en un servidor web y, a continuación, el *.jad archivo puede simplemente indicar el nombre del archivo de la *.jar archivo, sin especificar un pleno URL, como en el ejemplo siguiente:
MIDlet-Jar-URL: hi.jar
Al descargar estos archivos desde Internet Apache un servidor web a un Motorola T720 teléfono celular, es aceptable para no incluir la plena URL. Sin embargo, cuando la descarga de estos archivos de Internet Yahoo! un servidor web a un Motorola T720 teléfono celular, el intento de descarga no, a menos que una plena URL camino a la *.jar archivo se especifica en el archivo *.jad, como en el ejemplo siguiente:
MIDlet-Jar-URL: http://www.colinfahey.com/hi.jar
No sé la razón de este problema, y sé que este problema no afecta a otros teléfonos celulares (teléfono celular o proveedores de servicios). El hecho de tener que especificar el pleno la URL para *.jar archivo en el archivo *.jad es obviamente inconveniente, porque los archivos se desplazan a diferentes lugares en un servidor sería necesario cambiar la información en todos los *.jad archivos. Sin embargo, especificando el pleno URL podría hacer que la *.jad más fiables para ciertos teléfonos celulares y algunos teléfonos celulares proveedores de servicios.
4.8 Probar el *.jar archivo y el archivo de *.jad ejecutando el programa
El siguiente ejecuta la clase se encuentra en el archivo *.jar, el descritos por *.jad archivo.
(Directorio actual: C:\HelloMIDlet)
midp -classpath c:\j2me\midp\classes;.\hi.jar -descriptor hi.jad
4.9 Referencias para J2ME, MIDP, CLDC desarrollo
Gran parte de lo que se presenta aquí se puede encontrar en muchos otros sitios de Internet. Sin embargo, corregido algunos errores encontrados en otros sitios de Internet, y añadió que faltan detalles, y presentó la experiencia completa de alguien tratando de hacer estas cosas. Aquí son muy informativos vínculos que me ayudó a empezar:
5. Complejo programa J2ME
5.1 Introducción
El sencillo programa presentado en la sección anterior de este documento sólo tiene un único archivo de código fuente, y el programa hace casi nada y, por tanto, no es un buen ejemplo de teléfono celular de programación.
Mi amigo Sam Robertson escribió J2ME un interesante programa que enseña a una persona para desempeñar el juego de cartas “Blackjack” (también llamado “21”). Un jugador se presenta con un “distribuidor de tarjetas,” y el jugador del par de tarjetas, y el jugador debe decidir qué hacer: “la estancia, hit,” doble “hacia abajo, o” se separan.
Este programa tiene seis archivos de código fuente. El programa responde a la entrada del usuario, y no simple dibujo y actualizaciones de texto.
5.2 Código fuente
Haga clic en el siguiente enlace para obtener el código fuente, y el archivo de *.jad, “manifest.mf” archivo y un archivo por lotes, todos en un archivo conveniente ZIP.
sbj.zip
El código fuente que figuran en un archivo ZIP
6090 bytes
MD5: bf3922035b7a4eef24e107d03b7524c9
Extracto de un directorio arbitrario, pero si el extracto de “c:\” bajo Windows, el ejemplo siguiente debate será aún más cerca de su situación real.

Extraer sbj.zip a “c:\” crea el directorio “c:\sbj”
5.3 Manifiesto de archivo
Expediente: “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 El archivo por lotes para construir el programa
El siguiente archivo por lotes es bruto, pero sirve como un ejemplo de cómo puede empezar a escribir su propio archivo por lotes para construir su J2ME programa. Este archivo por lotes ejemplo hace lo siguiente:
(1) Eliminar el directorio que contiene los archivos *.class de edad;
(2) Eliminar el directorio que contiene la antigua verificado *.class archivos;
(3) Hacer un directorio de salida de “clases;”
(4) Recopilar todas las fuentes en *.java a *.class archivos, con salida a “las” clases directorio.
(5) Hacer un directorio de salida “verificado;”
(6) Preverify todas las clases “en” las clases de directorio, y poner el verificado las clases “verificadas” en el directorio.
(7) Crear un archivo *.jar, y añadir la mainfest archivo y, a todas las clases “verificadas” en el directorio;
*(8) los ensayos del programa a través de la preverified clases directamente;
*(9) los ensayos del programa a través de la *.jar y *.jad archivos;
(*... Estos pasos son los discapacitados (por comentar) en mi archivo por lotes).

El archivo por lotes para la construcción de “build_sbj.bat” el programa
Aquí está el mismo archivo (“build_sbj.bat”) en texto sin formato:
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 Construir desde la línea de comandos
Este es el resultado de ejecutar el archivo por lotes “build_sbj.bat” en la línea de comandos:

La ejecución del archivo por lotes “build_sbj.bat”
Tenga en cuenta que los mensajes de advertencia para el “rmdir” y “del” operaciones se limitan a indicar que no hay nada que quitar.
Usted puede ver los nuevos directorios (es decir, “classes” y “verified”) y el nuevo archivo *.jar que el resultado de ejecutar el archivo por lotes:

Archivos de código fuente y nuevo archivo generado
5.6 *.jad archivo
Para implementar la sbj.jar archivo, tenemos que crear y editar el archivo sbj.jad tener el tamaño correcto *.jar en el campo correspondiente:
Expediente: 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 puede ser que necesite añadir la completa URL a la *.jar archivo *.jad cuando el archivo se coloca en un sitio de Internet -, pero he descubierto (por un experimento) que yo era capaz de evitar mencionar la plena URL (es decir, sólo se especifica el *.jar nombre de archivo por sí mismo). Sin embargo, la puesta en el URL completo, pero quería hacerle saber lo que he observado.
5.7 Resumen
Después de haber múltiples archivos de origen en su proyecto es común y, en esta sección nos dio una cruda ilustración de la construcción de varias clases, seguido por los envases y la ejecución.
Por favor, consulte la sección siguiente con respecto a la utilización Sun Wireless Toolkit, lo que hace que la construcción de aplicaciones mucho más fácil.
6. Sun “Wireless Toolkit (version 1.0.4_01)”
6.1 Introducción
Sun ofrece una cómoda entorno de desarrollo para la construcción y el embalaje J2ME programas: “Java 2 Platform Micro Edition (J2ME) Wireless Toolkit (version 1.0.4_01)”.
(Precaución: Usted necesitará descargar los Java 2 SDK 1.4 tal como se describe en una sección anterior para utilizar este kit de herramientas. Hacer esto ahora, si usted no tiene aún esta versión de la Java 2 SDK.)
Ir a la siguiente sitio de Internet para descargar la guía:
http://java.sun.com/products/j2mewtoolkit/
Precaución!
NO haga clic en el vínculo “2.0 Beta 1 English” (en la actualidad el principio opción de descarga), si están haciendo Motorola T720 desarrollo - porque esta versión tiene algunos MIDP-2.0 cosas, y conseguir alrededor de esto puede ser un dolor de cabeza.

No descargar esta versión! (“2.0 Beta 1 English”)
He probado esta versión, y yo tengo el tiempo para compilar el código con una gran cantidad de cambios de configuración desordenado, pero después de todo el esfuerzo Tengo una excepción de seguridad cuando trató de ejecutar. No molestar!
Descargue la versión “1.0.4_01 English”. Esto es lo que la página de descarga tiene el siguiente aspecto:

La página de descarga Sun J2ME Wireless Toolkit (version 1.0.4_01)

El Sun J2ME Wireless Toolkit (version 1.0.4_01) FTP lista de sitios
Esto descargará el archivo siguiente: “j2me_wireless_toolkit-1_0_4_01-bin-win.exe”
Ejecutar este programa para instalar en su sistema.
6.2 J2ME Wireless Toolkit: lanzamiento de la barra de herramientas
Después de la guía está instalado, usted puede lanzar desde el “Start” (inicio) sistema de menú:

Inicio de la barra de herramientas de programa
También puede acceder a la documentación MIDP-1.0 a través de la “Documentation” en este tema Start (inicio) del menú.

J2ME Wireless Toolkit (version 1.0.4_01) documentación
6.3 J2ME Wireless Toolkit: crear y construir proyecto

La barra de herramientas está listo. Haz clic para “New Project...” crear un nuevo proyecto.

New Project: Escriba el nombre del proyecto (se convierte en JAR nombre y el nombre del nuevo directorio de proyecto), y el tipo MIDlet en nombre de clase (clase derivados de MIDlet, esencialmente la clase principal de su aplicación).

Barra de herramientas: proyecto creado. Notificación de la consola que le indica dónde colocar su *.java archivos de código fuente, etc (por ejemplo, “c:\WTK104\apps\sbj\src”, etc)

Haga clic en “Settings...” en la barra de herramientas para obtener esta configuración de un proyecto de menú.
“MIDlet-Jar-Size” caso omiso de la esfera (con valor de “100 bytes)” por ahora. Vamos a la larga causa el valor correcto para obtener conjunto.

Haga clic en la ficha MIDlets de la configuración de un proyecto de diálogo.
Haga clic en la única fila de la tabla (“MIDlet-1”) para resaltar y seleccionar esa opción. A continuación, haga clic en el botón “Edit”.

Borrar la “Icon” campo si no tiene un archivo *.png para poner en su *.jar archivo.
Haga lo siguiente:
(1) Project --> Clean: Elimina todos los archivos *.class;
(2) Build : Construye *.class todos los archivos y preverifies;
(3) Project --> Package --> Create Package : produce *.jar y *.jad

El resultado de la construcción de la *.jar y *.jad
Cuando usted hace estas tres medidas, el resultado *.jar y *.jad son inmediatamente listos para su ejecución local en el emulador, o para el despliegue inmediato en su sitio en Internet para que otros puedan descargar “por el aire” (OTA). El *.jar tamaño en el campo *.jad archivo será correcta. No se olvide de hacer el paso (3) cada vez que reconstruir!
Ahora puede probar por golpear a la “Run” (run) botón.

Golpear “Run” para el proyecto lee el *.jad en el emulador. Usted puede seleccionar el MIDlet específicas para poner en marcha (normalmente sólo una).
Sólo tienes que copiar el *.jar y *.jad archivos de la ubicación especificada (información aportada por la barra de herramientas de la ventana de la consola durante una de construir el proyecto), tales como:
(Desde la ventana de la consola:)
Wrote c:\WTK104\apps\sbj\bin\sbj.jar
Wrote c:\WTK104\apps\sbj\bin\sbj.jad
Coloque estos archivos directamente a su sitio de Internet sin modificaciones, y debería funcionar. Esto es lo que he visto en mi teléfono celular después de la descarga de esta aplicación compilada “por el aire” (OTA)

Sam Robertson's Blackjack Trainer (sbj.jar) de ejecución en mi teléfono celular
7. Oferta de software en un sitio de Internet
7.1 Asegúrese de que el servidor web Internet MIME especifica *.jar tipos de archivos y archivos *.jad
Si usted tiene un Apache servidor web de Internet, usted necesita crear un archivo llamado “.htaccess” dentro de su sitio web directorio raíz. El “.htaccess” archivo le permite anular Apache de configuración, tales como añadir o superior MIME tipos de archivo. Usted debe agregar la MIME especificar los tipos correspondientes a *.jar archivos y *.jad archivos, como se muestra en el siguiente archivo de texto:

Mi costumbre “.htaccess” archivo de la Internet Apache servidor web. Nota: este archivo llamado “.htaccess.txt” simplemente para hacer el archivo fácil de editar cuando se utiliza el sistema operativo Windows. El nombre del archivo debe ser cambiado a “.htaccess” antes de que el archivo puede ser utilizado con el Internet Apache servidor web.
Aquí está mi .htaccess simple archivo como texto sin formato:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
Al parecer, la creación o modificación de este archivo se traduce en un cambio inmediato de Apache comportamiento del servidor. Supongo que el servidor comprueba Apache la modificación de fecha y hora de la “.htaccess” archivo a cada nuevo transacción, y el servidor vuelve a cargar el archivo que si la modificación de la fecha y la hora ha cambiado.
Si usted tiene un tipo diferente de servidor web de Internet, usted debe determinar cómo especificar MIME tipos, y debe asegurarse de que *.jar archivos y *.jad archivos se les asigna el MIME tipos.
Usted sabrá si la MIME tipos no se han establecido si el teléfono celular se niega a descargar su *.jad archivo de informes y el siguiente error:
“406: Not Acceptable”
7.2 Opcionalmente proporcionar enlaces a la *.jad archivo en HTML o documentos WML
El Motorola T720 J2ME teléfono celular con AT&T servicio es capaz de descargar un archivo *.jad directamente, escribiendo la URL de la *.jad archivo en el teléfono celular. Es probable que el trabajo de otros J2ME teléfonos celulares con otros teléfonos celulares proveedores de servicios.
Sin embargo, podría ser más conveniente para las personas a descargar el archivo *.jad por la selección de un vínculo dentro de un HTML documento o dentro de un WML documento. (Nota: WML actualmente se encuentra obsoleto. Mayoría de los teléfonos celulares ahora pueden interpretar HTML.)

A simple HTML documento con un vínculo a un archivo *.jad

A simple WML (WAP) página con un enlace a un archivo *.jad (Nota: WML actualmente se encuentra obsoleto. Mayoría de los teléfonos celulares ahora pueden interpretar HTML.)
8. Descarga de software desde un sitio de Internet
Las siguientes imágenes muestran la secuencia exacta de las acciones que hice para descargar y ejecutar el MIDlet desarrollado y desplegado tal y como se describe en las secciones precedentes anteriormente. Estas imágenes son fotografías de la pantalla de mi teléfono celular.
(1) Pantalla principal: Cuando se abre el teléfono, verá la pantalla principal. Pulse el botón central para ir al menú principal.
(2) Main Menu: Trasladar a la “WebAccess” el tema.
(3) WebAccess: Trasladar a la “Go To URL” el tema.
(4) Enter URL: Escriba en la URL de *.jad un fichero (o de un HTML documento, o de un documento WML).
(5) Details; Esta información fue analizada a partir de la *.jad archivo. DOWNLD Pulse para descargar el archivo *.jar.
(6) Download Complete; Espere este mensaje a desaparecer;
(7) Installing; Espere este mensaje a desaparecer;
(8) xxxx bytes transferred; Espere este mensaje a desaparecer;
(9) Installed; Espere este mensaje a desaparecer;
WebAccess Cuando el menú aparece de nuevo, después de que el programa ha sido instalado, simplemente salir de cada menú para regresar a la pantalla principal.
(1) Pantalla principal: Cuando se abre el teléfono, verá la pantalla principal. Seleccione la opción “Games & Apps” a través del menú principal, o pulse el cursor hacia abajo en la pantalla principal.
(2) Java Powered: Espere a que esta pantalla a desaparecer.
(3) Games & Apps: Seleccione el elemento con el nombre de tu programa!
(4) Yay! El éxito de la ejecución de su programa!
El programa aparición en el teléfono celular es muy similar a la aparición en el emulador.
9. Descargar los mensajes de error y mensajes de error de instalación
9.1 Motorola T720 (J2ME) mensajes de error
Los siguientes errores de los mensajes sólo son pertinentes a la Motorola T720 (GSM/J2ME) teléfono celular.
9.1.1 “Download Failed”
Causa # 1
Cualquier archivo (HTML, JAD, JAR, MID, GIF) más 1644 bytes causa de este error para ciertas web de Internet hosts y servidores. He aquí una breve lista de hosts y servidores:
Host / Server Error
=================================================== =================
Apache No
Microsoft Personal Web Server (direct from your PC) No
Earthlink (Apache) No
Yahoo! (custom server) Yes
El problema se debe a un error en la Motorola T720 GSM/J2ME firmware, lo que provoca la descarga de archivos en fragmentos al fracaso.
La única solución aparente es para cambiar de Internet o Web hosts tipo de servidor. Otros tipos de teléfonos celulares no tienen este problema.
Causa # 2
El “MIDlet-Jar-Size:” ámbito de la *.jad un archivo no se indica el total exacto de byte de la correspondiente *.jar archivo.
9.1.2 “Failed: File Corrupt”
Causa # 1
El *.jar archivo utiliza API funciones que no están disponibles en los teléfonos celulares.
Por ejemplo, MIDP 2.0 funciones no están disponibles en la Motorola T720 GSM/J2ME teléfono celular (que sólo tiene funciones MIDP 1.0). Un programa puede ejecutar en un emulador, pero no podría ejecutar en el teléfono celular.
La solución es buscar MIDP 2.0 funciones en el código fuente y reemplazarlos con MIDP 1.0 funciones, o eliminar las características que requieren la MIDP 2.0 funciones.
Causa # 2
El “manifest.mf” archivo utilizado para crear el archivo *.jar (a través de la “jar” utilidad) contiene errores.
Asegúrese de que el archivo ha “manifest.mf” las siguientes versiones de CLDC y MIDP:
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
La totalidad de “manifest.mf” archivo debe mirar casi exactamente como los siguientes:
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
Cada línea de texto en el archivo “manifest.mf”, incluida la última línea del archivo, debe terminar con un “carraige regreso” (CR; 13; 0x0d) carácter seguido por un “avance de línea” (LF; 10; 0x0a) carácter.
Los únicos campos de la “manifest.mf” archivo en su propia versión del archivo que debe ser diferente del ejemplo se muestra aquí son los primeros tres campos que figuran en el ejemplo. El final tres ámbitos debe ser una coincidencia exacta con el ejemplo, y los dos últimos caracteres del archivo debe ser el “retorno de carro” y “avance de línea” después de la final de campo.
Aquí están los posibles problemas en su versión de la “manifest.mf” archivo:
(1) Su “manifest.mf” archivo contiene caracteres que no son caracteres ASCII; (Mira en una tabla de caracteres ASCII; cualquier carácter fuera de la 0 a 127 rango no es válido);
(2) Su “manifest.mf” archivo no tiene un “avance de línea” (LF) carácter después de cada “retorno de carro” (CR) carácter al final de cada línea;
(3) Su “manifest.mf” archivo invisible espacios o fichas al final de cada línea antes de la terminación (CR)(LF) línea;
(4) Su “manifest.mf” archivo contiene una línea “Manifest-Version:”;
(5) La última línea de su archivo “manifest.mf” no termina con un (CR)(LF) línea de terminación, sino que simplemente llega al final del archivo;
(6) Su “manifest.mf” archivo no tiene exactamente los campos y orden exacto de los campos como se muestra en el ejemplo anterior;
(7) Su CLDC versión no es exactamente 1.0, MIDP o su versión no es exactamente 1.0;
(8) Su nombre de proveedor tiene caracteres que no son ASCII caracteres (por ejemplo, los caracteres Unicode no se permite);
(9) Su “manifest.mf” archivo no tiene un espacio después de la segunda coma en el “MIDlet-1:” línea;
Tal vez algunos de los casos enumerados anteriormente en realidad no causa problemas para muchos teléfonos celulares, pero la eliminación de todos los casos mencionados anteriormente podría permitir la descarga de éxito. Después de la descarga tiene éxito, usted puede experimentar con variaciones de la “manifest.mf” archivo para descubrir qué otras cosas que usted puede hacer descargar sin causar errores. “manifest.mf” Cuando el archivo es modificado, es importante verificar que descargar el programa sigue trabajando para todos los destinatarios teléfonos celulares y teléfonos celulares proveedores de servicios. Algunos teléfonos y servicios son menos flexibles que otros.
“manifest.mf” Cuando un archivo se añade a una *.jar archivo a través de la jar programa, el jar programa crea una nueva versión del archivo de manifiesto dentro de la *.jar archivo. La versión generó el manifiesto de archivo dentro de la *.jar archivo se llama “MANIFEST.MF”. El programa jar podría añadir campos a este archivo que no existen en el archivo “manifest.mf” proporcionada por el programador. No “MANIFEST.MF” extracto de un archivo desde un archivo *.jar, a menos que estén dispuestos a eliminar algunos campos y hacer el resto de los campos exactamente como el ejemplo “manifest.mf” archivo se muestra arriba.
9.1.3 “Unsupported Content Type”
Causa # 1
El teléfono celular no puede aceptar la MIME tipo de comunicados por el servidor remoto para un archivo específico.
Por ejemplo, JPG archivos de imagen no están soportadas por Motorola T720 y la causa de este error.
Este error también puede producirse si el tipo MIME para un tipo de archivo (por ejemplo, GIF, MID, JAD, JAR) no se informó correctamente por el servidor. Una persona debe ser muy cuidadoso al informe, el tipo exacto MIME para el apoyo de tipos de archivo.
Causa # 2
El archivo de caché en el propio teléfono celular debe ser limpiado (por ejemplo, Browser Settings -> Clear Cache).
Si recientemente ha añadido MIME tipos a un servidor remoto y, a continuación, ha intentado descargar un archivo que había un error al instalar debido a una incorrecta o falta MIME tipo y, a continuación, el archivo de caché en el teléfono celular podría ser un obstáculo para la descarga de nuevo el archivo con el buen tipo MIME.
También es posible que el archivo remoto fue modificado y que la versión en caché es defectuoso y se reparó la prevención de la versión del archivo que se descargó como una sustitución.
Borrado de la caché del navegador en el teléfono celular debe asegurarse de que una descarga posterior se beneficia de la última configuración del servidor (por ejemplo, los nuevos ajustes MIME) y actualizaciones de un archivo remoto.
Causa # 3
¿Cómo evitar los errores “Unsupported Content type” en WAP
Si obtiene un error en WAP diciendo Unsupported Content type, no necesariamente debido al tipo de contenido establecimiento. Muchos WAP páginas contienen caracteres especiales, tales como (å ö ä) sueco, y con el fin de conseguir que se muestre correctamente, tiene que especificar que el conjunto de caracteres que usted utiliza. Con el fin de especificar el conjunto de caracteres que se utiliza en una página WAP, de modificar el Content-Type cabecera en el servidor de respuesta a fin de incluir el juego de caracteres, por ejemplo “Content-Type: text/vnd.wap.wml; iso-8859-1”. Cuando un usuario recibe la respuesta de un servidor, que debe tener toda la información necesaria para mostrar el contenido correctamente.
Sin embargo, hay un problema con la utilización de este enfoque. Todos los teléfonos indicar a la puerta de entrada que el conjunto de caracteres que apoyan “Accept-Charset” mediante el uso de las cabeceras de la petición. Según HTML especificaciones, este debe compararse con el conjunto de caracteres especificado en el servidor de una respuesta, y si no coinciden, el error Unsupported Content type debe ser generado.
Para hacer el problema más complicado, algunos gateways WAP no se preocupan por comparar el conjunto de caracteres apoyo solicitado por el dispositivo, por lo tanto, el contenido no se mostrarán correctamente en los dispositivos. Otra complicación es que la cadena especificando el conjunto de caracteres es entre mayúsculas y minúsculas, pero algunos WAP pasarelas tratarlos como entre mayúsculas y minúsculas cuerdas.
Todos juntos, no habrá resultados muy diferentes dependiendo de lo que el dispositivo que utilice, que WAP puerta de enlace que utiliza y cuál es la respuesta del servidor.
La única manera de estar seguro de que su contenido se mostrará correctamente siempre es comprobar qué conjunto de caracteres es aceptada por el cliente y transformar su respuesta a ese conjunto de caracteres antes de enviarlo.
9.1.4 “406: Not Acceptable” (“The server cannot generate a response that your client can accept.”)
Causa # 1
Usted tiene un teléfono de Verizon!
Verizon no permite a sus clientes a (GIF) descargar imágenes, tonos de timbre (MIDI), o programas, Internet arbitrarias de los servidores web. Uno debe utilizar su “Get It Now” servicio, o utilizar un cable USB y la “Get Around 'Get It Now' (GAGIN)” software.
Solución: Basta con esperar a que la competencia en “el” mercado libre para eliminar “las plataformas cerradas.” El conjunto de la tecnología podría ser obsoleto en el momento en este éxito, pero esto es lo que sucede cuando las empresas se guían por la codicia por sí solo.
Causa # 2
El mensaje de error indica que el tipo MIME asociados con la extensión del archivo (por ejemplo, .gif, .mid, .jar), de ser el archivo descargado no ha sido especificado por el servidor web de Internet.
Si usted tiene un Apache servidor web de Internet, por ejemplo, entonces usted debe modificar un archivo “.htaccess”, añadiendo las siguientes líneas:
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
El servidor de alojamiento del fichero que está siendo descargado no se especifica el tipo MIME para ese archivo (por ejemplo, GIF, MID, JAR). Por lo tanto, el teléfono celular se da por supuesto que el archivo está en formato de texto. Además, el teléfono celular podría tener un límite en el tamaño (en bytes) de archivos de texto que es menor que el límite en el tamaño (en bytes) de archivos binarios (por ejemplo, GIF, MID, JAR). Por lo tanto, un archivo binario interpretarse como un archivo de texto es probable que exceda el máximo permitido tamaño de un archivo de texto, y por lo tanto causar el error.
Si usted tiene un Apache servidor web de Internet, por ejemplo, entonces usted debe modificar un archivo “.htaccess”, añadiendo las siguientes líneas:
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
Al parecer, este error también puede ocurrir incluso si el servidor remoto tiene el buen MIME tipos establecidos. Todavía no he determinado cuando se produce este error en lugar de la “Download Failed” de esta situación.
Evidentemente, la Motorola T720 GSM/J2ME teléfono celular no puede procesar un aspecto de la HTTP 1.1 especificación que permite a los archivos para ser roto en fragmentos, que requiere múltiples “GET” solicitudes.
Cuando se utiliza el teléfono celular Motorola T720 GSM/J2ME para descargar archivos desde Internet determinados tipos de servidores web, cualquier archivo (por ejemplo, HTML, JAD, JAR, MID, GIF) más grande que 1644 bytes causa de este error. Aquí está una lista breve de Internet de los proveedores de alojamiento web y si o no la Internet el proveedor de web hosting causas de un problema para la Motorola T720 GSM/J2ME teléfono celular:
Host / Server Error
=================================================== =================
Apache No
Microsoft Personal Web Server (direct from your PC) No
Earthlink (Apache) No
Yahoo! (custom server type) Yes
El problema se debe a la firmware en el Motorola T720 GSM/J2ME teléfono celular, que afecta a su capacidad para descargar archivos en fragmentos.
La única solución aparente, al descargar a la Motorola T720 GSM/J2ME teléfono celular, es para evitar ciertos Internet web hosting servidor tipos. La mayoría de los otros tipos de teléfonos celulares no tienen este problema, y por lo que este problema podría ser ignorado con seguridad.
9.1.6 “Connection unsuccessful. Try again later.”
Causa # 1
Este error no tiene nada que ver con el servidor de Internet que aloja el archivo solicitado.
Si obtiene este error, le sugiero que haga las siguientes cosas:
(1) Borrar la caché del navegador;
(2) Borrar la historia del navegador;
(3) Apague el teléfono;
(4) Retire la batería;
(5) Espere unos segundos;
(6) Coloque la batería en el teléfono;
(7) Potencia del teléfono;
(8) Pruebe de nuevo la descarga;
He recibido el mensaje de error “Connection unsuccessful. Try again later. durante varios días después por primera vez adquirió un teléfono celular. Entonces, por azar oportunidad, quité la batería. Cuando me ponga la batería en el teléfono celular, inmediatamente tienen acceso a la Internet.
He recibido este error en varias ocasiones durante los seis meses posteriores, y el procedimiento anterior se ha restaurado el acceso a Internet cada vez. Yo no determinar qué etapa del procedimiento podría ser el más importante, pero creo que la simple eliminación de la batería y poner la batería en el teléfono celular podría ser suficiente.
En mi opinión, este mensaje de error es demasiado vago. ¿Por qué fue el intento de conectar sin éxito? Fue el teléfono celular de servicio de red demasiado ocupado? Fue el teléfono celular del servicio de servidor “de puerta de enlace” no funciona? ¿Es mi teléfono celular no reciben suficiente o la transmisión de la fuerza de la señal de radio? Cuando sería un buen momento para intentar la descarga de nuevo? Diez segundos a partir de ahora? Una hora a partir de ahora? Una semana a partir de ahora? El mensaje de error sería más útil si fuera más específico sobre la causa del problema y si fuera más específica acerca de una posible solución.
Causa # 2
Si usted hizo una “Master Reset”, o si nunca han sido capaces de acceder a Internet y, a continuación, inspeccionar la configuración de red sobre el teléfono celular. Para un ejemplo de configuración de red (para el Motorola T720 GSM/J2ME teléfono celular, para AT&T servicio en la zona Los Angeles, California), véase la sección especificada por el siguiente enlace:
10. Creación, la oferta, y la descarga de “tonos de llamada”
10.1 Crear o adquirir una MIDI archivo (*.mid)
Puede crear o adquirir una MIDI archivo de sonido (*.mid) de cualquier fuente. He encontrado el tema de la música a la televisión “Knight Rider” (1982-1986) en MIDI formato (por ejemplo, “knightrider.mid”) por una simple búsqueda de la Internet.
La siguiente imagen te da una idea de cómo un MIDI archivo aparece en un MIDI editor. No es necesario disponer de un editor MIDI para obtener la música en su teléfono. Usted puede obtener un archivo MIDI existentes (*.mid) de cualquier fuente. Sin embargo, también puede utilizar un editor MIDI de su elección para crear tu propia música polifónica original.

Cakewalk Home Studio: jugar “knightrider.mid”
10.2 Asegúrese de que su servidor web Internet conoce el tipo MIDI MIME
Si usted tiene un Apache servidor web de Internet, por ejemplo, entonces usted debe modificar un archivo “.htaccess”, añadiendo las siguientes líneas:
El archivo se “.htaccess” especificar o anular la MIME tipos indicada por el servidor de archivos de varios tipos (por lo general indicada por el extensiones de archivo, tales como .MID, .GIF, .JAR).
Si ya ha añadido otros tipos MIME para otros tipos de archivo, su archivo completo “.htaccess” podría parecerse al siguiente texto:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid
Al parecer, la creación o modificación de este archivo se traduce en un cambio inmediato de Apache comportamiento del servidor. Supongo que el servidor comprueba Apache la modificación de fecha y hora de la “.htaccess” archivo a cada nuevo transacción, y el servidor vuelve a cargar el archivo que si la modificación de la fecha y la hora ha cambiado.
Si usted tiene un tipo diferente de servidor web de Internet, usted debe determinar cómo especificar MIME tipos, y debe asegurarse de que *.jar archivos y *.jad archivos se les asigna el MIME tipos.
Usted sabrá si la MIME tipos no se han establecido si el teléfono celular se niega a descargar su *.jad archivo de informes y el siguiente error:
“406: Not Acceptable”
10.3 Ponga el MIDI archivo (*.mid) en su servidor web Internet
He copiado MIDI un archivo llamado “kr.mid” en el directorio raíz de mi servidor web en Internet. Usted puede utilizar el software como “Filezilla” para hacer la transferencia FTP simple y conveniente.
10.4 MIDI descargar el archivo a su teléfono celular a través del teléfono del servicio de servicio de Internet
Para el Motorola T720 GSM/J2ME teléfono celular, la descarga de un archivo MIDI comienza con el menú “WebAccess”. Selección de “Go To URL”, seguido escribiendo la URL de la MIDI archivo, se inicia la descarga. Por ejemplo, me escribió en el URL los siguientes:
http://www.colinfahey.com/kr.mid
Si la descarga tiene éxito, y si está utilizando una Motorola T720 cellular phone, se le dará la opción de almacenar el archivo en el teléfono celular. Cuando usted decide guardar el archivo, se le da la opción de simplemente almacenar en su conjunto de tonos de llamada en lugar o establecimiento en el archivo para ser el tono de llamada (que también, como un efecto secundario, almacena en su conjunto de tonos de timbre) .
Las siguientes imágenes resumen el proceso de descargar y reproducir archivos MIDI para la Motorola T720 GSM/J2ME teléfono celular. Otros J2ME habilitado los teléfonos celulares, celulares con otros proveedores de servicio telefónico, es probable que tengan un similar procedimiento de descarga. Si su teléfono celular es el proveedor de servicios Verizon, entonces están fuera de suerte, nada de esto funciona, y usted debería ir y comprar un teléfono “Android” para ayudar a destruir el “mercado de la telefonía privada!”
(1) Pantalla principal: Pulse el botón adecuado para mostrar el menú principal.
(2) Main Menu: Ir a la “WebAccess” tema.
(3) WebAccess: Ir a la “Go to URL” tema.
(4) Enter URL: Escriba en la URL de MIDI un archivo (*.mid) en Internet un sitio web.
(5) Connecting: Espere a la descarga para empezar. (Si ha recibido la “406: Not Acceptable” mensaje de error, entonces el servidor web de Internet no asignar un tipo MIME para MIDI archivos (*.mid)).)
(6) Downloading: Espere a la descarga hasta el final.
(7) Download Complete: Espere a que esta pantalla a desaparecer.
(8) MIDI Playback: MIDI El archivo empieza a reproducirse de inmediato. Pulse el botón de menú para ir a la Tone Menu, y continúe con el paso (9), o pulse el botón “STORE” y vaya al paso (12).
(9) Tone Menu: Usted tiene la opción de jugar ...
(10) Tone Menu: Usted tiene la opción de obtener más detalles.
(11) Details: Aquí vemos el tamaño en bytes.
(12) Store Options: De paso (8) podemos hit “STORE” el botón para acceder a este menú. Usted tiene la opción de almacenar en el teléfono de la colección de canciones. Hit “SELECT” para almacenar.
(13) Stored: La melodía MIDI se ha almacenado.
(14) Total Bytes Transferred: Esto es simplemente una notificación del número de bytes descargados, de modo que usted no está sorprendido por su próximo servicio de telefonía celular de ley!
10.5 Juega MIDI archivo en cualquier momento en el teléfono celular
Puede reproducir los archivos almacenados MIDI en cualquier momento en su teléfono celular, y puede utilizar cualquier archivo MIDI como su anillo de sonido.
(1) Pantalla principal: Pulse el botón adecuado para ir al menú principal.
(2) Main Menu: Ir a “Media Center”.
(3) Media Center: Ir a “My Tones”.
(4) My Tones: Destacados tono empieza a reproducirse de inmediato. Puede cambiar el nombre con el “EDIT” opción. Golpear el botón de menú le da otras opciones.
10.6 Ajuste el anillo de estilo para utilizar un archivo MIDI
Ir a través de las siguientes pantallas de menú:
(1) pantalla principal
(2) Main Menu
(3) Ring Styles: prensa “SELECT”
(4) [Silent, Soft, Loud] Detail: prensa “CHANGE”
(5) Calls: [current ring style/tune]: prensa “CHANGE”
Vaya, aunque la lista de estilos de anillo (en silencio, la vibración estilos, melodías permanente anillo, etc), y en la parte inferior verá descargado su música. Basta con pulsar el botón “SELECT” para hacer su nuevo anillo de sintonía activa!
11. Creación, la oferta, y la descarga de imágenes
11.1 Crear un 120 * 160 GIF archivo de imagen (*.gif)
Los siguientes pasos pueden ser usados para crear un 120 * 160 GIF archivo de imagen (*.gif) adecuado para mostrarlas en la Motorola T720 GSM/J2ME teléfono celular, ya sea como una imagen de fondo para la pantalla principal, o como una imagen en la galería de imágenes.
(1) Abra cualquier archivo de imagen con Microsoft Paint o Adobe Photoshop o cualquier otro software de edición de imágenes;
(2) Escala o recortar la imagen a 120 píxeles de ancho y 160 píxeles de alto (es decir, un píxel de imagen 120 * 160);
(3) Guarde el archivo en un formato GIF imagen (*.gif); (Adobe Photoshop Dentro de la forma de hacer esto es: File -> Export -> Gif89a)
El archivo de imagen debe estar en la GIF formato de archivo de imagen a fin de que la Motorola T720 teléfono celular es capaz de decodificar y mostrar la imagen. Si las dimensiones de la imagen son exactamente 120 * 160 y, a continuación, la imagen cabrá perfectamente en la pantalla del teléfono celular Motorola T720; de otro modo la imagen tendrá fronteras en blanco en dos partes.
Nota: I descargado correctamente y se muestran *.gif un archivo de imagen que se 118 * 120 píxeles, que es más pequeño que el tamaño de la pantalla de 120 * 160. Creo que la parte restante de la pantalla se llena con un color seleccionado de la frontera de la imagen. Tal vez el píxel de color del pixel en la parte superior izquierda de la imagen se utiliza como el color de los vacíos que rodean las fronteras dos lados de la imagen.
El Motorola T720 teléfono celular puede mostrar 4.096 colores, que creo que es codificado como 12-bit RGB (4-4-4). Por lo tanto, creo que las imágenes con los pequeños gradientes de color que abarcan grandes zonas deben evitarse, porque las fronteras de estos gradientes va a ser muy evidente y distraer a una persona que busca en la imagen. Asimismo, el GIF formato en sí se limita a sólo 256 colores diferentes, por lo que una persona debe ser consciente de esta limitación, también. En cualquier caso, siempre es mejor simplemente mirar una imagen en el teléfono celular para saber si o no la imagen es adecuada para el teléfono celular.

Space Invaders (Space Invaders): una imagen 120 * 160 GIF
11.2 GIF poner el archivo de imagen (*.gif) en su servidor web Internet
He copiado GIF un archivo llamado “si.mid” en el directorio raíz de mi servidor web en Internet. Usted puede utilizar el software como “Filezilla” para hacer la transferencia FTP simple y conveniente.
11.3 GIF descargar el archivo a su teléfono celular a través del teléfono del servicio de servicio de Internet
Para el Motorola T720 GSM/J2ME teléfono celular, la descarga de un archivo de imagen GIF comienza con el menú “WebAccess”. Selección de “Go To URL”, seguido escribiendo la URL de la GIF archivo, se inicia la descarga. Por ejemplo, me escribió en el URL los siguientes:
http://www.colinfahey.com/si.gif
Si la descarga tiene éxito, y si está utilizando una Motorola T720 cellular phone, se le dará la opción de almacenar el archivo en el teléfono celular. Cuando usted decide guardar el archivo, se le da la opción de simplemente almacenar en su conjunto de imágenes en lugar o establecimiento en el archivo para ser el actual fondo (es decir, “papel tapiz).”
Las siguientes imágenes resumen el proceso de descarga de archivos de imagen GIF para la Motorola T720 GSM/J2ME teléfono celular. Otros J2ME habilitado los teléfonos celulares, celulares con otros proveedores de servicio telefónico, es probable que tengan un similar procedimiento de descarga. Si su teléfono celular es el proveedor de servicios Verizon, entonces están fuera de suerte, nada de esto funciona, y usted debería ir y comprar un teléfono “Android” para ayudar a destruir el “mercado de la telefonía privada!”
(1) WebAccess: Ir a la “Go to URL” tema.
(2) Enter URL: Escriba en la URL de GIF un archivo de imagen (*.gif) en Internet un sitio web.
(3) Connecting: Espere a la descarga para empezar. (Si ha recibido la “406: Not Acceptable” mensaje de error, entonces el servidor web de Internet no asignar un tipo MIME para GIF archivos de imagen (*.gif)).)
(4) preliminar de descargar la imagen, con opción de “STORE” (tienda) de la imagen en la memoria del teléfono celular;
(5) Store Options: GIF La imagen puede ser almacenada, o puede ser utilizado para sustituir el actual “papel tapiz” (fondo de la pantalla principal), o puede ser utilizado como “un” protector de pantalla (es decir, una imagen que aparecerá cuando el teléfono celular botones no se han presionado para una cantidad especificada de tiempo).
(6) Changed: Wallpaper [image name]: Esto es simplemente una notificación de que “el” papel tapiz de imágenes ha cambiado.
(7) La aparición de la la pantalla principal del teléfono celular después de la “imagen de fondo” (es decir, los antecedentes) la imagen se ha cambiado. El “Space Invaders” han conquistado mi teléfono celular!
11.4 GIF imagen animada para su uso como un “salvapantallas” en el teléfono celular
Para descargar una imagen animada GIF para usar como “un” protector de pantalla la imagen en tu teléfono celular, simplemente siga las instrucciones en la sección anterior de este documento para la preparación y la descarga de una imagen.
Si el GIF imagen es una animación GIF y, a continuación, “el” protector de pantalla mostrará la animación.
Basta con establecer la imagen como “el” protector de pantalla de imagen después de la imagen ha sido descargado.
La siguiente imagen animada GIF puede ser utilizado como un “protector de pantalla” animados en la imagen Motorola T720 GSM/J2ME teléfono celular.

GIF una imagen animada que puede ser utilizado como un “protector de pantalla de” animación de imagen de la Motorola T720 GSM/J2ME teléfono celular.
Lamentablemente, la Motorola T720 teléfono celular no se animan a la imagen de “fondo de pantalla.” Hubiera sido muy impresionante para abrir el teléfono celular y ver una animación de fondo en la pantalla principal! :^(
Sólo verá una animación GIF aparecen en la Motorola T720 teléfono celular cuando el teléfono entra en modo de “protector de pantalla,” lo que podría requerir 30 segundos o más para empezar. (Puede configurar este retraso en uno de los menús.) La iluminación de la pantalla es probable que antes de apagar el protector de pantalla aparece. “El” protector de pantalla no aparece durante una llamada de teléfono. Por lo tanto, teniendo en cuenta todos estos hechos, “el” protector de pantalla característica de la Motorola T720 teléfono celular es bastante cojo.
12. Motorola T720 GSM/J2ME teléfono celular configuración de la AT&T red de telefonía celular
12.1 Introducción
Esta sección de este documento es improbable que sea útil a nadie, porque esta sección se describe la configuración de un muy específicos de teléfonos celulares (Motorola T720 GSM/J2ME) para una muy específicos de teléfonos celulares proveedor de servicios (AT&T) para una región muy específica (el sur de California). Sin embargo, incluir esta información de interés histórico.
12.2 Web Sessions ajustes
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)
Además, hay un DNS para Java programas:
Main Menu
Settings
Java Tools
DNS IP: 10.250.1.10
12.3 Comentarios
(1) hacer un “reinicio maestro” establecerá el número WAP Port a “9201,” por lo que debe ser cambiado para “9203.”
(2) El WAP IP and Port secundaria se establece en el mismo IP y el puerto como el principal WAP ajustes. Yo era capaz de utilizar “mMode” (es decir, ir a cualquier URL) con un total WAP secundaria en blanco, pero tuve “Line Type 1: Modem” en ese momento. No sé si se establece que “ISDN” hace que sea más probable que la configuración de secundaria WAP va a ser utilizada.
(3) “un” reinicio maestro hace que el “Timeout:” campo “15 minutes”. Cambie el valor a “2 minutes”.
(4) El “Name:”, “Homepage:”, y “GPRS APN:” participación de todos los ámbitos de escribir en letras y símbolos manualmente.
(5) Los campos que se muestran vacíos en el ejemplo anterior son realmente la intención de no tener ningún texto introducido. El blanco no son accidentales.
13. Enlaces a otros recursos teléfono celular
13.1 Motorola J2ME SDK 3.0
Motorola tiene un kit de desarrollo de software SDK que incluye un emulador capaz de emular muchos Motorola teléfonos, incluido el T720. Usted puede obtener este SDK de forma gratuita, y
no es necesario CodeWarrior a utilizar el teléfono con emulador incluido el SDK, a pesar de todas la mención de CodeWarrior sobre la Motorola sitio web. Además, en general creo que se puede obtener sin CodeWarrior o Motorola SDK incluso si están haciendo el desarrollo profesional para el T720.
Usted debe registrarse con Motorola incluso a aprender acerca de sus J2ME SDK, y mucho menos descargarlo.
http://kb.motorola.metrowerks.com/motorola/developmentTools.do
Hay algunas funciones para reproducir “Compact MIDI” e incluso “*.wav” archivos. Instalar y leer la documentación para obtener más detalles.
He aquí un comentario que he recibido en un e-mail:
El Motorola J2ME SDK le ofrece (entre otras cosas) “las pieles” para el emulador de manera que el emulador se verá como el teléfono que para la programación. Es más que cosméticos. Tamaño de la pantalla pueden variar por ejemplo, de modo que si usted está diseñando algo donde el tamaño de la pantalla cosas, definitivamente ayuda a tener un emulador que coincide con el objetivo. El SDK también incluye algunos Motorola creado abierta Java clases Lightweight Windowing Toolkit el llamado que le dan algo de lo que usted necesita para crear una aplicación con un real UI - UI diversos widgets.
Usted puede obtener sin ella, pero si estaban haciendo un trabajo serio que usted probablemente querrá tener la misma. Si yo estaba creando cosas para Sony Ericsson o Nokia o de cualquier otro teléfono, me quieren que sus SDKs demasiado.
He aquí una cita de Motorola's sitio web en cuanto a su SDK:
El Motorola Software Development Kit (SDK) para la J2ME™ plataforma es una herramienta utilizada para desarrollar y probar programas escritos en el lenguaje de programación Java. El SDK incluye aplicaciones que hacen que sea fácil poner en marcha MIDlets (J2ME™ Programs) utilizando el emulador de dispositivo Motorola J2ME™. En conjunto, estas herramientas le permiten desarrollar y depurar sus programas J2ME™ en la emulación antes de descargar a un dispositivo de destino. El Motorola SDK puede ser integrado en Metrowerks' CodeWarrior™ Wireless Studio, Professional Edition, Version 7.
Esta versión de la SDK incluye numerosas mejoras de rendimiento y estabilidad. Todos los de la funcionalidad de la versión anterior se apoya, con estas nuevas características:
Nueva teléfonos apoyada por esta versión: A830.
Nueva funcionalidad de apoyo de esta versión:
A830 - Gaming API, conectividad de puerto serie, HTTPS protocolo de apoyo.
All devices - Mejora de rendimiento de gráficos
El SDK admite los siguientes dispositivos:
*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 amigo mío al parecer no tiene problemas para descargar y utilizar este conjunto de instrumentos - que aparentemente le da todo lo que necesita (JDK, MIDP, CLDC) y herramientas adicionales para que la JAD, etc No he probado a mí mismo. Aquí hay otros comentarios sobre este conjunto de herramientas:
Cita de Slashdot un anuncio:
Usted podría haber salvado algunos problemas usted mismo la instalación de todas las diferentes carpetas. Sólo tienes que descargar [sun.com] Sun ONE Studio 4 update 1, Mobile Edition, su completamente gratis (como en cerveza), y es un gran entorno de desarrollo integrado (alrededor de 20 MB descargar). Todas las herramientas, emuladores y demos de este artículo son agrupados. Desde la semana pasada estoy corriendo bajo RH Linux 7.2, con 512mb de ram (YOU NEED LOTS OF RAM!!!).
Tomó sólo un minuto [sun.com] de la regestration saltar a la pantalla a través de la intensificación de la caza del gusano en el depurador (Siempre me encanta el juego del gusano / serpiente / aperitivos en todas sus encarnaciones, y la versión demo siempre es bonito programadas - simple, pero orientado a objetos y multi-hilos en una pequeña cantidad de código).
Es necesario registrarse para descargar. Plataformas: Linux, Windows, Solaris.
Cita de Slashdot un anuncio:
Desde el sun descargar faq [sun.com]:
“Debido a la forma en nuestro servicio de descarga período de sesiones se encarga de la gestión, no se puede reanudar descargas parciales haciendo clic en el vínculo de nuevo en la ventana del navegador. Por el contrario, abrir el administrador de descargas del programa que esté utilizando, y reanudar la descarga desde dentro del propio gestor de descargas.
Seguimos trabajando con nuestros ingenieros para habilitar el soporte para más gestores de descarga en más plataformas. Por ahora, sin embargo, por favor, apague cualquier otro gestores de descarga y los servicios públicos si usted está teniendo problemas de descarga.”
Descarga de archivos de gran tamaño de sun bajo linux ha sido realmente difícil para un año. El único gestor de descarga i hasta hace poco había sido capaz de llegar al trabajo se DAP bajo windows (advertencia: Spyware). Básicamente, la mayoría de gestores de descargas (prozgui, getright, opera) no será capaz de hacer frente a Sun's [sinceridad]. Ridículamente en lugar de fijar su sitio web sólo para el trabajo, Sun han escrito su propio gestor de descargas [sun.com]. Sus escritos en java, y su único pequeño 140KB! La cosa sorprendente es que este es un excelente administrador de descargas, pequeña huella, no el secuestro de navegador, ningún adware / spyware, funciona bajo cualquier OS, el archivo automático de verificación, unzips automática, y sólido como una roca
13.3 Foro aleatorio anuncio:
El Jad y Jar archivos son los únicos archivos necesarios para ejecutar una aplicación en un teléfono y, según el teléfono y el método va a transferir la aplicación al teléfono, puede que sólo necesite la jar.
Si las solicitudes deberán ser enviadas Over the Air (OTA), es decir, a través de una web URL, tendrá que crear un vínculo en una página legible por el teléfono (por ejemplo, wml, cHtml, cHtml) a la JAD archivo. Para descargas OTA también tendrá que configurar su servidor web para manejar jar y jad tipos de archivo. En apache que necesita para añadir las siguientes líneas a la httpd.conf archivo:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
Además, usted tendrá que asegurarse de que el URL para la jar archivo es el URL para la JAR archivo en el servidor, no en el local URL
Si, por otra parte que desee transferir a través de IR, Bluetooth o un cable sólo tiene que transferir los archivos al teléfono, instalar y ejecutar. El JAD archivo es generalmente utilizado específicamente para proporcionar el teléfono la información necesaria para OTA descargas y, como tal, el Nokia 7650 y algunos otros modelos que sólo tendrá que transferir el archivo de jar no OTA transferencias.
13.4 http://wireless.java.sun.com/midp/questions/sar/
SAR (o WTP-SAR) está a favor de Segmentation and Reassembly. Es una característica opcional del Wireless Transaction Protocol (WTP) en WAP. SAR define un método para WAP una puerta de entrada para romper un gran mensaje (JAR un archivo que está descargando, por ejemplo) en pequeños trozos (la segmentación) y para el teléfono pieza de nuevo juntos (el reensamblaje).
No todos los teléfonos SAR uso, pero la mayoría tendrá acceso a servidores web a través de una pasarela WAP. Nokia usos SAR, mientras que Motorola utiliza características de HTTP 1.1 para recuperar los pequeños trozos de un archivo de uno en uno y, a continuación, volver a ella.
Un problema que se plantea con WAP pasarelas MIME se refiere a los tipos devueltos por el servidor web. Si un usuario solicita una JAD o JAR archivo y el servidor devuelve el tipo malo MIME, la puerta de entrada y, posteriormente, el teléfono se encargará de la transferencia incorrecta. Para garantizar la correcta descarga de MIDlets, el uso MIME los siguientes tipos:
text/vnd.sun.j2me.app-descriptor jad
application/java-archive jar
13.5 Aleatorio foro publicar
hay que tener MIME correcta configuración en el servidor que almacena los archivos .JAD/.JAR. Después de que usted podrá descargar aplicaciones para el dispositivo. Por favor, tenga en cuenta que: - este proceso es bastante dispositivo específico (no necesariamente utilizan el protocolo WA) - Más le vale tener rutas absolutas a .JAD y .JAR conjunto (es decir, http://www.fooserver.com/repository/JoeDoeApp.JAD)
13.6 Aleatorio foro publicar
Al menos en el Siemens dispositivos, usted tiene una configuración específica para Java, que es diferente de la de WAP y GPRS. Usted puede navegar a través de WAP, pero cuando uno se encuentra midlet, una diferente configuración cambiará automáticamente a realizar la descarga. En el M50 mano, usted tiene que configurar el Java perfiles de acuerdo a los parámetros de su proveedor; c55 en la mano, el mismo conjunto se llama “HTTP profile” y se utiliza también para otros tipos de descarga (por ejemplo, http conexiones en el MIDlet) .
13.7 Varios enlaces interesantes sobre la firma avanzada MIDlet cosas
13.8 Very cool MIDlet programación introducción
13.9 http://wireless.java.sun.com/midp/articles/deploy/
Para implementar sus aplicaciones inalámbricas a distancia:
Sube tus archivos de la aplicación (JAD y JAR) a un servidor web remoto. Si su proyecto se llama juegos, por ejemplo, cargar los archivos: games.jad y games.jar de la bin directorio de su proyecto de origen (por ejemplo, <toolkit>/apps/games/bin). Tenga en cuenta que los dos ficheros deben acabar en el mismo directorio en el servidor.
Reconfigurar el servidor web de modo que reconozca JAD y JAR archivos:
JAD para el tipo de archivo, establecer la extensión del archivo a .jad y el tipo MIME a text/vnd.sun.j2me.app-descriptor.
JAR para el tipo de archivo, establecer la extensión del archivo a .jar y el tipo MIME a application/java-archive.
¿Cómo se configura el servidor web depende de que uno que se está usando. Por ejemplo, si usted está utilizando Tomcat, asegúrese de que su web.xml archivo incluye las siguientes líneas:
<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>
Cambie su JAD del archivo MIDlet-Jar-URL propiedad para especificar el URL de su JAR archivo. Por ejemplo, en la copia de games.jad que has subido al servidor, cambio ...
MIDlet-Jar-URL: games.jar
... a ...
MIDlet-Jar-URL: http://YourWebServerAddress:port/pathTo/games.jar
13.10 Enlaces diversos
13.11 Nokia J2ME el desarrollo del programa vínculos
Desde un punto de vista Nokia sitio:
Nokia's J2ME consiste en la aplicación de la norma de la industria MIDP 1.0 y CLDC 1.0. La plataforma se extiende por el Nokia User Interface (UI) API. Es para desarrolladores de aplicaciones acceso a determinadas funciones básicas de teléfono que no se especifica por CLDC 1.0 o MIDP 1.0. El Nokia UI API proporciona acceso sencillo a las capacidades de audio, vibración, iluminación de la pantalla, así como algunos gráficos relacionados con el equipamiento.
De un mensaje de correo electrónico que he recibido:
Nokia Así parece ser en realidad la apertura de sus teléfonos a cualquier tipo de modificación de la costumbre que se pueda imaginar. Se podría añadir a las vibraciones java juegos, dibujos animados añadir burbujas a tomar fotos y, de hecho, subir fotos a tu sitio! Usted puede escribir su propio servidor, y la gente podría subir cosas a usted!
Aquí hay algunos cool 7650 enlaces:
13.12 Teléfono celular programa de enlaces
14. J2ME versus BREW
14.1 Introducción
Hay dos plataformas de software dominante para los dispositivos móviles: J2ME y BREW. Muchos teléfonos celulares transportistas han decidido ofrecer a los teléfonos con el apoyo J2ME: AT&T, T-Mobile, y Sprint. Una de las principales compañía ha decidido ofrecer sólo los teléfonos con el apoyo BREW: Verizon.
Un dispositivo móvil que soporte J2ME puede ejecutar J2ME programas, pero no puede ejecutar programas BREW. Un dispositivo móvil que soporte BREW puede ejecutar BREW programas, pero no puede ejecutar programas J2ME.
Los fabricantes de dispositivos móviles suelen ofrecer varias versiones diferentes sobre la base de las normas de emisión inalámbrica. Por ejemplo, Motorola ofrece dos versiones de la T720: GSM y CDMA. Casualmente, el GSM versión de la T720 apoya J2ME programas, y la CDMA versión de la T720 apoya BREW aplicaciones. Así pues, aunque las normas de emisión inalámbrica no son técnicamente relacionadas con los sistemas operativos de teléfono, las circunstancias en el mercado han llevado a esta correlación accidental.
14.2 Teléfono celular los proveedores de servicios de decidir qué un cliente puede hacer con un teléfono celular dispositivo
Aquí está un resumen de lo que el teléfono celular los proveedores de servicios permiten a los clientes hacer:
[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 ofrece el mejor servicio al cliente y desarrollador de acceso a los teléfonos celulares y dispositivos de archivos multimedia en Internet. Evidentemente, AT&T ha decidido centrarse en el negocio de transporte de octetos a través de sus redes, en lugar de tratar de estar en el negocio de venta de contenidos multimedia.
Verizon es el más opresivo de telefonía móvil proveedor de servicios de todos ellos. “Get It Now.” su modelo de negocio, que implica restringir artificialmente el uso del cliente de su propio teléfono celular dispositivos para proteger los negocios de venta de contenidos multimedia, ha inspirado a muchos clientes frustrados de rescindir sus contratos con Verizon o encontrar maneras de eludir el “Get It Now.” portal. Así como salas de cine y deportivos pueden cobrar precios muy altos para los alimentos, porque los clientes no pueden acceder fácilmente a fuentes alternativas de alimentos en esas circunstancias (es decir, hay una falta de acceso a la competencia), Verizon pueden cobrar precios muy elevados para el acceso a archivos multimedia y programas de software porque los clientes no pueden acceder fácilmente a fuentes alternativas para archivos multimedia y programas de software.
14.3 Binary Runtime Environment for Wireless (BREW)
BREW es “Binary Runtime Environment for Wireless, una plataforma de software propietario desarrollado por QUALCOMM. Para obtener más información acerca de BREW, visite el siguiente sitio Internet:
http://www.qualcomm.com/brew
El SDK se puede descargar de Qualcomm. En 2002, la SDK podrían utilizarse para construir software utilizando Microsoft Visual C++ 6.0, y los programas podrían transferirse a un teléfono celular sin una “prueba de la firma.”
Todos los teléfonos con los contratos Verizon uso BREW. Todo el software, imágenes y música, deberán ser transferidos a través de Verizon's “Get It Now.” portal, y por lo general implica el pago de las tasas más allá de los costos de ancho de banda de red.
14.4 Java 2 Platform, Micro Edition (J2ME)
J2ME es “Java 2 Platform, Micro Edition”, un “altamente optimizado” Java entorno de tiempo de ejecución. Para obtener más información acerca de J2ME, visite el siguiente sitio Internet:
http://java.sun.com/j2me
Puede que ya lo han hecho algunos Java programación. J2ME incluye muchas de las clases Java utilizados para los programas de ordenador de escritorio. Obviamente, cualquier Java clases que son puro Java código, y no dependen de ningún hardware o sistema operativo funciones, puede ser compilado para ejecutar en el contexto de cualquier Java máquina virtual.
Una persona puede crear hilos, tomas de corriente, gráficos lienzos, etc, muy fácilmente. Una persona sólo necesita descargar un archivo *.JAR (y posiblemente un archivo *.JAD) para instalar una aplicación sobre un teléfono celular.
Descarga de la Java SDK
es gratuita. La documentación para Java es completa. Millones de personas han desarrollado el código de Java. Hay numerosos foros de Internet discutir diversos aspectos de la programación Java.
En apenas minutos de búsqueda en el Internet, he encontrado cientos de programas de software interesante, y las imágenes, y efectos de sonido, todos los Motorola T720 GSM/J2ME para el teléfono celular - y todos los archivos que no cuestan nada para descargar.
Estoy muy emocionado por ser capaz de sacar el máximo provecho de la multimedia de los aspectos de mi propiedad (es decir, mi teléfono celular), sin tener que pagar mi teléfono celular proveedor de servicios para algo más que el uso de su red de telefonía celular.
14.5 Mi BREW y Verizon historia de horror
He creado el software para ambos J2ME y BREW plataformas, y, en mi opinión, creo que ambas tecnologías tienen sus ventajas y desventajas, y ambos son muy susceptibles de ser utilizados para crear sofisticados programas muy fácilmente.
Sin embargo, una empresa que está interesada en la creación y venta de software para los teléfonos celulares deben empezar por considerar una sola “pregunta:” Si “el desarrollo de software, se me permite venderlo?”
Si una empresa desarrolla software para la plataforma J2ME y, a continuación, la mayoría de teléfonos celulares los proveedores de servicios permiten a los clientes ir a cualquier sitio de Internet y descargar cualquier software J2ME, sin imponer ningún coste más allá del costo de la transferencia de octetos a través de la red de telefonía celular. Por lo tanto, un desarrollo de software de negocios que es cierto para poder tener acceso a clientes potenciales, y pueden hacer sus propios arreglos para la recogida de dinero de los clientes para cualquier software de compras.
Si una empresa desarrolla software para la plataforma BREW, Verizon entonces decide si o no el software estará disponible para la venta a los clientes. Además, Verizon que va a extraer un gran porcentaje del precio de venta del software para el privilegio de ser autorizados para vender software a través de su portal exclusiva.
Aquí está mi BREW y Verizon historia de horror:
Tuve una única idea para un programa de software para teléfonos celulares en un momento en que los teléfonos celulares están empezando a ser capaz de ejecutar BREW y J2ME programas. Yo estaba muy emocionada porque yo creía que podía crear y publicar un programa único para estas plataformas mucho antes de cualquier competidores estaría dispuesta a crear un producto similar. Yo estaba convencido de que finalmente podría hacer algo en mi vida que me hacen ricos. Por lo tanto, dejé mi trabajo y empezó a trabajar en un BREW versión del software de mi idea. Después de seis meses de duro trabajo, y no de ingresos, yo estaba acabado con mi BREW programa! Yo estaba dispuesta a presentar a Qualcomm para la prueba.
Fue entonces cuando hice un descubrimiento horrible: Incluso si mi programa aprobado el aseguramiento de la calidad de pruebas, Verizon tendría que aprobar la venta de mi software - y Verizon podría rechazar de mi software por cualquier motivo (más allá de las razones obvias de ser ofensivo o en competencia con algún otro aspecto del negocio Verizon's). Yo simplemente no imaginar esta posibilidad. Todo lo que he leído acerca de BREW desarrollo implica que el reto consistía en pasar las pruebas de garantía de calidad. Nada de lo mencionado he leído ninguna necesidad de contar con el software aprobado por el teléfono celular los proveedores de servicios. I no se habría sorprendido al enterarse de que el teléfono celular los proveedores de servicios pueden optar por no vender ofensivo o programas maliciosos, pero esas consideraciones parecía tan poco importante para mi proyecto en particular que no pensar en el concepto más general que el teléfono celular los proveedores de servicios pueden elegir a no vender programas de software común!
Uno de mis amigos, que ya había vendido varios juegos de video a través de programas de Verizon, pidió a un representante Verizon si Verizon apruebe mi software a la venta en su red ... Verizon El representante “dijo:” no, porque había algunos otros programas de software en ese género ya amplia. Mi software es un tutor de vocabulario (con especial consideración para la SAT y GRE pruebas estandarizadas), pero la Verizon representante dijo que el juego de palabra género ya “lleno de gente,” a pesar de que hubo menos de 10 palabras relacionadas con los programas en el total “Obtener Ahora.” Portal, y los otros programas son muy diferentes (por ejemplo, crucigramas, “Scrabble”, “Boggle”, etc.) Mi programa es un logro tecnológico: Se almacenan las definiciones del vocabulario de 5000 palabras, junto con sinónimos y antónimos, el significado de las palabras y grupos (de modo que preguntas del juego sería difícil), en un programa que era inferior a 1 MB. Mi programa habría sido único en el mercado durante muchos meses, y potencialmente para un par de años.
Yo estaba enojado, deprimido, y financieramente quebrado. Seis meses de trabajo fue en vano, porque sólo quería Verizon software que estaba seguro de que vender miles de copias en su portal de ventas, y el representante Verizon no cree mi software tiene un alto potencial de ventas.
Aquí está la lección más importante que aprendí de esta amarga experiencia: Compruebe cada parte de un plan de negocios antes de empezar a trabajar. (Lo ideal sería que cada parte del plan de negocio podría ser probado en repetidas ocasiones, por la ejecución real de los distintos procedimientos críticos, antes y durante el esfuerzo de crear el producto).
Yo debería haber comprobado si o no habría ningún obstáculo para la probable venta de mi software antes de empezar a desarrollar el software. Me habría descubierto que Verizon podría optar por no me permite vender mi software.
Me enteré de una segunda lección: Evite situaciones en las que otras personas tienen la capacidad de determinar si procede o no tiene acceso a los clientes!