J2ME mjukvaruutveckling för mobiltelefoner
(2002)
Colin Fahey

Motorola T720 mobiltelefon, visat öppnas
1. Varning!
Detta dokument är föråldrade! Informationen i detta dokument kan ha varit giltigt och användbart i år 2002, men många saker har förändrats under senare år! Detta dokument ska nu bara ses som ett intressant historiskt rekord i år 2002. Inte lita på någon information eller råd i detta dokument. All teknisk information i detta dokument är mycket föråldrade.
Nedladdning själv skapat programvara, själv skapade bilder, och själv skapat telefon varning melodier (dvs ”ringsignaler),” var relativt ovanliga och svåra i år 2002. Tyvärr, sex år senare, några mobiltelefon tjänsteleverantörer (inklusive Apple, som ger en exklusiv programvara och ”ringsignal” portal för iPhone) fortfarande införa restriktioner för nedladdning av programvara, bilder och musik, eftersom mobiltelefon tjänsteleverantörer haft mycket stora ekonomiska vinster genom att kontrollera dessa typer av nerladdningar.
Lyckligtvis har mobiltelefoner som de med de ”Android” programvara plattform, kommer för alltid slut på möjligheten för företag att skapa och utnyttja stängda marknader för sådan användning av mobiltelefoner. Även om konsumenterna gärna köpt mobiltelefon tjänst planer som innehöll mycket höga kostnader för nedladdning av programvara, bilder och musik, det är på grund av det begränsade antalet mobiltelefon servicealternativ finns tillgängliga.
Den ekonomiska utvecklingen har gjort det möjligt för vissa företag att växa för att dominera marknaden bör inte tolkas som ett implicit starkt godkännande av konsumenterna. Som företag börjar dominera, och sedan göra det svårt eller omöjligt för konkurrenter att komma in på marknaden, den dominerande företag kan erbjuda produkter som kombinerar hög positivt värde (t.ex. förmåga att kommunicera var som helst) med hög negativt värde (t.ex. höga priser för önskvärt programvara, bilder och musik, alla som annars skulle vara fritt tillgängliga, alltså tjänsten läggs negativt värde). Ingen konsument är tvungen att köpa en mobiltelefon, men det är ingen tvekan om att den dominerande mobiltelefon tjänsteleverantörer har successivt skapat förhållanden som inte kan anses vara ”en” fri marknad. Därför har mobiltelefon tjänst marknaden har varit ekonomiskt ”ineffektiv” och har en orimlig belastning för konsumenterna.
Förhoppningsvis kommer kraven att mobiltelefon tjänst radiofrekvenser ha tillgång till konkurrerande tjänster kommer att återställa normal marknadsvärden för att överföra data, så att mobiltelefon tjänsteleverantörer är återigen reduceras till en bärare av data (dvs endast ge bandbredd) snarare än information eller underhållning leverantörer !
Verksamhet för att transportera data måste skiljas från näringslivet för att sälja uppgifter, annars kommer det att finnas ett incitament för de uppgifter som transport företag att hindra konkurrenter från att sälja data via samma data transport kanal.
Videon spelkonsol marknaden lider av samma problem. Tillverkarna av videospelskonsol hårdvara är på med att skapa produkter som kan visa TV-spel, men dessa bolag har också ensamrätt till överföring av programvara till dessa generationens konsoler. Det finns därför ett incitament för videospelskonsol tillverkare att hindra konkurrenter från att sälja programvara för videospel. Om en videospelskonsol maskinvarutillverkaren inriktade på design och tillverkning hårdvara som kunde säljas med vinst (i stället för på en betydande förlust, som med X-Box och PlayStation och Nintendo generationens konsoler), sedan TV-spelet marknaden skulle utvecklas, och kvaliteten på de bästa TV-spel skulle förbättra, och kostnaden för videospel skulle kollapsa.
2. Index
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
3. J2ME utvecklingsverktyg
Detta avsnitt beskriver hur du ladda ner utvecklingsverktyg som kan användas för att sammanställa J2ME källkod i klass filer som lämpar sig för mobila enheter. Observera att Sun ”J2ME Wireless Toolkit,” diskuteras i ett senare avsnitt i denna artikel, kräver att ladda ner Java SDK beskrivs i detta avsnitt.
3.1 JDK 1.4 (eller senare)
Det betyder att du behöver den konventionella Java 2 SDK från Sun. Jag har hämtat och använt version 1.4 via följande länk:
Här är vad hämta sidan ser ut:
Starta installationsprogrammet. Installera till standardplatsen ( c:\j2sdk1.4.0_03 ) om du inte kan lösa stig problem som kan uppstå.
3.2 Connected Limited Device Configuration (CLDC)
Jag tänker inte låtsas veta vad det är, men jag bara hämtat det från Sun webbplats.
Här är vad CLDC viktigaste hämta webbsidan ser ut så här:
Endast 1.0.3 var tillgänglig vid den tidpunkt jag besökte.
För att ladda ner här, jag behövde registrera sig Sun webbplats. Jag skapade följande profil:
Username: anon***anon
Password: nospamplease
Favorite color: blue
Full name: Prof. Anon Nospamplease
Jag har hämtat följande fil:
j2me_cldc-1_0_3-fcs-src-b17-winunix-14_sep_2001.zip
Jag uppackade till följande katalog:
Jag döptes om till ”cldc-1_0_3-fcs” katalog för att helt enkelt:
cldc (dvs, den fullständiga sökvägen är c:\j2me\cldc)
3.3 Mobile Information Device Profile (MIDP)
Jag tänker inte låtsas veta vad det är heller, men jag bara hämtat det från Sun webbplats.
Här är vad MIDP viktigaste hämta webbsidan ser ut så här:
Jag har hämtat följande fil:
j2me_midp-1_0_3-fcs-src-b26-win-19_sep_2001.zip
Jag uppackade till följande katalog:
Jag döptes om till ”midp-1_0_3-fcs” katalog för att helt enkelt:
midp (dvs, den fullständiga sökvägen är c:\j2me\midp)
3.4 Konfigurera verktyg
3.4.1 Fastställa vägar
Lägg till följande rader till din 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%
Då gäller dessa variabler som skall laddas genom att köra batch-fil:
Du kan också ställa in dessa variabler med hjälp av Windows miljö variabel kontrollpanelen.
Lägg märke till att jag valde att ange uttryckliga katalog vägar till min nuvarande versionen av Java 2 SDK. Så om jag uppdaterar, så måste jag ändra AUTOEXEC.BAT fil för att ange den nya kataloger.
3.4.2 Kontrollera Jave 2 SDK binärer
När inställningarna ovan skall gälla, bör du kunna köra Java verktyg program från kommandotolken utan att ange den fullständiga sökvägen till verktyget program.
Följande kommando kommer att starta mobiltelefon enheten emulator:
Följande bild visar mobiltelefon enheten emulator:
4. Enkel J2ME program
4.1 Skriv Java kod
Med hjälp av valfri, en person kan skriva kod, exempelvis för detta HelloMIDlet.java källkod fil:
Här är koden i oformaterad text:
// 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 Sammanställa *.java kod för att *.class
Varning: Följande kommando måste vara på en enda rad, men har utökats till flera rader text bara för tydlighetens skull.
(Nuvarande katalog: C:\HelloMIDlet)
javac
-target 1.1
-d .\
-bootclasspath c:\j2me\midp\classes
HelloMIDlet.java
Obs! ”-target 1.1” är nödvändig för att undvika ett misstag i framtiden ”preverify” skede. Uppenbarligen har detta något att göra med ett problem med MIDP 1.0.3 stöd i JDK 1.4.
4.3 Preverify att skapa en ny *.class fil
(Nuvarande katalog: C:\HelloMIDlet)
preverify -classpath c:\j2me\midp\classes;. HelloMIDlet
Detta skapar en ny *.class fil i en ny underkatalog kallad ”output” (som standard).
4.4 Testa den nya *.class fil
(Nuvarande katalog: C:\HelloMIDlet)
midp -classpath c:\j2me\midp\classes;.\output HelloMIDlet
Detta startar telefonen emulator, som visar att den nya ”output” katalog innehåller några av de nödvändiga *.class filer.
Följande bild visar det förväntade resultatet.
4.5 Skapa en ny textfil, ”manifest.mf” och redigera filen
En ”manifest.mf” filen är viktigt för att få en verklig mobiltelefon för att tolka innehållet i en *.jar fil. Om en korrekt ”manifest.mf” fil är inte ingår i *.jar filen, sedan den mobiltelefon kan laddar ner den *.jar fil, men misslyckas att tolka den hämtade filen, eventuellt rapportera ett fel som ”Unsupported Content Type”.
Följande är ett exempel på en enkel ”manifest.mf” fil.
Här är ”manifest.mf” fil som oformaterad text:
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
Observera att CLDC och MIDP versioner anges i denna fil. Var mycket försiktig och konservativ när du redigerar de olika områdena i denna fil. Om du får ”File Corrupt” fel, försök sedan att eliminera alla områden som inte visas i detta exempel. Också lägga de områden i den ordning som de visas i exemplet. Också, förkorta varje område värdet så mycket du kan, och hålla tecken begränsad till enkla bokstäver, siffror, punkter och bindestreck. Vissa mobiltelefon, och mobiltelefoner, kan tolerera mer variation i området beställning och innehållet i fältet.
Varning:
När ”jar” program används för att skapa en *.jar fil, och ”manifest.mf” filen anges som det manifest filen, den ”jar” program läser det manifest filen och kan lägga till fler områden eftersom det skapar en fil som heter ”MANIFEST.MF” inom produktionen *.jar fil. Därför, om ”MANIFEST.MF” filen extraheras från en *.jar fil, och sedan jämfört med den ursprungliga ”manifest.mf” bilden under skapandet av *.jar, de två filerna kan vara annorlunda, med ”MANIFEST.MF” fil som innehåller flera områden än det ursprungliga ”manifest.mf” fil .
Inte extrahera en ”MANIFEST.MF” fil från en *.jar filen och försök att bilda en ny *.jar filen med att manifestfilen. Om du extraherar en ”MANIFEST.MF” fil från en *.jar fil och sedan vara säker på att undanröja alla områden utom de som visas i exemplet ”manifest.mf” fil som visas ovan.
Obs!
Ikoner för program uppenbarligen inte visas på Motorola T720 telefonen. Detta är anledningen till att jag inte beskriva min MIDlet med en ikon. Men följande visar hur man ställer en ikon för programmet inom manifestfilen:
MIDlet-1: My_Description, /icon.png, HelloMIDlet
När man utvecklar för mobiltelefoner att göra visa ikoner för program, ange vilken ikon filnamn och lägg på ikonen bildfil sig till *.jar fil genom att ange filnamnet bland filnamnen av filer som ska läggas till i *.jar fil.
4.6 Sätt ”manifest.mf” fil och *.class fil till en *.jar fil
Följande kommando skapar en *.jar fil. Den *.jar filen kommer att innehålla den angivna manifest.mf fil, och kommer att innehålla *.class filerna i den angivna katalogen.
Aktuell katalog: C:\HelloMIDlet
jar cfm hi.jar manifest.mf -C .\output HelloMIDlet.class
Komplexa hypotetiska exempel på hur man skapar en *.jar fil
Antag att en symbol bildfilen (t.ex. ”icon.png”) är att stå i en *.jar fil som ”/icon.png”. (Obs! Program ikoner visas inte på Motorola T720 mobiltelefon, men inte visas på andra mobiltelefon typer, och visas i MIDP emulator.)
Antag att det finns en katalog som heter ”images” med bildfiler (*.png format). Antag att den här katalogen, och alla de bilder som finns i katalogen, bör vara tillgängliga för Java program av den relativa katalog /images (så att en bild ”a.png” skulle vara tillgänglig med sökvägen ”/images/a.png”).
Antag att alla de *.class filer som produceras av preverify kommando finns i en katalog som heter ”verified”. Exempelvis de kontrollerade version av största klass, ”MyApp.class”, skulle vara i ”verified” mapp, tillsammans med de andra klasserna i programmet. Alla dessa klasser är att vara tillgänglig i rotkatalogen på *.jar fil.
Följande kommando kommer att skapa en *.jar fil som uppnår de mål som anges i föregående punkter. Varning: kommandot har utökats till flera rader text här bara för tydlighetens skull. När in i kommando vid en kommandotolk, kommandot får inte innehålla radbrytningar, annars kommandot tolk kommer att tolka in text som flera oberoende kommandon.
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 sista delen av kommandot är svårt att förstå. Det har följande innebörd: ”Ändra de nuvarande katalogen till .\verified och sedan lägga alla *.class filerna i den relativa katalog '.' (nämligen alla *.class filer i den aktuella arbetskatalogen) i till *.jar fil.” Eftersom katalogen hade ändrats innan ange sökvägen till klasserna för att sätta i *.jar fil, den lokala vägen kommer inte att visas i relativ sökväg när filerna placeras i till *.jar fil.
Till exempel, anta att de kontrollerade klasser finns i följande katalog:
C:\MyApp\verified
Antag att det finns klass-filer som följande:
C:\MyApp\verified\w.class
Sedan ange ”-C .\verified .” i kommando för att skapa *.jar fil, från en aktuell katalog av ”C:\MyApp”, kommer att resultera i ”w.class” sätts i rotkatalogen på *.jar fil. </ e>
Varning: När ”-C” alternativ är angivna, ändras de nuvarande katalog på den punkten för att behandla övergripande sekvens av kommando parametrar till jar kommando. Därför är jar kommando kan klaga på att det inte kan hitta andra filer som nämns i kommando parametrar utöver ”-C” alternativ. Om detta händer, helt enkelt flytta ”-C .\verified .” att vara den slutliga parametrarna för den övergripande kommando.
Följande visar detaljerad produktion 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 Skapa och redigera en ny *.jad fil
En *.jad filen är nödvändigt så att mobiltelefon kan beskriva ett datorprogram till en person innan personen bestämmer sig för att ladda ner programmet. Den *.jad fil ger också vissa indirekta från *.jar sig.

Ett exempel *.jad fil, som beskriver en *.jar fil
Här är exempel hi.jad fil i formatet oformaterad text:
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 finns program som kan generera *.jad fil, vilket gör det lättare att uppdatera ”MIDlet-Jar-Size:” området varje gång *.jar fil ändras (och dess storlek ändringar). Om du söker på Internet hittar du användbar J2ME program.
Om storleken är inte det exakta byte Summan av *.jar fil, då följande fel kan tyckas Efter en lyckad nedladdning till en mobiltelefon: ”Download Failed” (hämta misslyckades).
För Motorola T720 mobiltelefon, följande felmeddelande kan användas till områden som inidcate ogiltiga i *.jad fil, eller möjligen ogiltiga fält i den genererade MANIFEST.MF fil inom *.jar fil: ”Failed: File Corrupt” (misslyckades: Filen är skadad).
Observera: Om *.jar filen i samma katalog som motsvarande *.jad fil på en webbserver, sedan *.jad fil kan helt enkelt ange filnamnet på den *.jar fil, utan att ange en fullständig URL, som i följande exempel:
MIDlet-Jar-URL: hi.jar
När du hämtar filerna från en Apache Internet webbserver till en Motorola T720 mobiltelefon, är det godtagbart att inte omfatta hela URL. Men när du hämtar filerna från en Yahoo! Internet webbserver till en Motorola T720 mobiltelefon, försöket att hämta kommer att misslyckas om inte en fullständig URL sökvägen till *.jar filen anges inom *.jad fil, som i följande exempel:
MIDlet-Jar-URL: http://www.colinfahey.com/hi.jar
Jag vet inte orsaken till detta problem, och jag vet att detta problem inte påverkar andra mobiltelefoner (eller mobiltelefon tjänsteleverantörer). Med att ange den fullständiga URL för *.jar fil inom *.jad filen är naturligtvis besvärligt, eftersom att flytta filer till olika platser på en server skulle kräva att ändra information i alla *.jad filer. Men, med angivande av fullständigt URL skulle kunna göra *.jad mer tillförlitliga för vissa mobiltelefoner och vissa mobiltelefon tjänsteleverantörer.
4.8 Testa *.jar fil och *.jad fil genom att köra programmet
Följande utför klassen återfinns i *.jar fil, som beskrivs av *.jad fil.
(Nuvarande katalog: C:\HelloMIDlet)
midp -classpath c:\j2me\midp\classes;.\hi.jar -descriptor hi.jad
4.9 Referenser för J2ME, MIDP, CLDC utveckling
Mycket av det jag som presenteras här finns på många andra webbplatser på Internet. Men jag rättat några fel hittas på andra webbplatser på Internet, och läggas saknas information, och presenterade fullständig upplevelse av att någon försöker göra det här. Här är mycket informativa länkar som hjälpte mig att komma igång:
5. Komplexa J2ME program
5.1 Inledning
Det enkla program som presenteras i föregående avsnitt i detta dokument endast har en enda källkod fil, och programmet gör nästan ingenting och är därför inte ett bra exempel på mobiltelefon programmering.
Min vän Sam Robertson skrev en intressant J2ME program som lär en person att spela kortspel ”Blackjack” (även kallad ”21”). En spelare presenteras med ”en” återförsäljare ”kortet,” och spelarens par kort, och spelaren måste bestämma vad man ska göra: ”stanna,” slå, ”dubbel-och-ned,” eller ”split.”
Programmet har sex källkodsfiler. Programmet svarar på signaler från användaren, och inte enkel ritning och text uppdateringar.
5.2 Källkod
Klicka på följande länk för att få tag på källkoden, och *.jad fil, ”manifest.mf” fil, och en batch-fil, alla i en bekväm ZIP fil.
sbj.zip
Källkoden i en ZIP fil
6090 bytes
MD5: bf3922035b7a4eef24e107d03b7524c9
Utdrag till en godtycklig katalog, men om du extraherar till ”c:\” under Windows, här diskussionen kommer att vara ännu närmare din faktiska situationen.

Utvinna sbj.zip att ”c:\” skapar katalogen ”c:\sbj”
5.3 Manifestfilen
Arkiv: ”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 Batchfilen att bygga programmet
Följande batchfilen är grov, men det tjänar som en illustration på hur du kan komma igång med att skriva din egen batchfilen att bygga din J2ME programmet. Detta exempel batchfilen innebär följande:
(1) Ta bort den katalog som innehåller den gamla *.class filer;
(2) Ta bort den katalog som innehåller den gamla kontrolleras *.class filer;
(3) Gör en ”klasser” resultatkatalog;
(4) sammanställa alla *.java källor i att *.class filer, med produktion kommer att ”klasserna” katalog.
(5) Gör en ”kontrolleras” produktionen katalog;
(6) Preverify alla klasser i ”klasser” katalog, och som de kontrollerade klasser i ”de” kontrollerade katalog.
(7) Skapa ett *.jar filen och lägger till mainfest fil, och alla klasser i ”de” kontrollerade katalog;
*(8) Testa programmet via preverified klasser direkt;
*(9) Testa programmet via *.jar och *.jad filer;
(*... Dessa steg är funktionshindrade (genom att kommentera) i mitt parti fil.)

Batchfilen ”build_sbj.bat” för att bygga programmet
Här är samma fil (”build_sbj.bat”) i oformaterad text:
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 Bygga från kommandotolken
Här är resultatet av att köra ”build_sbj.bat” batchfilen på kommandoraden:

Verkställer ”build_sbj.bat” batchfilen
Observera att varningsmeddelanden för ”rmdir” och ”del” verksamhet helt enkelt visar att det inte finns någonting att ta bort.
Du kan se den nya katalogen (dvs. ”classes” och ”verified”) och den nya *.jar fil som resulterade körs batchfilen:

Källkodsfiler och nya genereras fil
5.6 *.jad fil
Distribuera sbj.jar filen måste vi skapa och redigera sbj.jad fil du rätt *.jar storlek i fältet:
Arkiv: 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 kanske behöver lägga till den fullständiga URL till *.jar fil när *.jad filen ligger på en hemsida på Internet - men jag upptäckte (genom ett experiment) att jag kunde undvika att nämna full URL (dvs, jag bara angett *.jar filnamnet i sig). Men att i den fullständiga URL, men jag tänkte tala om för dig vad jag observerade.
5.7 Sammanfattning
Med flera källfiler i projektet är gemensamma, och i detta avsnitt vi gav en grov bild av att bygga flera klasser, följt av förpackningar och utförande.
Se följande avsnitt om du använder Sun Wireless Toolkit, vilket gör att bygga tillämpningar mycket lättare.
6. Sun ”Wireless Toolkit (version 1.0.4_01)”
6.1 Inledning
Sun erbjuder en bekväm utvecklingsmiljö för att bygga och förpackning J2ME program: ”Java 2 Platform Micro Edition (J2ME) Wireless Toolkit (version 1.0.4_01)”.
(Varning: Du måste ladda ner Java 2 SDK 1.4 som beskrivs i ett tidigare avsnitt att använda detta verktyg. Gör det nu om du inte redan har den här versionen av Java 2 SDK.)
Gå till följande webbplats för att ladda ner verktygslåda:
http://java.sun.com/products/j2mewtoolkit/
Varning!
Du ska INTE klicka på länken ”2.0 Beta 1 English” (för närvarande början hämta alternativ) om du gör Motorola T720 utveckling - eftersom den här versionen har några MIDP-2.0 saker och ta sig runt detta kan vara en huvudvärk.

Inte ladda ner denna version! (”2.0 Beta 1 English”)
Jag försökte den här versionen, och jag så småningom har nummer för att sammanställa med massor av rörigt inställningar förändringar, men efter alla ansträngningar jag har en säkerhet undantag när jag försökte köra. Inte bry sig!
Hämta ”1.0.4_01 English” de versionen. Här är vad hämta sidan ser ut:

Den Sun J2ME Wireless Toolkit (version 1.0.4_01) nedladdningssida

Den Sun J2ME Wireless Toolkit (version 1.0.4_01) FTP lista över webbplatser
Detta kommer att ladda ner följande fil: ”j2me_wireless_toolkit-1_0_4_01-bin-win.exe”
Verkställa detta program att installera på ditt system.
6.2 J2ME Wireless Toolkit: lansera verktygsfältet
Efter verktygslåda är installerad kan du starta den från ”Start” (start) menysystemet:

Starta verktygsfältet program
Du kan också tillgång MIDP-1.0 dokumentation via ”Documentation” objekt i denna Start (start) menyn.

J2ME Wireless Toolkit (version 1.0.4_01) dokumentation
6.3 J2ME Wireless Toolkit: skapa projektet och bygga

Verktygsfältet är klar. Klicka ”New Project...” att skapa ett nytt projekt.

New Project: Ange projektets namn (blir JAR namn och namnet på det nya projektet katalog), och typ i MIDlet klass namn (klass från MIDlet, i huvudsak de främsta klass av din ansökan).

Verktygsfält: projektet skapades. Observera att konsolen var du ska placera din *.java källfiler, etc. (t.ex. ”c:\WTK104\apps\sbj\src”, etc)

Klicka på ”Settings...” i verktygsfältet för att få det här projektet på menyn.
Bortse från ”MIDlet-Jar-Size” området (med värdet ”100” bytes) för nu. Vi kommer så småningom leda till att rätt värde för att få ställa in.

Klicka på MIDlets fliken av projektet inställningarna.
Klicka på den enda raden i tabellen (”MIDlet-1”) för att markera och välja det. Klicka sedan på ”Edit” knappen.

Töm ”Icon” området om du inte har ett *.png fil att lägga i din *.jar fil.
Göra följande:
(1) Project --> Clean: Tar bort alla *.class filer;
(2) Build : Bygger alla *.class filer och preverifies;
(3) Project --> Package --> Create Package : Producerar *.jar och *.jad

Resultatet av att bygga *.jar och *.jad
När du gör dessa tre steg, den *.jar och *.jad omedelbart är redo för verkställighet i den lokala emulator, eller i bruk omedelbart på din webbplats så att andra kan hämta ”Over The Air” (OTA). Den *.jar storlek området i *.jad fil kommer att vara korrekt. Glöm inte att göra steg (3) varenda gång du bygga om!
Nu kan du testa genom att trycka på ”Run” (kör) knappen.

Slå ”Run” för projektet läser *.jad i till emulator. Du kan välja specifika MIDlet att lansera (oftast bara en).
Bara kopiera *.jar och *.jad filer från den angivna platser (rapporteras av verktygsfältet: s konsolen fönster under en bygga på ett bra sätt), såsom:
(Från konsolen fönster:)
Wrote c:\WTK104\apps\sbj\bin\sbj.jar
Wrote c:\WTK104\apps\sbj\bin\sbj.jad
Lägg dessa filer direkt på din webbplats utan ändringar, och det bör fungera. Här är vad jag såg på min mobiltelefon efter att ladda ner denna sammanställas ansökan ”via etern” (OTA)

Sam Robertson's Blackjack Trainer (sbj.jar) verkställande på min mobiltelefon
7. Erbjuder programvara på en webbplats på Internet
7.1 Se till att Internet webbserver anger MIME typer för *.jar filer och *.jad filer
Om du har en Apache Internet webbserver måste du skapa en fil med namnet ”.htaccess” inom din webbplats katalog. Den ”.htaccess” fil kan du åsidosätta Apache konfiguration, till exempel lägga till eller tvingande fil MIME typer. Du måste lägga till ange MIME typer motsvarar *.jar filer och *.jad filer, som visas i följande fil:

Min anpassade ”.htaccess” fil för Apache Internet webbserver. Obs: jag heter denna fil ”.htaccess.txt” bara att göra filen enkelt att redigera när du använder Windows operativsystem. Filnamnet måste ändras så att ”.htaccess” innan filen kan användas med Apache Internet webbserver.
Här är min enkla .htaccess fil som oformaterad text:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
Tydligen, skapa eller modifiera denna fil resulterar i en omedelbar förändring av Apache server beteende. Jag antar att det Apache Server kontrollerar denna modifiering datum och tid för ”.htaccess” fil på varje ny inkommande transaktion, och servern laddar den filen om förändringen datum och tid har förändrats.
Om du har en annan typ av Internet webbserver måste du bestämma hur du ange MIME typer, och du måste se till att *.jar filer och *.jad filer tillskrivs lämpliga MIME typer.
Du kommer att veta om det MIME typer inte har inrättats om mobiltelefon vägrar att ladda ner *.jad fil och rapporterar följande fel:
”406: Not Acceptable”
7.2 Alternativt ge länkar till *.jad fil inom HTML eller WML handlingar
Den Motorola T720 J2ME mobiltelefon med AT&T tjänsten kunna hämta en *.jad filen direkt, genom att skriva in URL av *.jad fil i till mobiltelefon. Detta kommer sannolikt att arbeta för andra J2ME mobiltelefoner med andra mobiltelefon tjänsteleverantörer.
Det kan dock vara mer bekvämt sätt för folk att hämta *.jad fil genom att välja en länk inom en HTML dokument eller inom en WML dokument. (Obs! WML är nu föråldrade. De flesta mobiltelefoner kan nu tolka HTML.)

En enkel HTML dokument med en länk till en *.jad fil

En enkel WML (WAP) sida med en länk till en *.jad fil (Obs! WML är nu föråldrade. De flesta mobiltelefoner kan nu tolka HTML.)
8. Nedladdning av programvara från en webbplats
Följande bilder visar den exakta följd av åtgärder som jag gjorde för att ladda ner och köra den MIDlet utvecklas och distribueras som beskrivs i tidigare avsnitt ovan. Dessa bilder är fotografier på skärmen av min mobiltelefon.
(1) huvudskärmen: När du öppnar telefonen, du ser huvudskärmen. Tryck i mitten knappen för att gå till huvudmenyn.
(2) Main Menu: Flytta till objektet ”WebAccess”.
(3) WebAccess: Flytta till objektet ”Go To URL”.
(4) Enter URL: Skriv in URL av en *.jad fil (eller av en HTML dokument, eller av en WML dokument).
(5) Details; Denna information analyseras från *.jad fil. Tryck DOWNLD att hämta *.jar fil.
(6) Download Complete, Vänta på det här meddelandet att försvinna;
(7) Installing, Vänta på det här meddelandet att försvinna;
(8) xxxx bytes transferred, Vänta på det här meddelandet att försvinna;
(9) Installed, Vänta på det här meddelandet att försvinna;
När WebAccess menyn visas igen, efter det att programmet har installerats, helt enkelt avsluta varje menyn för att återgå till huvudfönstret.
(1) huvudskärmen: När du öppnar telefonen, du ser huvudskärmen. Välj ”Games & Apps” alternativ via huvudmenyn, eller tryck på nedåtgående markören på huvudskärmen.
(2) Java Powered: Vänta på den här skärmen för att försvinna.
(3) Games & Apps: Markera objektet med namnet på ditt program!
(4) Hurra! Framgångsrikt genomförande av programmet!
Programmet utseende på mobiltelefon påminner mycket om utseende inom emulator.
9. Ladda ner felmeddelanden och installation felmeddelanden
9.1 Motorola T720 (J2ME) felmeddelanden
Följande fel meddelanden är endast relevanta för den Motorola T720 (GSM/J2ME) mobiltelefon.
9.1.1 ”Download Failed”
Orsaka # 1
Varje fil (HTML, JAD, JAR, MID, GIF) över 1644 bytes kommer att orsaka detta fel för vissa Internet webbhotell och servrar. Här är en kort lista över värdar och servrar:
Host / Server Error
=================================================== =================
Apache No
Microsoft Personal Web Server (direct from your PC) No
Earthlink (Apache) No
Yahoo! (custom server) Yes
Problemet beror på ett fel i Motorola T720 GSM/J2ME firmware, vilket medför att ladda ner filer i fragment för att misslyckas.
Den enda uppenbara lösningen är att gå över Internet webbhotell eller server typ. Andra mobiltelefon typer har inte detta problem.
Orsaka # 2
Den ”MIDlet-Jar-Size:” området för en *.jad filen inte ange exakt byte totalt motsvarande *.jar fil.
9.1.2 ”Failed: File Corrupt”
Orsaka # 1
Den *.jar fil använder API funktioner som inte finns på den specifika mobiltelefon.
Till exempel, MIDP 2.0 funktioner är inte tillgängliga på Motorola T720 GSM/J2ME mobiltelefon (som bara har MIDP 1.0 funktioner). Ett program kan utföra inom en emulator, men kan inte köra på mobiltelefon.
Lösningen är att söka efter MIDP 2.0 funktioner i källkoden och ersätta dem med MIDP 1.0 funktioner, eller eliminera de funktioner som kräver MIDP 2.0 funktioner.
Orsaka # 2
Den ”manifest.mf” fil som används för att skapa *.jar fil (via ”jar” utility) innehåller fel.
Se till att ”manifest.mf” fil har följande versioner av CLDC och MIDP:
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
Hela ”manifest.mf” filen ska se ut nästan exakt likadana ut som följande:
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
Varje linje i texten i ”manifest.mf” fil, inklusive den sista raden i filen bör sluta med en ”carraige återvända” (CR; 13; 0x0d) tecken följt av en ”radbrytning” (LF; 10; 0x0a) karaktär.
De enda områden av ”manifest.mf” filen i din egen version av filen som ska skilja sig från nedanstående exempel är de första tre områden som anges i exemplet. De tre sista områdena bör vara en exakt matchning med exempel, och de två sista tecknen i filen bör vara ”vagnretur” och ”radbrytning” efter sista området.
Här är eventuella problem i din version av ”manifest.mf” fil:
(1) Din ”manifest.mf” filen innehåller tecken som inte är ASCII tecken; (Titta på ett diagram av ASCII tecken, vilka tecken som helst utanför 0 till 127 rad är ogiltigt);
(2) Din ”manifest.mf” filen inte har en ”radbrytning” (LF) karaktär efter varje ”vagnretur” (CR) karaktär i slutet av varje rad;
(3) Din ”manifest.mf” filen har osynliga blanksteg eller tabbar i slutet av varje rad innan (CR)(LF) linje uppsägning;
(4) Din ”manifest.mf” filen innehåller en ”Manifest-Version:” linje;
(5) Den sista raden i din ”manifest.mf” filen slutar inte med ett (CR)(LF) linje uppsägning, utan i stället helt enkelt nått slutet av filen;
(6) Din ”manifest.mf” filen har inte den exakta områden och exakt ordningsföljd för fält som visas i exemplet ovan;
(7) Din CLDC versionen är inte riktigt 1.0, eller din MIDP versionen är inte riktigt 1.0;
(8) Din leverantör namn har tecken som inte är ASCII tecken (t.ex. ingen Unicode-tecken är tillåtna);
(9) Din ”manifest.mf” filen inte har ett mellanslag efter andra kommatecken i ”MIDlet-1:” linje;
Kanske några av de fall som anges ovan i själva verket inte orsaka problem för många mobiltelefoner, men att avskaffa alla de fall som anges ovan kan göra det möjligt att ladda ner för att lyckas. När hämtningen är framgångsrik, kan du experimentera med varianter av den ”manifest.mf” fil för att upptäcka vilka andra saker du kan göra utan att orsaka hämta fel. När ”manifest.mf” filen ändras är det viktigt att kontrollera att ladda ner programmet fortsätter att arbeta för alla mål mobiltelefoner och mobiltelefon tjänsteleverantörer. Vissa telefoner och tjänster är mindre flexibla än andra.
När en ”manifest.mf” filen skall läggas till en *.jar fil via jar program, det jar programmet skapar en ny version av manifestfilen inom *.jar fil. Det genererade version av manifestfilen inom *.jar filen heter ”MANIFEST.MF”. Den jar programmet kan lägga till fält i den här filen som inte finns i ”manifest.mf” fil tillhandahålls av programmerare. Inte extrahera en ”MANIFEST.MF” fil från en *.jar filen, om du inte är beredd att undanröja vissa områden och göra de återstående områdena se exakt likadana ut som exempel ”manifest.mf” fil som visas ovan.
9.1.3 ”Unsupported Content Type”
Orsaka # 1
Den mobiltelefon som inte kan acceptera MIME typ som rapporterats av fjärrserver för en specifik fil.
Till exempel, JPG bildfiler inte stöds av Motorola T720 och kommer att orsaka detta fel.
Detta fel kan också uppstå om MIME typ för ett stöd filtyp (t.ex. GIF, MID, JAD, JAR) är inte rapporteras på rätt sätt av servern. En person måste vara mycket noga med att rapportera den exakta MIME typ för filtyper som stöds.
Orsaka # 2
Filen cache på mobiltelefon själv måste rensas (t.ex. Browser Settings -> Clear Cache).
Om du nyligen lagt MIME typer till en fjärrserver, och sedan försökte ladda ner en fil som tidigare hade misslyckats med att installera på grund av en felaktig eller saknas MIME typ, sedan filen cache på mobiltelefon kan vara ett hinder för att ladda ner filen igen med en väl MIME typ.
Det är också möjligt att avlägsna Filen har ändrats och att den cachade versionen är defekta och förhindrar att den reparerade filen versionen laddas ned som en ersättning.
Rensa webbläsarens cache på mobiltelefon bör se till att en senare hämta förmåner från den senaste server konfiguration (t.ex. nya MIME inställningar) och avlägsna fil uppdateringar.
Orsaka # 3
Hur man kan undvika ”Unsupported Content type” fel i WAP
Om du får ett felmeddelande i WAP säger Unsupported Content type, det är inte nödvändigtvis beror på Content-Type inställningen. Många WAP sidor innehåller specialtecken, t.ex. svenska (å ö ä), och för att få dem att visas korrekt behöver du ange vilken teckenuppsättning du använder. För att ange vilken teckenuppsättning som används på ett WAP sida, du ändra Content-Type rubriken i servern svar till att omfatta teckenuppsättning, till exempel ”Content-Type: text/vnd.wap.wml; iso-8859-1”. När en användare får svar från en server, det borde ha alla nödvändiga uppgifter för att visa innehållet korrekt.
Men det finns ett problem med att använda denna metod. Alla telefoner ange att en gateway som teckenuppsättning de stöd med hjälp av ”Accept-Charset” i rubriken. Enligt HTML specifikationer, detta skall jämföras med de tecken som anges i en server svar, och om de inte matchar, felet Unsupported Content type ska skapas.
Att göra problemet mer komplicerat, några WAP gateways bryr sig inte om att jämföra tecken som stöds av den begärda enheten Innehållet kommer inte att visas korrekt på dessa enheter. En annan komplikation är att strängen ange det tecken som är bokstäver, men några WAP gateways behandla dem som gäller känsliga strängar.
Alla tillsammans, det kommer att bli mycket olika resultat beroende på vilken enhet du använder, som WAP gateway du använder och vad servern svar.
Det enda sättet att vara säker på att ditt innehåll kommer att visas korrekt är att alltid kontrollera vad som teckenuppsättning som godkänts av kunden och omvandla dina svar på denna teckenuppsättning innan du skickar det.
9.1.4 ”406: Not Acceptable” (”The server cannot generate a response that your client can accept.”)
Orsaka # 1
Du har en Verizon telefon!
Verizon inte tillåter sina kunder att ladda ner bilder (GIF), ringsignaler (MIDI), eller program, från godtyckliga Internet webbservrar. Man måste antingen använda sina ”Get It Now” tjänsten, eller använda en USB kabel och ”Get Around 'Get It Now' (GAGIN)” programvara.
Lösning: Att bara vänta på att konkurrensen på ”den” fria marknaden för att undanröja ”slutna plattformar.” Hela tekniken kan vara föråldrade med den tid detta lyckas, men detta är vad som händer när företag styrs av girighet ensam.
Orsaka # 2
Felmeddelandet tyder på att MIME typ i samband med filtillägget (t.ex. .gif, .mid, .jar) av filen laddas ner inte har specificerats av Internet webbserver.
Om du har en Apache Internet webbserver, till exempel, måste du ändra en ”.htaccess” fil, lägga till följande rader:
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”
Orsaka # 1
Servern är värd för filen som laddas ner inte ange MIME typ för den filen (t.ex. GIF, MID, JAR). Det mobiltelefon förutsätter att filen är oformaterad text. Också, den mobiltelefon kan ha en gräns för hur stor (i bytes) av textfiler som är mindre än den gräns på storleken (i byte) av binära filer (t.ex. GIF, MID, JAR). Därför är en binär fil tolkas som en textfil kommer sannolikt att överskrida den högsta tillåtna storleken på en textfil, och kommer därmed att orsaka felet.
Om du har en Apache Internet webbserver, till exempel, måste du ändra en ”.htaccess” fil, lägga till följande rader:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid
Orsaka # 2
Uppenbarligen har det här felet kan också inträffa även om den fjärranslutna servern har en väl MIME typer fastställts. Jag har ännu inte fastställt när detta fel uppstår i stället för ”Download Failed” för denna situation.
Det är självklart att Motorola T720 GSM/J2ME mobiltelefon kan inte behandla en aspekt av HTTP 1.1 specifikation som gör det möjligt för de filer som ska delas in i fragment, som kräver flera ”GET” önskemål.
När du använder Motorola T720 GSM/J2ME mobiltelefon för att hämta filer från vissa Internet webbserver typer, alla filer (t.ex. HTML, JAD, JAR, MID, GIF) större än 1644 bytes kommer att orsaka detta fel. Här är en kort förteckning över Internet webbhotell leverantörer och även Internet webbhotell som orsakar ett problem för 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 beror på att den fasta programvaran i Motorola T720 GSM/J2ME mobiltelefon, som påverkar dess förmåga att ladda ner filer i fragment.
Den enda uppenbara lösningen, när du hämtar till Motorola T720 GSM/J2ME mobiltelefon, är att undvika vissa Internet webbhotell server typer. De flesta andra mobiltelefon typer inte har detta problem, och så detta problem kan nu att ignoreras.
9.1.6 ”Connection unsuccessful. Try again later.”
Orsaka # 1
Detta fel har inget att göra med Internet-server som är värd för den begärda filen.
Om du får detta fel, jag föreslår att du gör följande:
(1) rensa webbläsarens cache;
(2) rensa webbläsarens history;
(3) Stäng av telefonen;
(4) Ta ur batteriet;
(5) Vänta några sekunder;
(6) Sätt in batteriet på telefonen;
(7) Power in telefonen;
(8) Prova att hämta dem igen;
Jag fick den ”Connection unsuccessful. Try again later. felmeddelande för flera dagar efter att jag först köpt en mobiltelefon. Sedan, genom slumpmässiga chans, jag tog bort batteriet. När jag sätta in batteriet i till mobiltelefon, jag omedelbart hade tillgång till Internet.
Jag fick det här felet flera gånger under de efterföljande sex månader, och det förfarande som ovan har återställts tillgång till Internet varje gång. Jag har inte avgöra vilken steg av förfarandet kan vara det viktigaste, men jag tror att helt enkelt ta ur batteriet och sätta in batteriet i till mobiltelefon kan vara tillräckligt.
Enligt min åsikt är detta felmeddelande är alltför vagt. Varför var försöket att ansluta misslyckat? Var den mobiltelefon servicenät för upptagen? Var den mobiltelefon tjänstens ”Gateway” server inte fungerar? Är min mobiltelefon inte ta emot eller sända tillräckligt med radiosignal styrka? När skulle vara en bra tid att försöka hämtningen igen? Tio sekunder från och med nu? En timme från och med nu? En vecka från och med nu? Felmeddelandet vore bra om det var mer specifik om orsaken till problemet och om det var mer specifika om tänkbar lösning.
Orsaka # 2
Om du gjorde en ”Master Reset”, eller om du aldrig har haft möjlighet att ansluta till Internet, sedan kontrollera nätverksinställningarna på mobiltelefon. För ett exempel på nätverksinställningarna (för Motorola T720 GSM/J2ME mobiltelefon, för AT&T tjänst i Los Angeles, California område), se avsnittet anges med följande länk:
10. Skapa, bjuda ut, och nedladdning av ”ringsignaler”
10.1 Skapa eller förvärva ett MIDI fil (*.mid)
Du kan skapa eller förvärva ett MIDI ljudfil (*.mid) från någon källa. Jag hittade temat musik till tv-show ”Knight Rider” (1982-1986) i MIDI format (t.ex. ”knightrider.mid”) genom en enkel sökning på Internet.
Följande bild ger dig en uppfattning om hur en MIDI filen visas i en MIDI redaktör. Det inte är nödvändigt att ha en MIDI redaktör för att få musik till telefonen. Du kan få en befintlig MIDI fil (*.mid) från någon källa. Men du kan också använda en MIDI redaktör för ditt val att skapa egna ursprungliga polyfoniska musik.

Cakewalk Home Studio: spelar ”knightrider.mid”
10.2 Se till att din Internet webbserver vet MIDI MIME typ
Om du har en Apache Internet webbserver, till exempel, måste du ändra en ”.htaccess” fil, lägga till följande rader:
Den ”.htaccess” fil kommer att specificera eller åsidosätta MIME slag som anges av servern för filer av olika slag (oftast anges med filtillägg som .MID, .GIF, .JAR).
Om du redan har lagt till andra MIME typer för andra typer av filer, din kompletta ”.htaccess” fil kan likna följande:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid
Tydligen, skapa eller modifiera denna fil resulterar i en omedelbar förändring av Apache server beteende. Jag antar att det Apache Server kontrollerar denna modifiering datum och tid för ”.htaccess” fil på varje ny inkommande transaktion, och servern laddar den filen om förändringen datum och tid har förändrats.
Om du har en annan typ av Internet webbserver måste du bestämma hur du ange MIME typer, och du måste se till att *.jar filer och *.jad filer tillskrivs lämpliga MIME typer.
Du kommer att veta om det MIME typer inte har inrättats om mobiltelefon vägrar att ladda ner *.jad fil och rapporterar följande fel:
”406: Not Acceptable”
10.3 Sätt MIDI fil (*.mid) på att din Internet webbserver
Jag kopierade en MIDI fil med namnet ”kr.mid” till rotkatalogen på mitt Internet webbserver. Du kan använda program som ”Filezilla” att göra FTP överföring enkel och bekväm.
10.4 Ladda ner MIDI fil till din mobiltelefon via din telefon: s Internet -
För Motorola T720 GSM/J2ME mobiltelefon, ladda ner en MIDI filen börjar med ”WebAccess” menyn. Välja ”Go To URL”, följt av att skriva URL av MIDI fil, startar nedladdningen. Till exempel, jag skrev i följande URL:
http://www.colinfahey.com/kr.mid
Om nedladdningen lyckas, och om du använder en Motorola T720 cellular phone, kommer du få möjlighet att lagra filen på din mobiltelefon. När du bestämmer dig för att spara filen, du har nu möjlighet att enkelt lagra i din uppsättning ringsignaler eller i stället fastställa den filen att den nuvarande ringsignal (som också, som en bieffekt, butiker i din uppsättning ringsignaler) .
Följande bilder sammanfattar processen att ladda ner och spela MIDI filer för Motorola T720 GSM/J2ME mobiltelefon. Andra J2ME aktiverat för mobiltelefoner, med andra mobiltelefon tjänsteleverantörer, kommer troligen att få en liknande hämta förfarande. Om din mobiltelefon tjänsteleverantören är Verizon, då du är ute och tur, inget av detta kommer att fungera, och du bör gå och köpa en ”Android” telefonen så att den hjälper till att förstöra ”stängt telefonen” marknaden!
(1) Main skärmen: Tryck på en knapp för att visa huvudmenyn.
(2) Main Menu: Gå till ”WebAccess” objekt.
(3) WebAccess: Gå till ”Go to URL” objekt.
(4) Enter URL: Skriv in URL av en MIDI fil (*.mid) på en webbplats på Internet.
(5) Connecting: Vänta tills nedladdningen ska börja. (Om du har fått ”406: Not Acceptable” felmeddelande, sedan Internet webbserver inte utse en lämplig MIME typ för MIDI filer (*.mid)).)
(6) Downloading: Vänta på nedladdning till slut.
(7) Download Complete: Vänta på den här skärmen för att försvinna.
(8) MIDI Playback: Den MIDI filen börjar spelas upp omedelbart. Tryck på menyknappen för att gå till Tone Menu, och fortsätta till steg (9), eller tryck på ”STORE” knappen och gå till steg (12).
(9) Tone Menu: Du har möjlighet att spela ...
(10) Tone Menu: Du har möjlighet att få information.
(11) Details: Här ser vi den storlek i byte.
(12) Store Options: Från steg (8) vi kan trycka på ”STORE” knappen för att komma till denna meny. Du har möjlighet att lagra till telefonens samling låtar. Hit ”SELECT” att lagra.
(13) Stored: Den MIDI tune har lagrats.
(14) Total Bytes Transferred: Detta är helt enkelt en anmälan om det antal bytes laddas ner, så att du inte är förvånad över din kommande mobiltelefon tjänst Bill!
10.5 Spela MIDI fil som helst på mobiltelefon
Du kan spela upp den lagrade MIDI filer när som helst på din mobiltelefon, och du kan använda någon MIDI fil som din ringsignalen.
(1) Main skärmen: Tryck på en knapp för att gå till huvudmenyn.
(2) Main Menu: Gå till ”Media Center”.
(3) Media Center: Gå till ”My Tones”.
(4) My Tones: Markerad tonen börjar spelas upp omedelbart. Du kan ändra namnet med ”EDIT” alternativ. Att trycka på menyknappen ger dig andra alternativ.
10.6 Ställ ringen stil att använda en MIDI fil
Gå igenom följande menyer:
(1) huvudskärmen
(2) Main Menu
(3) Ring Styles: Press ”SELECT”
(4) [Silent, Soft, Loud] Detail: Press ”CHANGE”
(5) Calls: [current ring style/tune]: Press ”CHANGE”
Bläddra även om listan över ringen stilar (tyst, vibrationer stilar, permanent ring låtar, osv), och längst ned kan du se din hämtat låtar. Helt enkelt trycka på ”SELECT” knappen för att göra din nya ring tune aktiva!
11. Skapa, bjuda ut, och nedladdning av bilder
11.1 Skapa ett 120 * 160 GIF bildfil (*.gif)
Följande steg kan användas för att skapa en 120 * 160 GIF bildfil (*.gif) lämpar sig för att visa på Motorola T720 GSM/J2ME mobiltelefon, antingen som en bakgrundsbild för huvudskärmen, eller som en bild i bildgalleri.
(1) Öppna en bildfil med Microsoft Paint eller Adobe Photoshop eller någon annan lämplig bildredigering programvara;
(2) omfattning eller beskära bilden till 120 pixlar bred och 160 pixlar hög (dvs. en 120 * 160 pixel bild);
(3) Spara filen i en GIF bildformat (*.gif), (Inom Adobe Photoshop sättet att göra detta är: File -> Export -> Gif89a)
Bildfilen måste i GIF bildfil format så att Motorola T720 mobiltelefon kan avkoda och visa bilden. Om bilden dimensioner är exakt 120 * 160, då bilden kommer att passa perfekt på skärmen i Motorola T720 mobiltelefon, annars kommer bilden att ha tomt gränsar till två sidor.
Obs: jag har hämtat och visas en *.gif bildfil som 118 * 120 pixlar, vilket är mindre än skärmen på 120 * 160. Jag tror att den återstående delen av skärmen är fylld med en färg som valts ut från gränsen av bilden. Kanske pixel färg på pixel i övre vänstra hörnet av bilden används som färg på den tomma gränser kring två sidor av bilden.
Den Motorola T720 mobiltelefon kan visa 4096 färger, som jag tycker är kodade som 12-bit RGB (4-4-4). Därför tycker jag att bilder med små färgövergångar som spänner över stora områden bör undvikas, eftersom gränserna för dessa lutningar kommer att vara mycket tydligt och störande att en person tittar på bilden. Också, det GIF format sig är begränsad till endast 256 olika färger, så en person måste vara medveten om denna begränsning också. I vilket fall som helst är det alltid bäst att bara titta på en bild på mobiltelefon att veta huruvida bilden är lämpliga för mobiltelefon.

Space Invaders (Space Invaders): en 120 * 160 GIF bild
11.2 Sätt GIF bildfil (*.gif) på att din Internet webbserver
Jag kopierade en GIF fil med namnet ”si.mid” till rotkatalogen på mitt Internet webbserver. Du kan använda program som ”Filezilla” att göra FTP överföring enkel och bekväm.
11.3 Ladda ner GIF fil till din mobiltelefon via din telefon: s Internet -
För Motorola T720 GSM/J2ME mobiltelefon, ladda ner en GIF bildfil börjar med ”WebAccess” menyn. Välja ”Go To URL”, följt av att skriva URL av GIF fil, startar nedladdningen. Till exempel, jag skrev i följande URL:
http://www.colinfahey.com/si.gif
Om nedladdningen lyckas, och om du använder en Motorola T720 cellular phone, kommer du få möjlighet att lagra filen på din mobiltelefon. När du bestämmer dig för att spara filen, du har nu möjlighet att enkelt lagra i din uppsättning bilder eller i stället fastställa den filen att den nuvarande bakgrunden ”(dvs,” tapeter).
Följande bilder sammanfatta processen för nedladdning GIF bildfiler för Motorola T720 GSM/J2ME mobiltelefon. Andra J2ME aktiverat för mobiltelefoner, med andra mobiltelefon tjänsteleverantörer, kommer troligen att få en liknande hämta förfarande. Om din mobiltelefon tjänsteleverantören är Verizon, då du är ute och tur, inget av detta kommer att fungera, och du bör gå och köpa en ”Android” telefonen så att den hjälper till att förstöra ”stängt telefonen” marknaden!
(1) WebAccess: Gå till ”Go to URL” objekt.
(2) Enter URL: Skriv in URL av en GIF bildfil (*.gif) på en webbplats på Internet.
(3) Connecting: Vänta tills nedladdningen ska börja. (Om du har fått ”406: Not Acceptable” felmeddelande, sedan Internet webbserver inte utse en lämplig MIME typ för GIF bildfiler (*.gif)).)
(4) Förhandsvisning av nedladdad bild, med möjlighet att ”STORE” (butik) bilden i minnet av mobiltelefon;
(5) Store Options: Den GIF bild kan enkelt lagras, eller det kan användas för att ersätta det nuvarande ”bakgrundsbild” (bakgrund av huvudskärmen), eller det kan användas ”som” skärmsläckare (dvs en bild som visas när mobiltelefon knappar inte har tryckt på för en bestämd tid).
(6) Changed: Wallpaper [image name]: Detta är helt enkelt en anmälan att ”bakgrundsbild” har ändrats.
(7) Visningen av huvudskärmen i mobiltelefon efter ”en” bakgrund (dvs. bakgrunden) bild har ändrats. ”Space Invaders” har erövrat min mobiltelefon!
11.4 Animerad GIF bild för att använda ”som” skärmsläckare på mobiltelefon
Om du vill ladda ner en animerad GIF bild att använda ”som” skärmsläckare bild på din mobiltelefon genom att följa instruktionerna i föregående avsnitt i detta dokument för att förbereda och ladda ner en bild.
Om GIF bilden är en animera GIF, sedan ”skärmsläckaren” kommer att visa denna animering.
Helt enkelt ställa in bilden ”som” skärmsläckare bild efter bild har laddats ner.
Följande animerade GIF bilden kan användas som ett animerade ”skärmsläckare” bild på Motorola T720 GSM/J2ME mobiltelefon.

En animerad GIF bild som kan användas som ett animera ”skärmsläckare” bild på Motorola T720 GSM/J2ME mobiltelefon.
Tyvärr, den Motorola T720 mobiltelefon inte animera ”bakgrundsbild.” Det hade varit väldigt häftigt att öppna mobiltelefon och se en animera bakgrunden på startsidan! :^(
Du kommer bara att se en animerad GIF visas på Motorola T720 mobiltelefon när telefonen träder ”skärmsläckare” läge, som kan kräva 30 sekunder eller mer för att starta. (Du kan ange denna försening i en av menyerna.) Skärmens belysning är sannolikt att stänga av innan skärmsläckaren visas. ”Skärmsläckaren” visas inte under ett pågående samtal. Därför, med tanke på alla dessa fakta, ”skärmsläckaren” av Motorola T720 mobiltelefon är ganska lamt.
12. Motorola T720 GSM/J2ME mobiltelefon inställningar för AT&T mobiltelefon nätverk
12.1 Inledning
Denna del av detta dokument kommer sannolikt inte att vara till nytta för någon, eftersom detta avsnitt beskriver inställningar för en mycket specifik mobiltelefon (Motorola T720 GSM/J2ME) för en mycket specifik mobiltelefon tjänsteleverantör (AT&T) för en mycket specifik region (södra Kalifornien). Men jag ta med denna information för historiskt intresse.
12.2 Web Sessions inställningar
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)
Det finns också en DNS inställningen för Java program:
Main Menu
Settings
Java Tools
DNS IP: 10.250.1.10
12.3 Synpunkter
(1) du gör ”en” total återställning kommer att ställa in WAP Port nummer till ”9201,” så dessa måste ändras till ”9203.”
(2) Den sekundära WAP IP and Port är inställda på samma IP och hamn som det primära WAP inställningar. Jag kunde använda ”mMode” (dvs, gå till någon URL) med en helt tom sekundär WAP inställning, men jag hade ”Line Type 1: Modem” vid den tidpunkten. Jag vet inte om att ställa in ”ISDN” gör det mer sannolikt att den sekundära WAP inställningarna kommer att användas.
(3) ”en” total återställning gör ”Timeout:” området ”15 minutes”. Ändra värdet till ”2 minutes”.
(4) Den ”Name:”, ”Homepage:”, och ”GPRS APN:” områden som alla innebär att skriva med bokstäver och symboler manuellt.
(5) De områden som visas tom i exemplet ovan är verkligen avsett att inte ha någon text upp. Tomrummet är ingen slump.
13. Länkar till andra mobiltelefon resurser
13.1 Motorola J2ME SDK 3.0
Motorola har ett Software Development Kit SDK som innehåller en emulator som kan efterlikna många Motorola telefoner, bland annat T720. Du kan få detta SDK gratis, och du
behöver inte CodeWarrior att använda telefonen emulator som följer med SDK, trots alla nämner CodeWarrior på Motorola webbplats. Också i allmänhet jag tror att ni kan klara sig utan CodeWarrior eller Motorola SDK även om du gör professionell utveckling för T720.
Du måste registrera sig Motorola att även lära sig om deras J2ME SDK, för att inte tala hämta den.
http://kb.motorola.metrowerks.com/motorola/developmentTools.do
Det finns några funktioner för att spela ”Compact MIDI” och även ”*.wav” filer. Installera och läs dokumentationen för att lära dig mer information.
Här är en kommentar som jag fick i ett e-post:
Den Motorola J2ME SDK ger dig (bland annat) ”skinn” för emulator så att den emulator kommer att se ut telefonen som du planeringen för. Det är mer än kosmetiska. Skärmstorleken kan variera till exempel, så om du utforma något där skärmstorlek frågor, det definitivt bidrar till att ha en emulator som matchar målet. Den SDK innehåller också en del Motorola skapas öppna Java klasser kallas Lightweight Windowing Toolkit att ge dig en del av vad du behöver för att skapa en ansökan med en verklig UI - olika UI widgets.
Du kan komma med utan det, men om du höll på med seriöst arbete skulle du förmodligen vill ha det. Om jag var att skapa saker för Sony Ericsson eller Nokia eller någon annan telefon, jag vill att deras SDKs också.
Här är ett citat från Motorola's webbplats om deras SDK:
Den Motorola Software Development Kit (SDK) för J2ME™ plattform är ett verktyg som används för utveckling och testning av program skrivna i Java programmeringsspråk. Den SDK innehåller program som gör det enkelt att starta MIDlets (J2ME™ Programs) använda Motorola J2ME™ enheten emulator. Dessa verktyg låter dig utveckla och felsöka din J2ME™ program i emulering innan du laddar ner dem till ett mål enheten. Den Motorola SDK kan integreras i Metrowerks' CodeWarrior™ Wireless Studio, Professional Edition, Version 7.
Denna version av SDK innehåller många förbättringar för prestanda och stabilitet. Alla funktionerna i den tidigare versionen stöds, med dessa nya funktioner:
Nya telefoner som stöds av denna version: A830.
Nya funktioner stöds av denna version:
A830 - Gaming API, seriell port för anslutning, HTTPS protokoll stöd.
All devices - Förbättrad grafik prestanda
Den SDK stöder följande 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 vän till mig tydligen hade inga problem att ladda ner och använda detta verktyg - som uppenbarligen ger dig allt du behöver (JDK, MIDP, CLDC) och extra verktyg för att göra JAD, etc. Jag har inte provat det själv. Här är andra synpunkter på denna verktygslåda:
Citat från en Slashdot utstationering:
Du kunde ha sparat lite krångel att installera alla olika verktyg. Bara ladda ner [sun.com] Sun ONE Studio 4 update 1, Mobile Edition, dess helt gratis (som i öl), och är en stor integrerad utvecklingsmiljö (om 20 MB ladda ner). Alla verktyg, emulatorer och demos från artikeln är paketerat. Sedan förra veckan jag kör det under RH Linux 7.2, med 512mb av ram (YOU NEED LOTS OF RAM!!!).
Tog bara en minut [sun.com] från att hoppa över den regestration skärmen för att stärka genom masken spel i debugger (Jag har alltid älskar spelet mask / orm / nibbles i alla dess inkarnationer, och demo version som är vackert i programmet - enkelt men objektorienterat och flera trådar i en liten mängd kod).
Du måste registrera dig för att ladda ner. Stöds plattformar: Linux, Windows, Solaris.
Citat från en Slashdot utstationering:
Från sun hämta faq [sun.com]:
”På grund av det sätt vår ladda ner tjänsten hanterar sessionshantering kan du inte återuppta delvis nerladdningar genom att klicka på länken igen i webbläsarfönstret. Snarare öppnar filhämtningsprogram program du använder, och fortsätta hämtningen inom filhämtningsprogram sig.
Vi fortsätter att arbeta med våra tekniker för att stödja mer hämta chefer på flera plattformar. För nu, dock kan du stänga av alla andra ladda ner chefer och verktyg om du får ladda ner problemen.”
Ladda ner stora filer från sun under linux har verkligen svårt för ungefär ett år nu. Det enda download manager tills nyligen hade jag kunnat komma igång med arbetet var DAP under windows (varning: Spyware). I princip de flesta hämta chefer (prozgui, getright, opera) kommer inte att kunna hantera Sun's [HYCKLERI]. Löjligt snarare än programmets webbplats för att bara arbeta, Sun har skrivit sina egna filhämtningsprogram [sun.com]. Sitt skriftliga i java, och dess enda liten 140KB! Det förvånande är att detta är en alldeles utmärkt filhämtningsprogram, små fotavtryck, ingen kapning av webbläsare, inga adware / spyware, verk under några OS, automatisk fil kontroll, automatisk unzips, och fast som en klippa
13.3 Random Inlägg:
Den Jad och Jar filer är de enda filer som behövs för att köra ett program på en telefon och, beroende på telefonen och den metod du byter programmet till telefonen kan du bara behöver jar.
Om de ansökningar som ska skickas Over the Air (OTA), t.ex. via en web URL måste du skapa en länk på en sida läsas av telefonen (t.ex. wml, cHtml, cHtml) till JAD fil. För OTA nerladdningar behöver du även ställa in din webbserver för att hantera jar och jad filtyper. I apache du behöver lägga till följande rader till httpd.conf fil:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
Också måste du se till att URL för jar filen är URL för JAR fil på servern, inte den lokala URL
Om å andra sidan du vill överföra via IR, Bluetooth eller en kabel du bara behöver överföra filer till telefonen, installera och köra. Den JAD fil är i allmänhet som särskilt används för att ge telefonen information som behövs för OTA nerladdningar och som sådana får Nokia 7650 och några andra modeller är det bara att överföra jar fil för icke-OTA överföringar.
13.4 http://wireless.java.sun.com/midp/questions/sar/
SAR (eller WTP-SAR) står för Segmentation and Reassembly. Det är en valfri funktion av Wireless Transaction Protocol (WTP) inom WAP. SAR definierar en metod för en WAP gateway för att bryta ett stort budskap (en JAR fil du laddar ner, till exempel) i små bitar (segmentering) och för att telefonen ska bit tillbaka det tillsammans (de återmontering).
Inte alla telefoner använder SAR, men de flesta kommer att få webbservrarna via en WAP gateway. Nokia använder SAR, medan Motorola använder funktionerna i HTTP 1.1 att hämta små bitar av en fil i taget och sedan ihop det.
Ett problem som uppstår med WAP gateways gäller MIME typer returneras av webbservern. Om en användare begär en JAD eller JAR filen och servern returnerar fel MIME typ, en gateway och därefter telefonen kommer att hantera överföringen felaktigt. För att säkerställa korrekt nedladdning av MIDlets, använda följande MIME typer:
text/vnd.sun.j2me.app-descriptor jad
application/java-archive jar
13.5 Random Inlägg
du måste ha rätt MIME inställningar på servern som lagrar .JAD/.JAR filer. Efter det kommer du att kunna ladda ner program till enheten. Tänk på att: - denna process är ganska enhetsspecifika (inte nödvändigtvis med hjälp WA protokollet) - Du är bäst att ha absoluta sökvägar till .JAD och .JAR som (dvs. http://www.fooserver.com/repository/JoeDoeApp.JAD)
13.6 Random Inlägg
Åtminstone i Siemens enheter, du har en särskild konfiguration för Java, som skiljer sig från WAP och GPRS. Du kan navigera genom WAP, men när ett midlet finns, en annan inställningarna ändras automatiskt för att utföra hämtningen. I M50 hands, du måste ställa in Java profiler enligt de parametrar som din leverantör, i c55 hands, samma som kallas ”HTTP profile” och det används även för andra typer av fil (t.ex. http förbindelser i MIDlet) .
13.7 Diverse intressanta länkar på avancerad MIDlet undertecknande grejer
13.8 Very cool MIDlet-program introduktion
13.9 http://wireless.java.sun.com/midp/articles/deploy/
Distribuera ditt trådlösa applikationer på distans:
Ladda upp din ansökan filer (JAD och JAR) till ett fjärr-webbserver. Om projektet heter spel, till exempel ladda upp filer: games.jad och games.jar från bin katalog av projektet hemmet (till exempel <toolkit>/apps/games/bin). Observera att de två filerna måste hamna i samma katalog på servern.
Konfigurera webbservern så att den känner JAD och JAR filer:
För JAD filtyp, som filändelsen till .jad och MIME typ att text/vnd.sun.j2me.app-descriptor.
För JAR filtyp, som filändelsen till .jar och MIME typ att application/java-archive.
Hur du konfigurerar webbservern beror på vilken ett som du använder. Till exempel, om du använder Tomcat, se till att din web.xml filen innehåller följande rader:
<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>
Ändra din JAD filens MIDlet-Jar-URL egendom för att ange URL av din JAR fil. Till exempel, i den kopia av games.jad du lagt upp på servern, ändra ...
MIDlet-Jar-URL: games.jar
... till ...
MIDlet-Jar-URL: http://YourWebServerAddress:port/pathTo/games.jar
13.10 Diverse länkar
13.11 Nokia J2ME programutveckling länkar
Från en Nokia webbplats:
Nokia's J2ME genomförandet består av de facto-standard MIDP 1.0 och CLDC 1.0. Plattformen är förlängas av Nokia User Interface (UI) API. Det ger utvecklare tillgång till vissa grundläggande telefonens funktioner som inte anges av CLDC 1.0 eller MIDP 1.0. Den Nokia UI API ger tillgång till enkla ljud kapacitet, vibrationer, display belysning, samt några grafiska förbättringar.
Från ett e-postmeddelande jag fick:
Så Nokia verkar vara riktigt öppna det telefoner till någon form av anpassad modifiering du kan tänka på. Du kan lägga till vibrationer java spel, lägga karikatyr bubblor till bilder du tar, och även ladda upp bilder till din webbplats! Du kan skriva en egen server, och människor kan ladda upp saker till dig!
Här är några coola 7650 länkar:
13.12 Mobiltelefon programmet länkar
14. J2ME kontra BREW
14.1 Inledning
Det finns två dominerande mjukvaruplattform för mobila enheter: J2ME och BREW. Många mobiltelefon transportföretag har beslutat att erbjuda telefoner med J2ME stöd: AT&T, T-Mobile, och Sprint. En stor transportör har beslutat att bara erbjuda telefoner med BREW stöd: Verizon.
En mobil enhet som stöder J2ME kan utföra J2ME program men inte kan köra BREW program. En mobil enhet som stöder BREW kan utföra BREW program, men inte kan köra J2ME program.
Tillverkare av mobila enheter ofta erbjuder flera versioner baserade på olika trådlösa sänds standarder. Till exempel, Motorola erbjuder två versioner av T720: GSM och CDMA. Tillfällighet, det GSM version av T720 stöder J2ME program, och CDMA version av T720 stöder BREW ansökningar. Så även om trådlösa broadcast-standarder inte är tekniskt relaterade till telefonens operativsystem, omständigheter på marknaden har lett till detta oavsiktlig korrelation.
14.2 Mobiltelefon tjänsteleverantörer bestämma vad en kund kan göra med en mobiltelefon enhet
Här är en sammanfattning av vad som mobiltelefonspårning tjänsteleverantörer tillåter kunder att göra:
[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 erbjuder det bästa kund och utvecklare tillgång till mobiltelefon enheter och multimedia filer på Internet. Tydligen, AT&T har beslutat att fokusera på verksamhet med transport av byte genom sina nätverk, snarare än att försöka vara i branschen för försäljning av multimediainnehåll.
Verizon är den mest förtryckande mobiltelefon tjänsteleverantör av dem alla. Deras ”Get It Now.” affärsmodell, som innebär ett konstlat sätt begränsa kundens användning av sin egen mobiltelefon för att skydda företag för att sälja multimediainnehåll, har inspirerat många frustrerade kunder att säga upp sina avtal med Verizon eller hitta sätt att kringgå ”Get It Now.” portal. Precis som biosalonger och idrottsarenor kan ta ut mycket höga priser för livsmedel, eftersom kunder som inte lätt kan få tillgång till alternativa källor till mat under dessa omständigheter (det vill säga, det finns en brist på tillgång till konkurrens), Verizon kan ta ut mycket höga priser för tillgång till multimedia filer och programvaror, eftersom kunder som inte lätt kan få tillgång till alternativa källor för multimedia filer och programvaror.
14.3 Binary Runtime Environment for Wireless (BREW)
BREW är ”Binary Runtime Environment for Wireless, en egenutvecklad programvara som utvecklats av QUALCOMM. Om du vill veta mer om BREW finns på följande webbplats:
http://www.qualcomm.com/brew
Den SDK kan laddas ner från Qualcomm. Under 2002 har SDK skulle kunna användas för att bygga programvara med Microsoft Visual C++ 6.0, och de program som skulle kunna överföras till en mobiltelefon utan ett ”test signatur.”
Alla telefoner med Verizon kontrakt använda BREW. Alla program, bilder och musik måste överföras via Verizon's ”Get It Now.” portal, och ofta i att betala avgifter utöver den bandbredd kostnader.
14.4 Java 2 Platform, Micro Edition (J2ME)
J2ME är ”Java 2 Platform, Micro Edition”, en ”mycket optimerade” Java Runtime Environment. Om du vill veta mer om J2ME finns på följande webbplats:
http://java.sun.com/j2me
Du kanske redan har gjort vissa Java programmering. J2ME omfattar många av de Java klasser används för skrivbordet datorprogram. Så klart, alla Java klasser som är ren Java kod, och inte beroende av någon hårdvara eller operativsystem funktioner, kan sammanställas för att utföra inom ramen för någon Java virtuell maskin.
En person kan skapa trådar, uttag, grafik canvases, etc, på ett enkelt sätt. En person som bara behöver ladda ner en *.JAR filen (och eventuellt en *.JAD fil) för att installera ett program på en mobiltelefon.
Att ladda ner Java SDK är
fri. Dokumentationen för Java är grundlig. Miljontals människor har utvecklat kod för Java. Det finns många Internet forum diskuterar olika aspekter av Java programmering.
I bara minuter från att söka på Internet, jag har hittat hundratals intressanta programvaror och bilder, och ljud, allt för Motorola T720 GSM/J2ME mobiltelefon - och alla filer kostar inget att ladda ner.
Jag är väldigt nöjd med att kunna dra full nytta av multimedia aspekter av min egendom (det vill säga, min mobiltelefon) utan att behöva betala min mobiltelefon tjänsteleverantör för något mer än att använda sin mobiltelefon nätet.
14.5 Min BREW och Verizon skräckhistoria
Jag har skapat programvara för både J2ME och BREW plattformar, och enligt min mening, jag tror att båda teknikerna har sina för-och nackdelar, och båda är mycket som kan användas för att skapa avancerade program på ett enkelt sätt.
Men ett företag som är intresserade av att skapa och säljer mjukvara för mobiltelefoner bör fundera en enda fråga: ”Om jag utveckla programvara, kommer jag få sälja det?”
Om ett företag som utvecklar mjukvara för J2ME plattform, då de flesta mobiltelefon tjänsteleverantörer tillåter kunder att gå till någon webbplats och ladda ned J2ME programvara, utan att några kostnader utöver kostnaden för att överföra bytes via mobiltelefon-nätet. Således, en utveckling av programvara verksamheten är säker för att kunna få tillgång till potentiella kunder, och kan göra sina egna system för att samla in pengar från kunder till all programvara som inköp.
Om ett företag som utvecklar mjukvara för BREW plattform, sedan Verizon beslutar huruvida programvaran kommer att finnas tillgänglig för försäljning till kunder. Dessutom Verizon kommer att extrahera en stor andel av försäljningspriset av programvaran för privilegiet att vara tillåtet att sälja programvara via deras exklusiva portal.
Här är min BREW och Verizon skräckhistoria:
Jag hade en unik idé om en programvara för mobiltelefoner i en tid då mobiltelefoner var början för att kunna utföra BREW och J2ME program. Jag var mycket glada över eftersom jag trodde att jag kunde skapa och publicera ett unikt program för dessa plattformar länge innan konkurrenterna skulle vara redo att skapa en liknande produkt. Jag var övertygad om att jag kanske äntligen göra något i mitt liv som skulle göra mig rik. Så jag sluta mitt jobb och började arbeta på en BREW version av min programvara idé. Efter sex månader av hårt arbete, och ingen inkomst, jag var klar med min BREW program! Jag var redo att överlämna det till Qualcomm för testning.
Det var då jag gjorde en skrämmande upptäckt: Även om mitt program klarat kvalitetssäkring kontroll, Verizon skulle vara tvungna att godkänna försäljning av min programvara - och Verizon kunde ogillar programmet av någon anledning (utöver den uppenbara skäl för att vara kränkande eller i konkurrens med någon annan aspekt av Verizon's företag). Jag hade helt enkelt inte tänka sig denna möjlighet. Allt jag läst om BREW utveckling innebar att utmaningen var att passera kvalitetssäkring provning. Ingenting jag läste nämnde något behov av att ha programvara som godkänts av mobiltelefon tjänsteleverantörer. Jag skulle inte ha blivit förvånad över att mobiltelefon tjänsteleverantörer kan välja att inte sälja kränkande eller skadliga program, men sådana överväganden verkade så oviktigt för mitt projekt att jag inte tycker om den mer allmänna begrepp som mobiltelefon tjänsteleverantörer kan välja att inte sälja vanliga programvaror!
En av mina vänner, som redan hade sålt flera videospel program genom Verizon, frågade en Verizon företrädare om Verizon skulle godkänna min programvara för försäljning på deras nät ... Den Verizon representant sade: ”nej,” eftersom det inte fanns några andra programvaror i den breda genre redan. Min programvara var ett ordförråd handledare (med särskild hänsyn till SAT och GRE standardiserade tester), men Verizon företrädare sade att ordet spel genre var redan ”fullsatt,” trots att det fanns färre än 10 ord-relaterade program totalt i ”Hämta Nu.” Portal, och andra program var mycket olika (t.ex. korsord pussel, ”Scrabble”, ”Boggle”, etc). Mitt program var en teknisk prestation: Det lagras definitionerna av 5000 ordförråd ord, tillsammans med synonymer och antonyms, och ordet betyder grupper (så att frågesporter som skulle vara en utmaning), i ett program som var mindre än 1 MB. Mitt program skulle ha varit unik på marknaden under många månader, och möjligen för ett par år.
Jag var arg, deprimerad, och ekonomiskt bröt. Sex månaders arbete var till spillo, allt eftersom Verizon ville bara ha ett program som var vissa att sälja tusentals exemplar på sin försäljning portal, och Verizon företrädare ansåg inte att programmet hade en hög försäljningspotential.
Här är den viktigaste läxan lärde jag mig från denna bittra erfarenhet: Kontrollera alla delar av en affärsplan innan arbetet påbörjas. (Idealet är att varje del av affärsplanen kan testas flera gånger, av faktiska utförandet av de olika kritiska förfaranden, före och under arbete med att skapa produkten.)
Jag borde ha kontrollerat huruvida det skulle vara sannolika hinder för att sälja mina program innan jag började utveckla programvaran. Jag skulle ha upptäckt att Verizon kan välja att inte tillåta mig att sälja min programvara.
Jag lärde mig en läxa: Undvika situationer där andra människor har förmågan att avgöra huruvida du har tillgång till kunder!