J2ME utvikling av programvare for mobiltelefoner
(2002)
Colin Fahey

Motorola T720 mobiltelefon, vises åpnet
1. Advarsel
Dette dokumentet er foreldet! Informasjonen i dette dokumentet kan ha vært gyldig og nyttig i året 2002, men mange ting har endret seg i senere år! Dette dokumentet skal nå bare være å anse som en interessant historisk rekord av året 2002. Ikke stole på noen informasjon eller veiledning i dette dokumentet. All teknisk informasjon i dette dokumentet er svært foreldet.
Laste ned selv-laget programvaren selv, laget bilder, og selv-laget telefon varsle melodier (dvs. "ringetoner)," var relativt sjelden og vanskelig i år 2002. Dessverre, seks år senere, noen mobiltelefon tjenesteleverandører (inkludert Apple, som gir den eksklusive programvaren og "ringetone" portal for iPhone) fortsatt pålegge restriksjoner på nedlasting av programvare, bilder og musikk, fordi mobiltelefonen tjenesteleverandører likte svært stor økonomisk fortjeneste ved å styre disse typer nedlastinger.
Heldigvis, mobiltelefoner slik som de med den "Android" programvare-plattform, vil alltid ende evne til selskapene å opprette og utnytte lukkede markeder for slik bruk av mobiltelefoner. Selv om forbrukerne gjerne kjøpt mobiltelefon tjenesten planer som inkluderte svært høye kostnader for å laste ned programvare, bilder og musikk, dette er på grunn av begrenset antall mobiltelefon servicetilbud finnes.
Den økonomiske dynamikken som har aktivert enkelte selskaper å vokse til å dominere markedet bør ikke tolkes som implisitt sterk godkjenning av forbrukerne. Bedriftene begynner å dominere, og deretter gjøre det vanskelig eller umulig for konkurrentene å gå inn i markedet, den dominerende selskapene kan tilby produkter som kombinerer høy positiv verdi (for eksempel evne til å kommunisere hvor som helst) med høy negativ verdi (for eksempel høye priser for ønskelig programvare, bilder og musikk, som alle ville være fritt tilgjengelig, og dermed er det mulig at tjenesten legger til negativ verdi). Ingen forbruker er tvunget til å kjøpe en mobiltelefon, men det er ingen tvil om at den dominerende mobiltelefon tjenesteleverandører har gradvis skapt betingelser som ikke kan anses som et "fritt marked." Derfor er mobil-tjenesten har vært økonomisk "ineffektive" og har vært en ikke forfalt belastning for forbrukerne.
Forhåpentligvis krav at mobiltelefonen tjenesten radiofrekvenser være tilgjengelig for konkurrerende tjenester vil gjenopprette normal markedet verdier å overføre data, slik at mobiltelefonen tjenesteleverandører som er igjen redusert til bare bærere av data (dvs. bare gi båndbredde) i stedet for informasjon eller underholdning leverandører !
Tilrettelegging av transport av data må være adskilt fra virksomheten med å selge data, ellers vil det være et insentiv for data transport virksomhet for å stenge konkurrenter fra salg av data gjennom de samme dataene transport kanalen.
Videoen spillkonsoll markedet lider av det samme problemet. Produsentene av videospill-konsollen maskinvare er i virksomheten for å skape enheter som kan vise video spill, men de samme selskapene også har eksklusiv kontroll med overføring av programvare til disse spill-konsoller. Derfor er det et incentiv for videospill-konsollen produsenter for å stenge konkurrenter fra salg av programvare for videospill-konsoller. Hvis et videospill-konsollen Produsenten fokusert på design og produksjon maskin som skal kunne selges med fortjeneste (i stedet for på et betydelig tap, som med X-Box og PlayStation og Nintendo videospill-konsoller), deretter videospill markedet ville trives, og kvaliteten av de beste videospill, vil dramatisk bedre, og kostnadene for videospill ville bryte sammen.
2. Emne indeks
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
3. J2ME utviklingsverktøy
Denne delen beskriver hvordan du laster ned utviklingsverktøy som kan brukes til å kompilere J2ME kildekoden i klasse-filer egnet for mobile enheter. Merk at Sun "J2ME Wireless Toolkit," diskuteres i et senere avsnitt av denne artikkelen, må du laste ned den Java SDK beskrevet i dette avsnittet.
3.1 JDK 1.4 (eller senere)
Dette betyr at du trenger den konvensjonelle Java 2 SDK fra Sun. Jeg lastet ned og brukt versjon 1.4 via følgende link:
Her er hva de laster ned siden ser slik ut:
Starte installasjonsprogrammet. Installer for å standardplasseringen ( c:\j2sdk1.4.0_03 ) med mindre du er i stand til å løse banen problemer som kan oppstå.
3.2 Connected Limited Device Configuration (CLDC)
Jeg vil ikke late som vet hva dette er, men jeg bare lastet det ned fra Sun nettsted.
Her er hva de main CLDC laste ned webside ser slik ut:
Bare 1.0.3 var tilgjengelig på det tidspunktet jeg besøkte.
For å kunne laste ned denne, jeg trengte å registrere Sun nettsted. Jeg opprettet følgende profil:
Username: anon***anon
Password: nospamplease
Favorite color: blue
Full name: Prof. Anon Nospamplease
Jeg lastet ned følgende fil:
j2me_cldc-1_0_3-fcs-src-b17-winunix-14_sep_2001.zip
Jeg unzipped til følgende katalog:
Jeg omdøpt til "cldc-1_0_3-fcs" katalog for å ganske enkelt:
cldc (dvs. den fullstendige banen er c:\j2me\cldc)
3.3 Mobile Information Device Profile (MIDP)
Jeg vil ikke late som vet hva dette er heller, men jeg bare lastet det ned fra Sun nettsted.
Her er hva de main MIDP laste ned webside ser slik ut:
Jeg lastet ned følgende fil:
j2me_midp-1_0_3-fcs-src-b26-win-19_sep_2001.zip
Jeg unzipped til følgende katalog:
Jeg omdøpt til "midp-1_0_3-fcs" katalog for å ganske enkelt:
midp (dvs. den fullstendige banen er c:\j2me\midp)
3.4 Konfigurere verktøy
3.4.1 Etablere stier
Legg til følgende linjer til AUTOEXEC.BAT fil:
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%
Deretter styrke disse variablene som skal lastes ved å kjøre batch-filen:
Du kan også sette opp de samme variablene ved hjelp av Windows-miljøet variabel kontrollpanelet.
Legg merke til at jeg valgte å angi eksplisitt katalogbanene til min nåværende versjonen av Java 2 SDK. Derfor, hvis jeg oppgradere, så jeg må endre AUTOEXEC.BAT filen for å angi den nye kataloger.
3.4.2 Kontroller Jave 2 SDK binærfiler
Når innstillingene ovenfor trer i kraft, skal du kunne kjøre Java verktøyet programmer fra kommandolinjen uten å angi den fullstendige banen til verktøyet programmer.
Følgende kommando vil starte mobil enhet emulator:
Dette bildet viser mobil enhet emulator:
4. Simple J2ME program
4.1 Skriv Java koden
Bruke et tekstredigeringsprogram, en person kan skrive inn koden, for eksempel for denne HelloMIDlet.java kildekoden fil:
Her er koden i rent tekstformat:
// 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 Fyll *.java koden til *.class
Advarsel: Den følgende kommando må være på én linje, men har blitt utvidet til flere linjer med tekst bare for enkelhets skyld.
(Current directory: C:\HelloMIDlet)
javac
-target 1.1
-d .\
-bootclasspath c:\j2me\midp\classes
HelloMIDlet.java
Merk: "-target 1.1" er nødvendig for å unngå feil i fremtiden "preverify" stadium. Sannsynligvis har dette noe å gjøre med et problem med MIDP 1.0.3 støtte i JDK 1.4.
4.3 Preverify å generere et nytt *.class fil
(Current directory: C:\HelloMIDlet)
preverify -classpath c:\j2me\midp\classes;. HelloMIDlet
Dette genererer en ny *.class filen i en ny underkatalog kalt "output" (som standard).
4.4 Test den nye *.class fil
(Current directory: C:\HelloMIDlet)
midp -classpath c:\j2me\midp\classes;.\output HelloMIDlet
Dette starter telefonen emulator, noe som viser at den nye "output" katalogen inneholder noen av de nødvendige *.class filer.
Dette bildet viser forventet resultat.
4.5 Lag en ny tekstfil, "manifest.mf" og redigere filen
En "manifest.mf" filen er viktig for å få en faktisk mobiltelefon til å tolke innholdet i en *.jar fil. Hvis en skikkelig "manifest.mf" Filen er ikke inkludert i *.jar filen, deretter mobiltelefon kan, laster ned den *.jar fil, men kanskje ikke klarer å tolke den nedlastede filen, eventuelt rapporterer en feil som "Unsupported Content Type".
Det følgende er et eksempel på en enkel "manifest.mf" fil.
Her er "manifest.mf" fil som ren tekst:
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
Legg merke til at CLDC og MIDP versjoner er spesifisert i denne filen. Vær svært forsiktig og konservativ når du redigerer de ulike feltene i denne filen. Dersom du får "File Corrupt" feil, og deretter prøve å eliminere alle felt som ikke er vist i dette eksemplet. Også, legger feltene i den rekkefølgen de vises i eksempelet. Også, forkorte hvert felt verdi så mye du kan, og holde tegn begrenset til enkle bokstaver, tall, punktum og bindestreker. Noen mobiltelefon-tjenester, og mobiltelefoner, kan tolerere mer variant av feltet bestilling og feltet innholdet.
Forsiktig:
Når "jar" programmet brukes til å opprette en *.jar fil, og "manifest.mf" filen er angitt som manifestfilen, den "jar" programmet leser manifestfilen og kan legge til flere felt som det opprettes en fil som heter "MANIFEST.MF" innen utgangen *.jar fil. Derfor, hvis "MANIFEST.MF" filen er hentet fra en *.jar fil, og er deretter sammenlignet med den opprinnelige "manifest.mf" angitte filen under etableringen av *.jar, de to filene kan være forskjellige, med "MANIFEST.MF" fil som inneholder flere felter enn den opprinnelige "manifest.mf" fil .
Ikke pakke ut en "MANIFEST.MF" fil fra en *.jar fil, og forsøker å danne en ny *.jar fil med at manifestfilen. Hvis du pakker ut en "MANIFEST.MF" fil fra en *.jar filen, deretter må du sørge for å eliminere alle felt, bortsett fra dem som vises i eksempelet "manifest.mf" filen vist ovenfor.
Merk:
Ikoner for programmer som tilsynelatende ikke vises på Motorola T720 telefonen. Dette er hvorfor jeg ikke beskrive min MIDlet med et ikon. Men følgende viser hvordan du angir et ikon for programmet innen manifestfilen:
MIDlet-1: My_Description, /icon.png, HelloMIDlet
Ved utvikling på mobiltelefoner som gjør vise ikoner for programmer, spesifisere ikon filnavn, og legger til ikonet bildefilen seg til *.jar fil ved å filnavnet blant filnavn på filer som skal legges til *.jar fil.
4.6 Sett "manifest.mf" fil og *.class fil til en *.jar fil
Følgende kommando oppretter en *.jar fil. Den *.jar filen skal inneholde spesifisert manifest.mf filen, og vil inneholde *.class filer funnet i den angitte katalogen.
Gjeldende katalog: C:\HelloMIDlet
jar cfm hi.jar manifest.mf -C .\output HelloMIDlet.class
Kompleks hypotetisk eksempel for å skape en *.jar fil
Anta at et ikon bildefilen (for eksempel "icon.png") skal vises i en *.jar filen som "/icon.png". (Merk: Programmet ikoner vises ikke på Motorola T720 mobiltelefon, men du trenger vises på andre mobiltelefon-typer, og gjøre vises i MIDP emulator.)
Anta at det er en katalog med navnet "images" med bildefiler (*.png format). Anta at denne katalogen, og alle bildene i katalogen, bør være tilgjengelig for Java programmet ved den relative katalogen /images (slik at et bilde "a.png" ville være tilgjengelig ved hjelp av banen "/images/a.png").
Tenk alle de *.class filer produsert av preverify kommandoen ligger i en katalog med navnet "verified". For eksempel blir bekreftet av de største klassen, "MyApp.class", ville være i "verified" mappe, sammen med andre klasser på programmet. Alle disse klassene er å være tilgjengelig i rotkatalogen på *.jar fil.
Følgende kommando oppretter en *.jar fil som oppnår de ulike målene er angitt i forrige avsnitt. Advarsel: kommandoen har blitt utvidet til flere linjer med tekst her bare for enkelhets skyld. Når du skriver inn kommandoen ved en ledetekst, kommandoen må ikke inneholde linjeskift, ellers kommandoen Tolken skal tolke skrevet tekst som flere uavhengige kommandoer.
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 .
Den avsluttende delen av kommandoen er vanskelig å forstå. Det har følgende betydning: "Endre den gjeldende arbeidsmappen til .\verified, og deretter ble alle *.class filer som finnes i den relative katalogen '.' (nemlig alle *.class filer i den gjeldende arbeidsmappen) til *.jar fil." Fordi katalogen hadde vært endret før angivelse av banen av klasser til å sette i *.jar fil, den lokale banen vil ikke vises i den relative banen når filene er plassert i til *.jar fil.
For eksempel at det er bekreftet klasser i følgende katalog:
C:\MyApp\verified
Anta at det er klasse-filer, for eksempel følgende:
C:\MyApp\verified\w.class
Så spesifisere "-C .\verified ." i kommando for å opprette *.jar fil, fra en gjeldende katalog for "C:\MyApp", vil resultere i "w.class" blir satt i rotkatalogen på *.jar fil. </ E>
Advarsel: Når "-C" alternativet er angitt, blir det endringer i gjeldende arbeidsmappen på at poenget med å behandle den samlede sekvens av kommando parametre til jar kommando. Derfor er jar kommandoen kan klage på at det ikke kan finne andre filer som nevnt i kommando parametre utover "-C" alternativet. Hvis dette skjer, er det bare å flytte "-C .\verified ." å være den siste parametere i den overordnede kommandoen.
Følgende viser verbose output av jar kommando.
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 Opprette og redigere en ny *.jad fil
En *.jad filen er nødvendig, slik at mobiltelefonen kan beskrive et dataprogram til en person før personen bestemmer seg for å laste ned programmet. Den *.jad filen inneholder også noen indirekte fra *.jar seg selv.

Et eksempel *.jad fil, som beskriver en *.jar fil
Her er eksempel hi.jad fil i rent tekstformat:
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
Det finnes programmer som kan generere *.jad fil, noe som gjør det enklere å oppdatere "MIDlet-Jar-Size:" feltet hver gang *.jar filen er endret (og dens størrelse endringer). Hvis du søker på Internett vil du finne nyttig J2ME programmer.
Hvis størrelsen feltet ikke spesifiserer nøyaktig byte total av *.jar filen, deretter følgende feilmelding kan vises etter en vellykket nedlasting til en mobiltelefon: "Download Failed" (last ned mislyktes).
For Motorola T720 mobiltelefon, kan følgende feilmelding kan brukes til inidcate ugyldige felt i *.jad fil, eller muligens ugyldige felt i den genererte MANIFEST.MF filen i *.jar fil: "Failed: File Corrupt" (mislyktes: filen er skadet).
Merk: Hvis *.jar fil i samme katalog som den tilsvarende *.jad filen på en Internett-server, så *.jad fil kan ganske enkelt angi filnavnet på *.jar fil, uten å angi en full URL, som i følgende eksempel:
MIDlet-Jar-URL: hi.jar
Når du laster ned disse filene fra en Apache Internett-server til en Motorola T720 mobiltelefon, er det akseptabelt å ikke inkludere full URL. Men når du laster ned disse filene fra en Yahoo! Internett-server til en Motorola T720 mobiltelefonen, den prøver å laste ned, vil mislykkes, hvis ikke en full URL banen til *.jar filen er angitt i *.jad fil, som i følgende eksempel:
MIDlet-Jar-URL: http://www.colinfahey.com/hi.jar
Jeg vet ikke årsaken til dette problemet, og jeg vet at dette problemet påvirker ikke andre mobiltelefoner (eller mobiltelefon tjenesteleverandører). Å måtte oppgi hele URL for *.jar filen i *.jad filen er åpenbart upraktisk, fordi flytte filer til ulike steder på en server ville kreve endring av informasjon i alle *.jad filer. Men å angi den fullstendige URL kan gjøre *.jad mer pålitelig for enkelte mobiltelefoner og visse mobil-tjenesteleverandører.
4.8 Test *.jar filen og *.jad filen ved å kjøre programmet
Følgende utføres klassen funnet i *.jar fil, beskrevet av *.jad fil.
(Current directory: C:\HelloMIDlet)
midp -classpath c:\j2me\midp\classes;.\hi.jar -descriptor hi.jad
4.9 Referanser for J2ME, MIDP, CLDC utvikling
Mye av det jeg presenterte her kan bli funnet på mange andre nettsteder. Men jeg rettet opp noen feil funnet på andre nettsteder og lagt mangler detaljer, og presenterte den komplette opplevelsen av at noen prøver å gjøre det. Her er svært informative linker som hjalp meg med å komme i gang:
5. Kompleks J2ME program
5.1 Innledning
Det enkle programmet ble presentert i forrige del av dette dokumentet har bare én kilde koden fil, og programmet gjør nesten ingenting og er derfor ikke et godt eksempel på mobiltelefonen programmering.
Min venn Sam Robertson skrev en interessant J2ME program som lærer en person å spille kortspill "Blackjack" (også kalt "21"). En spiller er presentert med en "forhandler kort," og spilleren står med to kort, og spilleren må bestemme hva du skal gjøre: "opphold treffer, double-ned, eller delt."
Dette programmet har seks kildekodefiler. Programmet svarer på brukerundersøkelser, og har enkel tegning og tekst-oppdateringer.
5.2 Kildekoden
Klikk på lenken for å få kildekoden, og *.jad fil, "manifest.mf" fil, og en batch-fil, alle i én praktisk ZIP fil.
sbj.zip
Kildekoden i en ZIP fil
6090 bytes
MD5: bf3922035b7a4eef24e107d03b7524c9
Pakk ut til en vilkårlig katalog, men hvis du pakke til "c:\" under Windows, følgende eksempel diskusjonen vil bli enda tettere til den faktiske situasjon.

Utpakking sbj.zip å "c:\" oppretter katalogen "c:\sbj"
5.3 Manifestfeil
Fil: "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 Batch-fil for å bygge programmet
Følgende satsvise filen er grovt, men det tjener som en illustrasjon på hvordan du kan komme i gang med å skrive din egen batch fil til å bygge din J2ME programmet. Dette eksemplet batch-filen gjør følgende:
(1) Slett katalogen som inneholder gamle *.class filer;
(2) Slett katalogen som inneholder gamle bekreftet *.class filer;
(3) Foreta en "klassene" resultat katalog;
(4) Kompiler alle *.java kilder i å *.class filer, med utgang skal "klassene" katalogen.
(5) Foreta en "kontrollert" utgang katalogen;
(6) Preverify alle klasser "i" klassene katalog, og sette det bekreftet klasser i "bekreftet" katalogen.
(7) Opprett en *.jar fil, og legger til mainfest fil, og alle klasser i "bekreftet" katalogen;
*(8) Test programmet via preverified klasser rett;
*(9) Test programmet via *.jar og *.jad filer;
(*... Disse trinnene er deaktivert (ved å kommentere) i min batch-fil.)

Batch-fil "build_sbj.bat" for å bygge programmet
Her er den samme filen ("build_sbj.bat") i rent tekstformat:
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 Bygningen fra ledeteksten
Her er resultatet av å kjøre "build_sbj.bat" batch-filen på kommandolinjen:

Utføre "build_sbj.bat" batch-fil
Merk at advarsler for "rmdir" og "del" operasjoner simpelthen at det er ingenting å fjerne.
Du kan se den nye kataloger (dvs. "classes" og "verified") og den nye *.jar fil som resulterte i å kjøre batch-filen:

Kildekodefiler og nye generert fil
5.6 *.jad fil
Hvis du vil distribuere sbj.jar fil, må vi opprette og redigere sbj.jad filen du har de riktige *.jar størrelse i det aktuelle feltet:
Fil: 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
En person må kanskje legge hele URL til *.jar filen når *.jad filen er satt på en Internett-området - men jeg oppdaget (etter ett forsøk) at jeg var i stand til å unngå å nevne den fulle URL (dvs., jeg bare angitt *.jar filnavnet av seg selv). Men å sette i hele URL, men jeg vil gjerne fortelle deg hva jeg observerte.
5.7 Sammendrag
Å ha flere kildefiler i prosjektet er felles, og i denne delen vi ga en olje illustrasjon av bygningen flere klasser, etterfulgt av innpakning og utførelse.
Vennligst se følgende avsnitt om hjelp Sun Wireless Toolkit, noe som gjør bygging av programmer mye enklere.
6. Sun "Wireless Toolkit (version 1.0.4_01)"
6.1 Innledning
Sun et praktisk-miljø for bygg og emballasje J2ME programmer: "Java 2 Platform Micro Edition (J2ME) Wireless Toolkit (version 1.0.4_01)".
(Advarsel: Du må laste ned de som Java 2 SDK 1.4 beskrevet i et tidligere avsnitt for å bruke denne verktøykasse. Vil dette nå hvis du ikke allerede har denne versjonen av Java 2 SDK.)
Gå til følgende nettsted for å laste ned verktøykasse:
http://java.sun.com/products/j2mewtoolkit/
Forsiktig!
IKKE klikk på linken "2.0 Beta 1 English" (foreløpig toppen Nedlastninger alternativet) hvis du gjør Motorola T720 utvikling - fordi denne versjonen har noen MIDP-2.0 ting, og komme rundt dette kan bli en hodepine.

Ikke last ned denne versjonen! ("2.0 Beta 1 English")
Jeg har prøvd denne versjonen, og jeg omsider fikk koden til å kompilere med masse rotete innstillinger endres, men etter all den innsatsen jeg har en sikkerhet unntak når jeg prøvde å utføre. Ikke bry deg!
Last ned "1.0.4_01 English" versjon. Her er hva de laster ned siden ser slik ut:

Den Sun J2ME Wireless Toolkit (version 1.0.4_01) Nedlastninger side

Den Sun J2ME Wireless Toolkit (version 1.0.4_01) FTP nettsted listen
Dette vil laste ned følgende fil: "j2me_wireless_toolkit-1_0_4_01-bin-win.exe"
Utføre dette programmet skal installeres på systemet.
6.2 J2ME Wireless Toolkit: lanseringen verktøylinje
Etter verktøykasse er installert, kan du starte den fra "Start" (Start) meny-system:

Starter verktøylinjen program
Du kan også få tilgang MIDP-1.0 dokumentasjon via "Documentation" element i denne Start (start)-menyen.

J2ME Wireless Toolkit (version 1.0.4_01) dokumentasjon
6.3 J2ME Wireless Toolkit: opprette prosjektet og bygge

Verktøylinjen er klar. Klikk "New Project..." å opprette et nytt prosjekt.

New Project: Skriv inn prosjektnavn (blir JAR navn og navn på nytt prosjekt katalogen), og skriv inn navnet MIDlet klasse (klasse utledet fra MIDlet, i hovedsak den viktigste klassen av søknaden din).

Toolbar: Prosjektet er opprettet. Legg merke til at konsollen forteller deg hvor du vil plassere *.java kildefilene, etc. (f.eks, "c:\WTK104\apps\sbj\src", osv.)

Klikk på "Settings..." på verktøylinjen for å få dette prosjektet i menyen Innstillinger.
Ignorering av "MIDlet-Jar-Size" feltet (med verdien "100 bytes)" for nå. Vi vil til slutt føre til at den riktige verdien for å få satt.

Klikk på MIDlets kategorien av prosjektet innstillinger dialogboksen.
Klikk på den eneste raden i tabellen ("MIDlet-1") for å markere og velge den. Deretter klikker du på "Edit" knappen.

Tøm "Icon" feltet hvis du ikke har en *.png filen for å sette inn i *.jar fil.
Gjør følgende:
(1) Project --> Clean: Fjerner alle *.class filer;
(2) Build : Bygger alle *.class filer og preverifies;
(3) Project --> Package --> Create Package : Produserer *.jar og *.jad

Resultatet av å bygge *.jar og *.jad
Når du gjør disse tre trinnene, vil resultatet *.jar og *.jad er straks klar for kjøring i de lokale emulator, eller for umiddelbar distribusjon på Internett-området for andre å laste ned "Over The Air" (OTA). Den *.jar størrelse feltet i *.jad filen vil være riktige. Ikke glem å gjøre trinn (3) hver eneste gang du bygger!
Nå kan du teste ved å trykke på "Run" (kjøre)-knappen.

Treffer "Run" for prosjektet leser *.jad på emulator. Du kan velge spesifikke MIDlet å lansere (vanligvis bare en).
Bare kopier *.jar og *.jad filer fra angitte steder (rapportert av verktøylinjen konsollet vinduet under bygging av prosjektet), for eksempel:
(Fra konsollen vindu:)
Wrote c:\WTK104\apps\sbj\bin\sbj.jar
Wrote c:\WTK104\apps\sbj\bin\sbj.jad
Sette disse filer direkte på Internett uten endringer, og den skal fungere. Her er hva jeg så på min mobiltelefon etter nedlasting av dette programmet kompileres "OTA" (OTA)

Sam Robertson's Blackjack Trainer (sbj.jar) kjøre på min mobiltelefon
7. Tilbyr programvare på en Internett-området
7.1 Sikre at Internett-server angir MIME for *.jar filer og *.jad filer
Hvis du har en Apache Internett-server, må du lage en fil kalt ".htaccess" innen ditt nettsted rotkatalogen. Den ".htaccess" fil lar deg overstyre Apache konfigurasjon, for eksempel legge til eller overstyrende fil MIME typer. Du må legge til spesifisere MIME typer tilsvarende *.jar filer og *.jad filer, som vist i følgende tekst fil:

Min tilpassede ".htaccess" fil for Apache Internett webserver. Merk: Jeg heter denne filen ".htaccess.txt" bare for å gjøre filen enkelt å redigere når du bruker Windows operativsystemet. Filnavnet må endres til ".htaccess" før filen kan brukes med Apache Internett webserver.
Her er mitt enkle .htaccess fil som ren tekst:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
Tilsynelatende, opprette eller endre denne filen resulterer i en umiddelbar endring av Apache tjeneren. Jeg antar det Apache serveren kontrollerer den modifikasjon dato og klokkeslett for ".htaccess" fil ved hver nye innkommende transaksjonen, og serveren reloads at filen dersom modifikasjonen dato og tid er endret.
Hvis du har en annen type Internett-server, må du finne ut hvordan du angir MIME typer, og du må sørge for at *.jar filer og *.jad filer som er tilordnet den aktuelle MIME typer.
Du vet at hvis MIME typer ikke har blitt satt opp dersom mobiltelefonen nekter å laste ned *.jad fil og rapporterer følgende feil:
"406: Not Acceptable"
7.2 Alternativt gi linker til *.jad filen innen HTML eller WML dokumenter
Den Motorola T720 J2ME mobiltelefon med AT&T tjenesten er i stand til å laste ned en *.jad filen direkte ved å skrive inn URL av *.jad filen til mobiltelefonen. Dette er sannsynligvis for å arbeide i andre J2ME mobiltelefoner med andre mobil-tjenesteleverandører.
Men det kan være mer lettvint for folk å laste ned *.jad fil ved å velge en lenke i en HTML dokument eller innen en WML dokumentet. (Merk: WML er nå foreldet. Fleste mobiltelefoner kan nå tolkar HTML.)

En enkel HTML dokument med en link til en *.jad fil

En enkel WML (WAP) side med en link til en *.jad fil (Merk: WML er nå foreldet. Fleste mobiltelefoner kan nå tolkar HTML.)
8. Laste ned programvare fra en Internett-området
Følgende bilder viser den nøyaktige sekvensen av handlinger som jeg gjorde for å laste ned og kjøre MIDlet utviklet og iverksatt som beskrevet i forrige avsnitt ovenfor. Disse bildene er fotografier av skjermen på min mobiltelefon.
(1) Hovedskjerm: Når du åpner telefonen, ser du hovedskjermbildet. Trykk på den midterste knappen for å gå til hovedmenyen.
(2) Main Menu: Flytt til elementet "WebAccess".
(3) WebAccess: Flytt til elementet "Go To URL".
(4) Enter URL: Skriv inn URL av en *.jad fil (eller av en HTML dokument, eller av en WML dokument).
(5) Details; Denne informasjonen ble analysert fra *.jad fil. Trykk DOWNLD å laste ned *.jar fil.
(6) Download Complete; Vent på denne meldingen for å forsvinne;
(7) Installing; Vent på denne meldingen for å forsvinne;
(8) xxxx bytes transferred; Vent på denne meldingen for å forsvinne;
(9) Installed; Vent på denne meldingen for å forsvinne;
Når WebAccess menyen kommer til syne igjen, etter at programmet er installert, er det bare å gå ut hver menyen for å gå tilbake til hovedskjermbildet.
(1) Hovedskjerm: Når du åpner telefonen, ser du hovedskjermbildet. Velg "Games & Apps" alternativet via hovedmenyen, eller trykk nedover markøren på hovedskjermen.
(2) Java Powered: Vent på denne skjermen for å forsvinne.
(3) Games & Apps: Velg elementet med navnet på programmet!
(4) Yay! Vellykket gjennomføring av programmet ditt!
Programmet utseendet på mobiltelefonen er veldig likt utseendet i emulator.
9. Last ned feilmeldinger og installasjon feilmeldinger
9.1 Motorola T720 (J2ME) feilmeldinger
Følgende feil meldinger er bare relevant for Motorola T720 (GSM/J2ME) mobiltelefon.
9.1.1 "Download Failed"
Forårsake # 1
Enhver fil (HTML, JAD, JAR, MID, GIF) over 1644 byte vil føre til denne feilen på visse Internett-verter og servere. Her er en kort liste over verter og servere:
Host / Server Error
=================================================== =================
Apache No
Microsoft Personal Web Server (direct from your PC) No
Earthlink (Apache) No
Yahoo! (custom server) Yes
Problemet skyldes en feil i Motorola T720 GSM/J2ME firmware, som gjør at nedlasting av filer i fragmenter mislykkes.
Den eneste åpenbare løsningen er å skifte Internett-vertskap eller server type. Andre mobiltelefon-typer ikke har dette problemet.
Forårsake # 2
Den "MIDlet-Jar-Size:" i en *.jad fil angir ikke nøyaktig byte totalt tilsvarende *.jar fil.
9.1.2 "Failed: File Corrupt"
Forårsake # 1
Den *.jar filen bruker API funksjoner som ikke er tilgjengelig på bestemte mobiltelefon.
For eksempel, MIDP 2.0 funksjoner er ikke tilgjengelige på Motorola T720 GSM/J2ME mobiltelefonen (som bare har MIDP 1.0 funksjoner). Et program kan kjøre i en emulator, men kan ikke kjøres på mobiltelefonen.
Løsningen er å søke etter MIDP 2.0 funksjoner i kildekoden og erstatte dem med MIDP 1.0 funksjoner, eller eliminere funksjoner som krever MIDP 2.0 funksjoner.
Forårsake # 2
Den "manifest.mf" filen brukes til å lage *.jar fil (via "jar" verktøyet) inneholder feil.
Sørg for at "manifest.mf" fil har følgende versjoner av CLDC og MIDP:
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
Hele "manifest.mf" filen bør se nesten nøyaktig like følgende:
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
Hver linje av teksten i "manifest.mf" filen, inkludert den siste linjen i filen, må ende med en "carraige tilbake" (CR; 13; 0x0d) tegn etterfulgt av "et" linjeskift (LF; 10; 0x0a) karakter.
Den eneste felt av "manifest.mf" filen i din egen versjon av filen som skal være forskjellig fra eksempelet som vises her er de tre første feltene som vises i eksempelet. De siste tre feltene skal være et nøyaktig samsvar med eksempel, og den endelige to tegn på filen bør være "vognretur" og "linjeskift" etter den endelige feltet.
Her er mulige problemer i din versjon av "manifest.mf" fil:
(1) Ditt "manifest.mf" filen inneholder tegn som ikke ASCII tegn; (Se på et diagram av ASCII tegn, alle tegn utenfor den 0 til 127-serien er ugyldig);
(2) Ditt "manifest.mf" filen har ikke "et" linjeskift (LF) karakter etter hver "vognretur" (CR) tegnet på slutten av hver linje;
(3) Ditt "manifest.mf" filen er usynlig mellomrom eller tabulatorer på slutten av hver linje før (CR)(LF) linje oppsigelse;
(4) Ditt "manifest.mf" filen inneholder en "Manifest-Version:" linje;
(5) Den siste linjen på "manifest.mf" filen ikke slutte med en (CR)(LF) linje oppsigelse, men i stedet bare når slutten av filen;
(6) Ditt "manifest.mf" filen ikke har nøyaktig felt og eksakt rekkefølge på felt som vist i eksemplet ovenfor;
(7) Ditt CLDC versjonen er ikke akkurat 1.0 eller MIDP versjonen er ikke akkurat 1.0;
(8) Din leverandør har tegn som ikke er ASCII tegn (for eksempel ingen Unicode-tegn er tillatt);
(9) Ditt "manifest.mf" filen ikke har en plass etter den andre komma i "MIDlet-1:" linje;
Kanskje noen av tilfellene nevnt ovenfor ikke faktisk føre til problemer for mange mobiltelefoner, men å eliminere alle tilfellene nevnt ovenfor kan aktivere laste ned for å lykkes. Når nedlastingen er fullført, kan du eksperimentere med variasjoner av "manifest.mf" filen for å finne ut hvilke andre ting du kan gjøre uten å forårsake laste ned feil. Når "manifest.mf" filen er endret, er det viktig å kontrollere at du laster ned programmet fortsetter å arbeide etter alle mål mobiltelefoner og mobil-tjenesteleverandører. Noen telefoner og tjenester er mindre fleksible enn andre.
Når en "manifest.mf" filen er lagt til en *.jar fil via jar programmet, jar programmet oppretter en ny versjon av manifestfilen innenfor *.jar fil. Den genererte versjon av manifestfilen innenfor *.jar filen heter "MANIFEST.MF". Den jar program kan legge til felt i denne filen som ikke finnes i "manifest.mf" fil levert av programmerer. Ikke pakke ut en "MANIFEST.MF" fil fra en *.jar fil, med mindre du er forberedt på å eliminere noen av feltene og gjøre de gjenværende feltene se ut akkurat som i eksempelet "manifest.mf" filen vist ovenfor.
9.1.3 "Unsupported Content Type"
Forårsake # 1
Den mobilen kan ikke akseptere MIME type rapportert av den eksterne serveren for en bestemt fil.
For eksempel, JPG bildefiler ikke støttes av Motorola T720 og vil føre til denne feilen.
Denne feilen kan også oppstå hvis MIME for en støttet filtype (for eksempel GIF, MID, JAD, JAR) er ikke rapportert riktig av serveren. En person må være svært forsiktig med å rapportere den eksakte MIME for støttede filtyper.
Forårsake # 2
Filen buffer på mobiltelefonen selv må fjernes (f.eks Browser Settings -> Clear Cache).
Hvis du nylig har lagt MIME typer til en ekstern server, og deretter forsøkte å laste ned en fil som tidligere hadde mislyktes med å installere på grunn av feil eller mangler MIME type, deretter filen buffer på mobiltelefon kan være en hindring for å laste ned filen på nytt med riktig MIME type.
Det er også mulig at den eksterne filen ble endret, og at bufret versjon er defekt og hindrer den reparerte filen versjon fra å lastes ned som en erstatning.
Tømme bufferminnet på mobiltelefonen bør sørge for at en etterfølgende Nedlastninger fordeler fra de nyeste server-konfigurasjon (f.eks nye MIME) og ekstern fil oppdateringer.
Forårsake # 3
Hvordan unngå "Unsupported Content type" feil i WAP
Hvis du får en feilmelding i WAP sier Unsupported Content type, er det ikke nødvendigvis grunn til innhold-type setting. Mange WAP sidene inneholde spesialtegn, for eksempel svensk (å ö ä), og for å få dem til å vise riktig må du spesifisere hvilke tegnsettet du bruker. For å spesifisere hvilke tegnsett som brukes på en WAP side, du endrer Content-Type hodet i serveren svar å ta med tegnsett, for eksempel "Content-Type: text/vnd.wap.wml; iso-8859-1". Når en bruker får svar fra en server, bør den ha alle de nødvendige opplysningene for å vise innholdet riktig.
Men det er et problem med å bruke denne tilnærmingen. Alle telefoner viser til gatewayen som tegnsettet de støtte ved hjelp "Accept-Charset" i forespørselstoppteksten. Ifølge HTML spesifikasjonene, bør dette være i forhold til det tegnsettet spesifisert i en server svar, og hvis de ikke samsvarer, er feil Unsupported Content type skal genereres.
For å gjøre problemet mer komplisert, litt WAP gatewayer ikke bryr seg om å sammenlikne tegnsett støttes av den forespurte enheter, derav innhold vil ikke vises riktig på disse enhetene. En annen complication er at strengen angivelse tegnsettet er små bokstaver, men noen WAP gatewayer behandle dem som case sensitive strenger.
Alle sammen, vil det være svært ulike resultater avhengig av hvilken enhet du bruker, som WAP gateway du bruker og hva de tjener reaksjon.
Den eneste måten å være sikker på at innhold skal vises på riktig måte er å alltid sjekke hvilke tegnsett er godtatt av kunden og din reaksjon på at tegnsettet før du sender den.
9.1.4 "406: Not Acceptable" ("The server cannot generate a response that your client can accept.")
Forårsake # 1
Du har en Verizon telefon!
Verizon ikke tillater sine kunder å laste ned bilder (GIF), ringetoner (MIDI) eller programmer, fra vilkårlige Internett-servere. Man må enten bruke deres service "Get It Now", eller bruke en USB kabel og "Get Around 'Get It Now' (GAGIN)" programvare.
Løsning: Bare vent til konkurranse i "det" frie marked til å eliminere "lukkede plattformer." Hele teknologi kan være foreldet etter den tid dette lykkes, men dette er hva som skjer når selskaper blir guidet av grådighet alene.
Forårsake # 2
Feilmeldingen angir at MIME skriver forbundet med filtypen (for eksempel .gif, .mid, .jar) av filen lastes ned har ikke blitt angitt av Internett-server.
Hvis du har en Apache Internett-server, for eksempel, så må du endre en ".htaccess" fil, legge til følgende linjer:
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"
Forårsake # 1
Serveren er vert for filen lastes ned ikke spesifisere MIME for at filen (f.eks GIF, MID, JAR). Dermed blir mobiltelefonen antar at filen er vanlig tekst. Dessuten må mobiltelefonen kan ha en grense på størrelsen (i byte) av tekstfiler som er mindre enn grensen på størrelsen (i byte) av binære filer (for eksempel GIF, MID, JAR). Derfor kan en binær fil tolkes som en tekstfil blir sannsynligvis overstige den maksimale størrelsen på en tekstfil, og vil dermed forårsake feilen.
Hvis du har en Apache Internett-server, for eksempel, må du endre en ".htaccess" fil, legge til følgende linjer:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid
Forårsake # 2
Tilsynelatende denne feilen kan også oppstå selv om den eksterne serveren har riktig MIME typer etablert. Jeg har ennå ikke bestemt når denne feilen oppstår i stedet for "Download Failed" for denne situasjonen.
Øyensynlig, det Motorola T720 GSM/J2ME mobiltelefonen ikke kan behandle en del av den HTTP 1.1 spesifikasjonen som gjør det mulig for filer til å fungere i bruddstykker, som krever flere "GET" forespørsler.
Når du bruker Motorola T720 GSM/J2ME mobiltelefon for å laste ned filer fra visse Internett-server-typer, noen fil (for eksempel HTML, JAD, JAR, MID, GIF) større enn 1644 byte vil føre til denne feilen. Her er en kort liste over web hosting-leverandører og om ikke Internett web hosting leverandør, fører til et problem for de Motorola T720 GSM/J2ME mobiltelefon:
Host / Server Error
=================================================== =================
Apache No
Microsoft Personal Web Server (direct from your PC) No
Earthlink (Apache) No
Yahoo! (custom server type) Yes
Problemet er grunn til firmware i Motorola T720 GSM/J2ME mobiltelefon, som påvirker evnen til å laste ned filer i bruddstykker.
Den eneste åpenbare løsningen, når du laster ned til Motorola T720 GSM/J2ME mobiltelefon, er å unngå visse Internett-web hosting server typene. De fleste andre mobil-typene ikke har dette problemet, og slik at dette problemet kan nå være trygt ignoreres.
9.1.6 "Connection unsuccessful. Try again later."
Forårsake # 1
Denne feilen har noe å gjøre med en Internett-server som er vert den forespurte filen.
Hvis du får denne feilen, foreslår jeg at du gjør følgende:
(1) Tøm cache;
(2) Tøm nettleserens historikk;
(3) Slå av telefonen;
(4) Fjern batteriet;
(5) Vent noen sekunder;
(6) Sett batteriet tilbake på telefonen;
(7) Power opp telefonen;
(8) Prøv å laste ned på nytt;
Jeg mottok "Connection unsuccessful. Try again later. feilmelding flere dager etter at jeg først kjøpte en mobiltelefon. Så, av en tilfeldig sjanse, jeg fjernet batteriet. Når jeg sette batteriet tilbake på mobiltelefon, jeg umiddelbart hadde tilgang til Internett.
Jeg fikk denne feilen flere ganger i løpet av de påfølgende seks måneder, og prosedyren ovenfor har restaurert tilgang til Internett hver gang. Jeg hadde ikke fastslå hvilke trinn i prosedyren kan være de viktigste, men jeg tror at bare du tar ut batteriet og sette batteriet tilbake på mobiltelefon kan være tilstrekkelig.
Etter min mening er denne feilmeldingen er for vagt. Hvorfor var det forsøk på å koble mislykket? Ble mobiltelefon service nettverk for opptatt? Ble mobiltelefon tjenestens "Gateway-server" ikke fungerer? Er min mobiltelefon ikke mottar eller overføre nok radio signalstyrke? Når ville være en god anledning til å forsøke å laste ned på nytt? Ti sekunder fra nå? En time fra nå? En uke fra nå? Feilmeldingen vil være mer nyttig hvis den var mer spesifikt om årsaken til problemet og om det var mer spesifikke om en mulig løsning.
Forårsake # 2
Hvis du gjorde en "Master Reset", eller hvis du aldri har vært i stand til å få tilgang til Internett, så kontroller nettverksinnstillingene på mobiltelefon. For et eksempel på nettverksinnstillingene (for Motorola T720 GSM/J2ME mobiltelefon, for AT&T tjenesten i Los Angeles, California området), se avsnittet angitt med følgende link:
10. Opprette, tilbud, og laste ned "ringetoner"
10.1 Lage eller kjøpe en MIDI fil (*.mid)
Du kan lage eller kjøpe en MIDI lydfil (*.mid) fra en annen kilde. Jeg fant temaet musikk til TV-show "Knight Rider" (1982-1986) i MIDI format (f.eks "knightrider.mid") ved et enkelt søk på Internett.
Dette bildet gir deg en ide om hvordan en MIDI filen vises i en MIDI redaktør. Det er ikke nødvendig å ha en MIDI redaktør for å få musikk på telefonen din. Du kan få en eksisterende MIDI fil (*.mid) fra en annen kilde. Men du kan også bruke en MIDI redaktør av dine valg for å lage din egen originale polyfone musikk.

Cakewalk Home Studio: spiller "knightrider.mid"
10.2 Sørg for at din Internett-server kjenner MIDI MIME type
Hvis du har en Apache Internett-server, for eksempel, må du endre en ".htaccess" fil, legge til følgende linjer:
Den ".htaccess" filen vil angi eller overstyre MIME typer indikert av serveren for filer av forskjellige typer (vanligvis angitt av filtyper, for eksempel .MID, .GIF, .JAR).
Hvis du allerede har lagt til andre MIME for andre filtyper, kan fullføre ".htaccess" Filen kan likne følgende tekst:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid
Tilsynelatende, opprette eller endre denne filen resulterer i en umiddelbar endring av Apache tjeneren. Jeg antar det Apache serveren kontrollerer den modifikasjon dato og klokkeslett for ".htaccess" fil ved hver nye innkommende transaksjonen, og serveren reloads at filen dersom modifikasjonen dato og tid er endret.
Hvis du har en annen type Internett-server, må du finne ut hvordan du angir MIME typer, og du må sørge for at *.jar filer og *.jad filer som er tilordnet den aktuelle MIME typer.
Du vet at hvis MIME typer ikke har blitt satt opp dersom mobiltelefonen nekter å laste ned *.jad fil og rapporterer følgende feil:
"406: Not Acceptable"
10.3 Sett MIDI fil (*.mid) på Internett webserver
Jeg kopierte en MIDI fil kalt "kr.mid" til rotkatalogen på Internett webserver. Du kan bruke programvare, for eksempel "Filezilla" å gjøre FTP overfører enkelt og bekvemt.
10.4 Last ned MIDI filen til mobiltelefonen din via telefonen tjenestens Internett-tjeneste
For Motorola T720 GSM/J2ME mobiltelefonen, nedlasting av en MIDI filen begynner med "WebAccess" menyen. Velge "Go To URL", etterfulgt av å skrive URL av MIDI fil, starter nedlastingen. For eksempel har jeg skrevet i følgende URL:
http://www.colinfahey.com/kr.mid
Hvis nedlastingen er vellykket, og hvis du bruker en Motorola T720 cellular phone, vil du bli gitt muligheten til å lagre filen på din mobiltelefon. Når du bestemmer deg for å lagre filen, får du muligheten til å lagre i sett med ringetoner eller i stedet sette filen for å være gjeldende ringetone (som også, som en bivirkning, butikker i sett av ringetoner) .
Følgende bilder oppsummere prosessen med å laste ned og spille MIDI filene for Motorola T720 GSM/J2ME mobiltelefon. Andre J2ME aktivert mobiltelefoner, med andre mobiltelefon tjenesteleverandører, kan ha et lignende laste ned prosedyren. Hvis mobiltelefonen din tjenesteleverandør er Verizon, er du ute av lykke; ingenting av dette vil fungere, og du bør gå og kjøpe en "Android" telefonen for å bidra til å ødelegge "den" lukkede "telefonen" markedet!
(1) Hovedskjerm: Trykk på den aktuelle knappen for å vise hovedmenyen.
(2) Main Menu: Gå til "WebAccess" element.
(3) WebAccess: Gå til "Go to URL" element.
(4) Enter URL: Skriv inn URL av en MIDI fil (*.mid) på en Internett-nettsted.
(5) Connecting: Vent til nedlastingen vil starte. (Hvis du mottok "406: Not Acceptable" feilmelding, og deretter Internet webserveren ikke har fastsatt en hensiktsmessig MIME for MIDI filer (*.mid)).)
(6) Downloading: Vent til nedlastingen er ferdig.
(7) Download Complete: Vent på denne skjermen for å forsvinne.
(8) MIDI Playback: The MIDI filen startes umiddelbart. Trykk på menyknappen for å gå til Tone Menu, og fortsett til trinn (9), eller trykk på "STORE" knappen og gå til trinn (12).
(9) Tone Menu: Du har muligheten til å spille ...
(10) Tone Menu: Du har muligheten til å få mer informasjon.
(11) Details: Her ser vi det i byte.
(12) Store Options: Fra trinn (8) vi kan trykke på "STORE" knappen for å komme til denne menyen. Du har muligheten til å lagre til telefonen samling av låter. Hit "SELECT" til butikken.
(13) Stored: The MIDI låt har blitt lagret.
(14) Total Bytes Transferred: Dette er bare et varsel om antall bytes lastet ned, slik at du ikke er overrasket over kommende mobiltelefon tjenesten regningen!
10.5 Spill MIDI filen når som helst på mobilen
Du kan spille den lagrede MIDI filer når som helst på din mobiltelefon, og du kan bruke noen MIDI registrert som ringe lyd.
(1) Hovedskjerm: Trykk på den aktuelle knappen for å gå til hovedmenyen.
(2) Main Menu: Gå til "Media Center".
(3) Media Center: Gå til "My Tones".
(4) My Tones: Uthevet tone starter å spille umiddelbart. Du kan endre navn med "EDIT" alternativet. Trykke på Menu-knappen gir deg andre alternativer.
10.6 Still ringen stil å bruke en MIDI fil
Gå gjennom følgende menybilder:
(1) Hovedskjerm
(2) Main Menu
(3) Ring Styles: Trykk "SELECT"
(4) [Silent, Soft, Loud] Detail: Trykk "CHANGE"
(5) Calls: [current ring style/tune]: Trykk "CHANGE"
Bla om listen over ringen stiler (lydløs, vibrasjon stiler, fast ringen melodier, osv.), og i bunnen vil du se den nedlastede musikken. Bare trykk på "SELECT" knappen for å gjøre den nye ringen tune aktiv!
11. Opprette, tilbud, og laste ned bilder
11.1 Opprett en 120 * 160 GIF bildefilen (*.gif)
Følgende trinn kan brukes til å opprette en 120 * 160 GIF bildefilen (*.gif) egnet for visning på Motorola T720 GSM/J2ME mobiltelefon, enten som en bakgrunn for hovedskjermen, eller som et bilde i bilde-galleriet.
(1) Åpne en bildefil med Microsoft Paint eller Adobe Photoshop eller andre passende bilderedigeringsprogram programvare;
(2) Scale eller beskjære bildet til 120 piksler bredt og 160 piksler høy (dvs. en 120 * 160 pixel bildet);
(3) Lagre filen i en GIF bilde format (*.gif); (innen Adobe Photoshop måten å gjøre dette på er: File -> Export -> Gif89a)
Bildet må være i GIF Image File Format slik at Motorola T720 mobiltelefonen er i stand til å dekode og vise bildet. Hvis bildet dimensjoner er akkurat 120 * 160, og bildet vil passe perfekt på skjermen til Motorola T720 mobiltelefon, ellers bildet vil ha tomt grenser på to sider.
Merk: Jeg har lastet ned og vist en *.gif bildefil som ble 118 * 120 piksler, som er mindre enn skjermstørrelsen av 120 * 160. Jeg tror den resterende del av skjermen er fylt med en farge velges fra kant av bildet. Kanskje pixel fargen på pikselen i det øvre venstre på bildet er brukt som farge for tomt grenser rundt to sider av bildet.
Den Motorola T720 mobiltelefon kan vise 4096 farger, som jeg tror er kodet som 12-bit RGB (4-4-4). Derfor tror jeg bilder med små fargeoverganger som spenner over store deler bør unngås, fordi grensene på disse fargeovergangar blir svært tydelige og forstyrrende på en person du ser på bildet. Dessuten må GIF format i seg selv er begrenset til kun 256 forskjellige farger, slik at en person må være klar over denne begrensningen også. I alle fall er det alltid best å bare se på et bilde på mobiltelefonen for å vite om ikke bildet er egnet for mobiltelefon.

Space Invaders (Space Invaders): en 120 * 160 GIF bilde
11.2 Sett GIF bildefilen (*.gif) på Internett webserver
Jeg kopierte en GIF fil kalt "si.mid" til rotkatalogen på Internett webserver. Du kan bruke programvare, for eksempel "Filezilla" å gjøre FTP overfører enkelt og bekvemt.
11.3 Last ned GIF filen til mobiltelefonen din via telefonen tjenestens Internett-tjeneste
For Motorola T720 GSM/J2ME mobiltelefonen, nedlasting av en GIF bildefilen begynner med "WebAccess" menyen. Velge "Go To URL", etterfulgt av å skrive URL av GIF fil, starter nedlastingen. For eksempel har jeg skrevet i følgende URL:
http://www.colinfahey.com/si.gif
Hvis nedlastingen er vellykket, og hvis du bruker en Motorola T720 cellular phone, vil du bli gitt muligheten til å lagre filen på din mobiltelefon. Når du bestemmer deg for å lagre filen, får du muligheten til å lagre i sett med bilder eller stedet innstillingen filen for å være gjeldende bakgrunn "(dvs.," bakgrunn).
Følgende bilder oppsummere prosessen med å laste ned GIF bildefiler for Motorola T720 GSM/J2ME mobiltelefon. Andre J2ME aktivert mobiltelefoner, med andre mobiltelefon tjenesteleverandører, kan ha et lignende laste ned prosedyren. Hvis mobiltelefonen din tjenesteleverandør er Verizon, er du ute av lykke; ingenting av dette vil fungere, og du bør gå og kjøpe en "Android" telefonen for å bidra til å ødelegge "den" lukkede "telefonen" markedet!
(1) WebAccess: Gå til "Go to URL" element.
(2) Enter URL: Skriv inn URL av en GIF bildefilen (*.gif) på en Internett-nettsted.
(3) Connecting: Vent til nedlastingen vil starte. (Hvis du mottok "406: Not Acceptable" feilmelding, og deretter Internet webserveren ikke har fastsatt en hensiktsmessig MIME for GIF bildefiler (*.gif)).)
(4) Forhåndsvisning av nedlastet bilde, med mulighet for å "STORE" (butikk) til bildet i minnet på mobilen;
(5) Store Options: The GIF bildet kan ganske enkelt bli lagret, eller det kan brukes til å erstatte dagens "bakgrunnsbilde" (bakgrunn av hovedskjermbildet), eller den kan brukes "som" skjermsparer (dvs. et bilde som vil vises når mobiltelefonen Knappene har ikke blitt trykket for en viss mengde tid).
(6) Changed: Wallpaper [image name]: Dette er bare et varsel om at det "bakgr.bilde" bildet har blitt endret.
(7) Utseendet på hovedskjermbildet av mobiltelefon etter "tapeter" (dvs. bakgrunnen) bildet er endret. The "Space Invaders" har mestret min mobiltelefon!
11.4 Animert GIF bildet for bruk "som" skjermsparer på mobilen
Hvis du vil laste ned en animert GIF bildet for å brukes som "en" skjermsparer bilde på din mobiltelefon, er det bare å følge instruksjonene i forrige del av dette dokumentet for å lage og laste ned et bilde.
Hvis GIF bildet er en animert GIF, deretter "skjermspareren" viser denne animasjonen.
Bare sett bildet som "skjermsparer" bildet etter at bildet er lastet ned.
Følgende animerte GIF bildet kan brukes som en animert "skjermsparer" bilde på Motorola T720 GSM/J2ME mobiltelefon.

En animert GIF bilde som kan brukes som en animert "skjermsparer" bilde på Motorola T720 GSM/J2ME mobiltelefon.
Dessverre, den Motorola T720 mobiltelefon ikke animere "bakgrunnsbilde." Det ville vært veldig imponerende til å åpne mobiltelefonen og se en animert bakgrunn på hovedskjermbildet! :^(
Du vil bare se en animert GIF vises på Motorola T720 mobiltelefonen når telefonen trer "skjermsparer" modus, som kan kreve 30 sekunder eller mer for å starte. (Du kan angi denne forsinkelsen i en av menyene.) Skjermen belysning er sannsynlig å slå av før skjermbeskytteren vises. "Skjermspareren" vises ikke under en telefonsamtale. Derfor vurderer alle disse fakta, "skjermsparer" funksjon i Motorola T720 mobiltelefonen er heller halt.
12. Motorola T720 GSM/J2ME mobiltelefon for den AT&T mobiltelefon nettverk
12.1 Innledning
Denne delen av dette dokumentet er ikke til å bli nyttig for noen, fordi denne delen beskriver innstillingene for en spesifikk mobiltelefon (Motorola T720 GSM/J2ME) for en spesifikk mobiltelefon tjenesteleverandøren (AT&T) for en meget bestemt region (Southern California). Men jeg inkludere denne informasjonen for historisk interesse.
12.2 Web Sessions innstillinger
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)
Også, det er en DNS innstillingen for Java programmer:
Main Menu
Settings
Java Tools
DNS IP: 10.250.1.10
12.3 Kommentar
(1) Doing "tilbakestiller" du vil angi WAP Port tall til "9201," så disse må endres til "9203."
(2) Den sekundære WAP IP and Port er satt til samme IP og porten som den primære WAP innstillinger. Jeg var i stand til å bruke "mMode" (dvs, går du til enhver URL) med en helt blank videregående WAP innstillingen, men jeg hadde "Line Type 1: Modem" på det tidspunktet. Jeg vet ikke om innstillingen til "ISDN" gjør det mer sannsynlig at den videregående WAP innstillinger vil bli brukt.
(3) "tilbakestiller" gjør "Timeout:" feltet "15 minutes". Endre verdien til "2 minutes".
(4) Den "Name:", "Homepage:", og "GPRS APN:" felt all innebære å skrive bokstaver og symboler manuelt.
(5) De feltene som er vist tom i eksempelet ovenfor, er egentlig ment for å ikke ha noen tekst som er skrevet inn. De blanke feltene er ikke tilfeldig.
13. Lenker til andre mobiltelefon ressurser
13.1 Motorola J2ME SDK 3.0
Motorola har et Software Development Kit SDK som inkluderer en emulator i stand til ĺ simulere mange Motorola telefoner, inkludert T720. Du kan få denne SDK gratis,
og du trenger ikke CodeWarrior å bruke telefonen emulator følger med SDK, til tross for all omtale av CodeWarrior på Motorola nettsted. Også, i generelle Jeg tror du kan bli med uten CodeWarrior eller Motorola SDK selv om du driver faglig utvikling for T720.
Du må registrere deg med Motorola å selv lære om deres J2ME SDK, enda mindre å laste den ned.
http://kb.motorola.metrowerks.com/motorola/developmentTools.do
Det er noen funksjoner for å spille "Compact MIDI" og selv "*.wav" filer. Installere og lese dokumentasjonen for å lære mer detaljer.
Her er en kommentar jeg har mottatt i en e-post:
Den Motorola J2ME SDK gir deg (blant annet) "skins" for emulator slik at emulatoren vil se ut telefonen du programmeringsspråk for. Det handler om mer enn kosmetikk. Skjermstørrelse kan variere for eksempel, så hvis du er designer noe der skjermstørrelsen er viktig, er det definitivt hjelper å ha en emulator som samsvarer med målet. Den SDK også inneholder noen Motorola opprettet åpne Java klasser kalt Lightweight Windowing Toolkit som gir deg noe av det du trenger for å lage et program med en ekte UI - ulike UI ting.
Du kan bli med uten den, men hvis du gjorde et alvorlig arbeid du det nok vil ha det. Hvis jeg var å skape ting for Sony Ericsson eller Nokia eller andre telefoner, jeg ønsker at deres SDKs også.
Her er et sitat fra Motorola's nettsted om deres SDK:
Den Motorola Software Development Kit (SDK) for J2ME™ plattform er et verktøy som brukes for å utvikle og teste programmene er skrevet i Java programmeringsspråk. Den SDK inneholder programmer som gjør det enkelt å starte MIDlets (J2ME™ Programs) bruker Motorola J2ME™ enheten emulator. Sammen disse verktøyene gir deg mulighet til å utvikle og feilsøke dine J2ME™ programmer i emulering før laste dem ned til et geografisk enhet. Den Motorola SDK kan integreres i Metrowerks' CodeWarrior™ Wireless Studio, Professional Edition, Version 7.
Denne versjonen av SDK omfatter flere forbedringer for ytelse og stabilitet. Alle funksjoner i forrige versjon er støttet, med disse nye funksjonene:
Nye telefoner støttes av denne versjonen: A830.
Ny funksjonalitet støttes av denne versjonen:
A830 - Gaming API, Serial Port Tilkobling, HTTPS protokollen støtte.
All devices - Bedre grafikkytelse
Den SDK støtter følgende enheter:
*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
En venn av meg hadde tydeligvis ikke noe problem å laste ned og bruke dette verktøysettet - som tilsynelatende har alt du trenger (JDK, MIDP, CLDC) og ekstra verktøy for å gjøre det JAD, etc. Jeg har ikke prøvd det selv. Her er andre kommentarer på denne verktøykasse:
Sitat fra en Slashdot innlegg:
Du kunne ha lagret selv litt stress å installere alle de forskjellige toolkits. Bare laste ned [sun.com] Sun ONE Studio 4 update 1, Mobile Edition, sin helt gratis (som i øl), og er en stor integrert utviklingsmiljø (om 20 MB laste ned). Alle verktøyene, Emulatorer og demoer fra artikkelen er buntet. Siden forrige uke Jeg kjører det under RH Linux 7.2, med 512mb av ram (YOU NEED LOTS OF RAM!!!).
Tok bare ett minutt [sun.com] fra å hoppe over den regestration skjermen for å stepping gjennom ormen spillet i debugger (Jeg alltid vil elske spillet orm / slange / nibbles i alle sine inkarnasjoner, og den demo-versjon som tilbys er vakkert programmert - enkle, men objektorientert og multi-threaded i en liten mengde code).
Du trenger å registrere deg for å laste ned. Støttede plattformer: Linux, Windows, Solaris.
Sitat fra en Slashdot innlegg:
Fra sun Nedlastninger faq [sun.com]:
"På grunn av måten vår laste ned tjenesten håndterer økt ledelsen, du kan ikke fortsette delvise nedlastinger ved å klikke på linken i nytt vindu i nettleseren. Rather, åpne Download Manager-programmet du bruker, og gjenoppta nedlasting fra innen Download Manager selv.
Vi fortsetter å arbeide med våre ingeniører for å aktivere støtte for flere Nedlastninger ledere på flere plattformer. For nå, kan du slå av noen annen download managers og verktøy, hvis du har problemer med nedlastingen."
Laste ned store filer fra sun under linux har vært veldig vanskelig for omtrent et år nå. Den eneste Download Manager inntil nylig hadde jeg vært i stand til å komme til arbeidet ble DAP under windows (advarsel: Spyware). Utgangspunktet mest download managers (prozgui, getright, opera) ikke vil være i stand til å håndtere Sun's [insincerity]. Ludicrously heller enn å reparere sitt nettsted til å bare fungere, Sun har skrevet sin egen Download Manager [sun.com]. Dets skrevet i java, og bare ørsmå 140KB! Den overraskende ting er at dette er en virkelig utmerket Download Manager, bitte små fotavtrykk, ingen nettleser kapre, ikke noe adware / spyware, fungerer under noen OS, automatisk filen bekreftelse, automatisk unzips, og solid som en stein
13.3 Tilfeldig forum innlegg:
Den Jad og Jar filer er det bare filene som kreves for å kjøre et program på telefonen, og, avhengig av telefonen og den metoden du skal overføre programmet til telefonen, kan du bare trenger jar.
Hvis programmer er å bli sendt Over the Air (OTA), dvs. via et web URL, må du lage en kobling på en side kan leses av telefonen (f.eks wml, cHtml, cHtml) til JAD fil. For OTA nedlastinger må du også sette opp web server for å håndtere jar og jad filtyper. I apache må du legge til følgende linjer til httpd.conf fil:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
Også, må du passe på at URL for jar fil er URL for JAR filen på serveren, ikke den lokale URL
Hvis du derimot ønsker å overføre via IR, Bluetooth eller en kabel du trenger bare å overføre filer til telefonen, installere og kjøre. Den JAD filen er vanligvis brukes spesifikt til å gi telefonen informasjonen som er nødvendig for OTA nedlastinger og derfor er Nokia 7650 og noen andre modeller trenger du bare å overføre jar fil for ikke-OTA overføringer.
13.4 http://wireless.java.sun.com/midp/questions/sar/
SAR (eller WTP-SAR) står for Segmentation and Reassembly. Det er en valgfri funksjon i Wireless Transaction Protocol (WTP) innen WAP. SAR definerer en metode for WAP gateway for å bryte en store melding (a JAR filen du laster ned, for eksempel) i små biter (for segmentering), og for at telefonen skal brikke det sammen (det reassembly).
Ikke alle telefoner bruker SAR, men de fleste vil få tilgang til web-servere gjennom en WAP gateway. Nokia bruker SAR, mens Motorola bruker funksjonene i HTTP 1.1 å hente små biter av en fil, en om gangen og deretter reassemble det.
Et problem som oppstår med WAP gatewayer bekymringer MIME typer returnert av webserveren. Hvis en bruker ber om en JAD eller JAR fil, og serveren returnerer feil MIME type gatewayen, og så vil telefonen håndtere overføringen feil. For å sikre riktig nedlasting av MIDlets, kan du bruke følgende MIME typer:
text/vnd.sun.j2me.app-descriptor jad
application/java-archive jar
13.5 Tilfeldig forum posting
du må ha riktige MIME innstillingene på serveren som lagrer .JAD/.JAR filer. Etter at du vil kunne laste ned programmer til enheten. Husk at: - denne prosessen er heller enheten bestemt (ikke nødvendigvis bruker WA protokollen) - Du bør nok ha absolutte stier til .JAD, og .JAR sett (dvs. http://www.fooserver.com/repository/JoeDoeApp.JAD)
13.6 Tilfeldig forum posting
Minst i Siemens enheter, har du en bestemt konfigurasjon for Java, som er forskjellige fra det som WAP og GPRS. Du kan navigere gjennom WAP, men når en midlet er funnet, et annet oppsett blir automatisk endret for å gjøre nedlastingen. I M50 hendig, må du angi Java profiler i henhold til parametere i din leverandør i c55 hendig, det samme settet kalles "HTTP profile" og den brukes også for andre typer nedlasting (f.eks http tilkoblinger i MIDlet) .
13.7 Diverse interessante linker på avansert MIDlet signering stuff
13.8 Veldig kul MIDlet-programmering introduksjon
13.9 http://wireless.java.sun.com/midp/articles/deploy/
Hvis du vil distribuere den trådløse programmer:
Last opp din søknad filer (JAD og JAR) til en ekstern webserver. Hvis prosjektet er oppkalt spill, for eksempel laste opp filer: games.jad og games.jar fra bin katalog av prosjektet hjemme (for eksempel <toolkit>/apps/games/bin). Merk at de to filene må ende opp i samme katalog på serveren.
Konfigurere webserveren slik at den gjenkjenner JAD og JAR filer:
For JAD filtype, angi filtypen til .jad og MIME type til text/vnd.sun.j2me.app-descriptor.
For JAR filtype, angi filtypen til .jar og MIME til application/java-archive.
Hvordan du konfigurerer Internett-server er avhengig av hvilken en du bruker. For eksempel, hvis du bruker Tomcat, sørg for at web.xml filen inneholder følgende linjer:
<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>
Endre dine JAD filens MIDlet-Jar-URL eiendom for å spesifisere URL av JAR fil. For eksempel i kopien av games.jad du lastet opp til serveren, endre ...
MIDlet-Jar-URL: games.jar
... til ...
MIDlet-Jar-URL: http://YourWebServerAddress:port/pathTo/games.jar
13.10 Diverse linker
13.11 Nokia J2ME programutvikling lenker
Fra en Nokia nettstedet:
Nokia's J2ME gjennomføring består av industristandarden MIDP 1.0 og CLDC 1.0. Plattformen er utvidet av Nokia User Interface (UI) API. Det gir programmet utviklere tilgang til visse grunnleggende telefonens funksjonalitet som ikke er spesifisert i CLDC 1.0 eller MIDP 1.0. Den Nokia UI API gir tilgang til enkel lydfunksjoner, vibrasjon, viser belysning, samt noen grafikk-beslektede forbedringene.
Fra en e-post jeg har mottatt:
Så Nokia synes å være virkelig åpne opp det telefoner til noen form for tilpasset ombygging du kan tenke på. Du kan legge vibrasjonsstyrken å java spill, legge til tegnefilm boblene til bilder du tar, og er faktisk laste opp bildene på ditt nettsted! Du kan skrive din egen server, og folk kan laste opp ting til deg!
Her er noen kule 7650 lenker:
13.12 Mobiltelefon programmet lenker
14. J2ME versus BREW
14.1 Innledning
Det er to dominerende programvare-plattformer for mobile enheter: J2ME og BREW. Mange mobiltelefon operatører har besluttet å tilby mobiltelefoner med J2ME støtte: AT&T, T-Mobile, og Sprint. En stor transportør har besluttet å bare tilby telefoner med BREW støtte: Verizon.
En mobil enhet som støtter J2ME kan utføre J2ME programmer, men ikke kan kjøre BREW programmer. En mobil enhet som støtter BREW kan utføre BREW programmer, men ikke kan kjøre J2ME programmer.
Produsentene av mobile enheter ofte tilby flere versjoner basert på ulike trådløse kringkasting standarder. For eksempel, Motorola tilbyr to versjoner av T720: GSM og CDMA. Coincidentally, den GSM versjon av T720 støtter J2ME programmer, og CDMA versjon av T720 støtter BREW programmer. Selv om trådløse CBS-standarder er ikke teknisk relatert til telefonen operativsystemer, forholdene i markedet har medført utilsiktede denne sammenheng.
14.2 Mobiltelefon tjenesteleverandører bestemme hva en kunde kan gjøre med en mobil enhet
Her er en oppsummering av hva mobiltelefon tjenesteleverandører kan kundene gjør:
[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 tilbyr den beste kunde og utviklere tilgang til mobiltelefon enheter og multimedia filer på Internett. Øyensynlig, AT&T har besluttet å sette fokus på tilrettelegging av transport bytes gjennom deres nettverk, heller enn å forsøke å være i bransjen med å selge multimedia innhold.
Verizon er den mest undertrykkende mobiltelefon tjenesteleverandøren av dem alle. Deres "Get It Now." forretningsmodell, som innebærer en kunstig å begrense kundens bruk av egen mobiltelefon enheter for å beskytte virksomheten med å selge multimedia innhold, har inspirert mange frustrerte kunder til å avslutte sine kontrakter med Verizon eller finne måter å omgå "Get It Now." portalen. Akkurat som kinoene og Idrettsanlegg kan belaste ekstremt høye priser på mat, fordi kunder ikke kan enkelt få tilgang til alternative kilder til mat i de situasjonene (dvs. det er en mangel på tilgang til konkurranse) Verizon kan belaste ekstremt høye priser for tilgang til multimedia-filer og programvare, fordi kunder ikke kan enkelt få tilgang til alternative kilder for multimedia filer og programmer.
14.3 Binary Runtime Environment for Wireless (BREW)
BREW er "Binary Runtime Environment for Wireless, en proprietær programvare plattform utviklet av QUALCOMM. Hvis du vil vite mer om BREW, kan du gå til følgende nettsted:
http://www.qualcomm.com/brew
Den SDK kan lastes ned fra Qualcomm. I 2002 ble SDK kunne brukes til å bygge programvare ved hjelp Microsoft Visual C++ 6.0, og programmene kan bli overført til en mobiltelefon uten "en" test "signatur."
Alle telefoner med Verizon kontrakter bruke BREW. All programvare, bilder og musikk må overføres gjennom Verizon's "Get It Now." portalen, og vanligvis innebærer å betale avgifter utover nettverksbåndbredden kostnader.
14.4 Java 2 Platform, Micro Edition (J2ME)
J2ME er "Java 2 Platform, Micro Edition" "et" svært "optimalisert" Java runtime-miljø. Hvis du vil vite mer om J2ME, kan du gå til følgende nettsted:
http://java.sun.com/j2me
Du har kanskje allerede gjort noen Java programmering. J2ME inkluderer mange av de Java klasser brukt til stasjonære PC-programmer. Selvfølgelig, noen Java klasser som er ren Java kode, og ikke være avhengig av maskinvare eller operativsystem funksjoner, kan kompileres til å utføre innen rammen av noen Java virtuell maskin.
En person kan opprette tråder, sockets, grafikk canvases, osv., helt enkelt. En person bare må laste ned en *.JAR fil (og muligens en *.JAD fil) til å installere et program på en mobiltelefon.
Laste ned Java SDK
er gratis. Dokumentasjonen for Java er grundig. Millioner av mennesker har utviklet for Java. Det er mange Internett-fora diskuterer ulike aspekter av Java programmering.
I bare minutter etter søk på internett fant jeg hundrevis av interessante programmer, og bilder og lydeffekter, alt for Motorola T720 GSM/J2ME mobiltelefon - og alle filene koster ingenting å laste ned.
Jeg er svært glade for å være i stand til å ta full nytte av multimedia sider av min eiendom (dvs. min mobil) uten å måtte betale min mobiltelefon tjenesteleverandøren for noe mer enn bruk av deres mobiltelefon-nettverk.
14.5 Min BREW og Verizon fryktelig historie
Jeg har laget programvare for både J2ME og BREW plattformer, og i min mening, jeg tror begge teknologiene har sine fordeler og ulemper, og begge er helt i stand til å bli brukt til å lage avanserte programmer veldig enkelt.
Men en bedrift som er interessert i å lage og selge programvare for mobiltelefoner bør starte med å vurdere et enkelt spørsmål: "Hvis jeg utvikle programvare, vil jeg få lov til å selge det?"
Hvis en virksomhet som utvikler programvare for J2ME plattformen, da har de fleste mobiltelefon tjenesteleverandører tillater kundene å gå til hvilken som helst annet område på Internett og laste ned noen J2ME programvare, uten å innføre noen kostnader utover kostnadene for overføring bytes via mobiltelefon nettverk. Dermed vil en programvare utviklingen bedrift som sikkert vil kunne ha tilgang til potensielle kunder, og kan lage sine egne ordninger for å samle inn penger fra kundene for all programvare kjøp.
Hvis en virksomhet som utvikler programvare for BREW plattform, deretter Verizon avgjør om eller ikke programvaren vil bli tilgjengelig for salg til kunder. Videre Verizon vil pakke ut en stor andel av salgsprisen av programvaren for det privilegium å kunne selge programvare gjennom sine eksklusive portalen.
Her er min BREW og Verizon forferdelse historien:
Jeg hadde en unik idé til et program for mobiltelefoner i en tid da mobiltelefoner var begynt å bli i stand til å utføre BREW og J2ME programmer. Jeg var veldig spent fordi jeg trodde at jeg kunne lage og publisere et unikt program for disse plattformene lenge før noen konkurrenter vil være klar til å opprette et lignende produkt. Jeg var overbevist om at jeg kanskje endelig gjøre noe i mitt liv som ville gjøre meg rik. Så jeg sluttet jobben min og startet arbeidet med en BREW versjon av min programvare idé. Etter seks måneder med hardt arbeid og ingen inntekter, jeg ble ferdig med min BREW programmet! Jeg var klar til å sende den til Qualcomm til testing.
Det er da jeg gjorde en forferdelig oppdagelse: Selv om min programmet bestått kvalitetssikring testing, Verizon ville godkjenne av salget av min programvare - og Verizon kunne ikke godkjenne mine programvare for enhver årsak (utover de åpenbare grunner for å være støtende eller i konkurranse med noen andre aspekter av Verizon's virksomhet). Jeg hadde rett og slett ikke forestille deg denne muligheten. Alt jeg leste om BREW utvikling medført at utfordringen var å passere kvalitetssikring testing. Ingenting leser jeg nevnt noen må ha programvaren er godkjent av mobil-tjenesteleverandører. Jeg ville ikke ha vært overrasket over å høre at mobiltelefonen tjenesteleverandører kan velge å ikke selge støtende eller skadelige programmer, men slike hensyn syntes så uviktig for min bestemt prosjekt at jeg ikke tenke på det mer generelle begrepet som mobiltelefon tjenesteleverandører kan velge til ikke å selge vanlige programmer!
En av mine venner, som allerede hadde solgt flere videospill programmer gjennom Verizon, spurte en Verizon representant hvis Verizon ville godkjenne programvare for salg på nettet ... Den Verizon representant sa: "nei," fordi det var noen andre programmer i den brede sjangeren allerede. Min programvaren var et vokabular Veileder (med spesielle hensyn til SAT og GRE standardiserte tester), men Verizon representant sa at ordet Kamp sjanger allerede var "overfylt," til tross for at det var færre enn 10 ord-relaterte programmer samlet i "Get Det nå." Portalen, og de andre programmene var svært forskjellige (f.eks crossword puslespill, "Scrabble", "Boggle", osv.). Min programmet var en teknologisk bragd: Det lagres definisjonene av 5000 vokabular ord, sammen med synonymer og antonymer, og ordet betyr grupper (slik at spørsmålene ville bli utfordrende), i et program som var mindre enn 1 MB. Min programmet ville ha vært unik på markedet i mange måneder, og fare for et par år.
Jeg ble sint, deprimert, og økonomisk blakk. Seks måneder av arbeidet var bortkastet, fordi Verizon bare ønsket programvare som ble bestemt å selge tusen eksemplarer i deres salgs-portal, og Verizon representant ikke tror min programvare hatt et høyt salg potensial.
Her er den viktigste erfaringen jeg lært av denne bitter erfaring: Kontroller alle deler av en forretningsplan før du starter arbeidet. (Ideelt sett alle deler av virksomheten planen kunne bli testet flere ganger, med faktiske gjennomføring av de ulike kritiske prosedyrer, før og under arbeidet med å lage produktet.)
Jeg burde ha sjekket om det skulle være noen sannsynlig hinder for å selge min programvare før jeg begynte å utvikle programvaren. Jeg ville ha oppdaget at Verizon kunne velge å ikke tillate meg å selge min programvare.
Jeg lærte andre sannhet: Unngå situasjoner der andre mennesker har muligheten til å avgjøre om du har tilgang til kundene!