English  Español  Português  Français  Italiano  Deutsch  Nederlands  Svenska  Dansk  Suomi  Norsk  Русский  Polski  Română  Български  Hrvatski  Česky  中国  中國  日本語  한국어  Ελληνική  हिन्दी  العربية 
J2ME разработката на софтуер за клетъчни телефони
(2002)
Colin Fahey
moto_t720_open_lightanddark02.jpg
Motorola T720 клетъчен телефон, показва открито

1. Предупреждение

Този документ е остаряла!  Информацията в този документ може да е валидно и полезно при 2002 години, но много неща са се променили през следващите години!  Този документ трябва вече да се разглежда като интересни исторически рекорд на годината 2002.  Да не се разчита на някаква информация или консултация в този документ.  Всички технически данни в този документ е много остарял. 

Изтегляне на самостоятелно създаден софтуер, самостоятелно създадени изображения, и самостоятелно създадена телефонни сигнала мелодии "(т.е.," пръстен "тонове)," беше сравнително редки и трудни в годината 2002.  За съжаление, шест години по-късно, някои клетъчни телефонни доставчици (включително Apple, която осигурява изключителна софтуер и "пръстен тон" портал за iPhone) все още се налагат ограничения за изтегляне на софтуер, изображения и музика, тъй като клетъчен телефон доставчиците се ползва изключително големи финансови печалби чрез контролиране на тези типове файлове. 

За щастие, клетъчни телефони, като тези, описващи "Android" софтуерна платформа, ще завинаги край на способността на компаниите да създават и използват затворени пазари за такава употреба на клетъчни телефони.  Въпреки че потребителите на драго сърце закупен мобилен телефон услугата планове, които са включени много високи разходи за изтегляне на софтуер, картинки, и музика, това е поради ограничения брой на клетъчните телефонни услуги наличните опции. 

Икономическата динамика, които са активирани някои компании да нарастват и ще доминират на пазара не трябва да се тълкува като имплицитно силно одобрение от страна на потребителите.  Тъй като компаниите започват да доминират, а след това я прави трудно или невъзможно конкурентите за влизане в пазара, доминиращ компании могат да предлагат продукти, които съчетават висока положителна стойност (напр., способността да комуникират навсякъде) с висока отрицателна стойност (напр., високи цени Желателно за софтуер, изображения и музика, всички от които иначе биха били свободно достъпни; по този начин услугата, която добавя отрицателна стойност).  Не потребителят е принуден да купя клетъчен телефон, но няма съмнение, че клетъчен телефон господстващата доставчици постепенно създал условия, които не могат да бъдат считани за "свободния пазар."  Следователно, клетъчен телефон служба пазар е икономически "неефективно" и е прекомерна тежест върху потребителите. 

Надяваме се, изисквания, че клетъчните телефонни услуги радиочестоти бъде на разположение на конкурентни услуги ще се възстанови нормалните пазарни стойности за пренос на данни, така че клетъчните телефонни доставчици отново са сведени до едва носители на данни (т.е., само предоставянето на лента), а не информация или развлечение доставчици ! 

Бизнес за транспортиране на данни трябва да бъдат отделени от дейността на продажба на данни, в противен случай това ще бъде стимул за транспортиране на данни бизнес да блокират конкуренти от продажба на данни чрез същите данни транспортиране канал. 

Видеоиграта конзолата пазар страда от същия проблем.  Производителите на хардуер на конзолата за видео игра, са в бизнеса за създаване на устройства, които може да показва видео игри, но същите тези компании също имат изключителен контрол върху прехвърлянето на софтуера за видеоигрите тези конзоли.  Следователно, не е стимул за видеоиграта конзолата на производителите да блокират конкуренти от продажба на софтуер за видеоигри конзоли.  Ако една видео игра конзола хардуерни производителя, фокусирани върху проектиране и производство на хардуер, които биха могли да бъдат продадени на печалба (вместо на по-значителни загуби, както на X-Box и PlayStation и Nintendo видеоиграта конзоли), а след това на видео игра забогатявам пазар би, и качеството на най-добрите видеоигри ще се подобри драстично, а цената на видео игри ще колапс. 

2. Темите Индекс

(1)
J2ME развитие инструменти
(2)
Проста J2ME програма
(3)
Комплекс J2ME програма
(4)
Sun "безжична Toolkit"
(5)
Предлагането софтуер на интернет сайт
(6)
Изтегляне на софтуер от Интернет сайт
(7)
Изтегляне на съобщения за грешки и монтаж съобщения за грешки
(8)
Създаване, предлагане, както и свалянето "на звънене пръстен"
(9)
Създаване, предлагане и изтегляне изображения
(10)
AT&T клетъчен телефон настройки за конфигурация (за мрежа)
(11)
Връзки с други клетъчни телефони ресурси
(12)
J2ME срещу BREW

3. J2ME развитие инструменти

Този раздел описва как да изтеглите набори, които могат да бъдат използвани за съставяне на J2ME сорс кода в класа на файлове, подходящи за мобилни устройства.  Имайте предвид, че Sun "J2ME Wireless Toolkit," дискутирани по-късно на тази статия, изисква изтеглянето на Java SDK, описани в този раздел. 

3.1 JDK 1.4 (или по-късно)

Това означава, че се нуждаем от конвенционалните Java 2 SDK от Sun.  Свалих и използвани версия 1.4 чрез следната връзка:
http://java.sun.com/j2se/1.4/download.html
Ето какво страницата за изтегляне изглежда така:
java2sdk_download_page.jpg
Стартиране на инсталационната програма.  Инсталацията по подразбиране място ( c:\j2sdk1.4.0_03 ), ако не са в състояние да решава проблемите пътя, които могат да възникнат. 

3.2 Connected Limited Device Configuration (CLDC)

Аз няма да се преструвам да знам какво е това, но аз просто го изтеглили от Sun уеб сайт.
http://wwws.sun.com/software/communitysource/j2me/cldc/download.html
Ето каква е основната CLDC даунлоуд уеб страница изглежда така:
cldc_download_page.jpg
Само 1.0.3 е била налична в момента съм посетили.
За да изтеглите този, че е необходимо да се регистрирате с Sun уеб сайт.  Аз създадох следния профил:
Username:        anon***anon
Password:        nospamplease
Favorite color:  blue
Full name:       Prof. Anon Nospamplease
Свалих следните файлове:
j2me_cldc-1_0_3-fcs-src-b17-winunix-14_sep_2001.zip
I unzipped на следните директории:
C:\j2me
Аз преименува на "cldc-1_0_3-fcs" директория просто:
cldc (т.е.  пълния път е c:\j2me\cldc)

3.3 Mobile Information Device Profile (MIDP)

Аз няма да се преструвам да знам какво е това, но аз просто го изтеглили от Sun уеб сайт.
http://java.sun.com/products/midp/
Ето каква е основната MIDP даунлоуд уеб страница изглежда така:
midp_download_page.jpg
Свалих следните файлове:
j2me_midp-1_0_3-fcs-src-b26-win-19_sep_2001.zip
I unzipped на следните директории:
C:\j2me
Аз преименува на "midp-1_0_3-fcs" директория просто:
midp (т.е.  пълния път е c:\j2me\midp)

3.4 Конфигуриране инструменти

3.4.1 Установяване пътеки

Добавете следните редове към вашия AUTOEXEC.BAT файл:
REM ---- Java Support ----
SET MIDP_HOME=C:\j2me\midp
SET PATH=%PATH%;c:\j2sdk1.4.0_03\BIN;
PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\j2sdk1.4.0_03\BIN;C:\j2me\midp\bin;%PATH%
Тогава силата на тези променливи, за да се презареди чрез изпълнение на партидата досие
cmd_prompt_autoexec_bat.jpg
c:\>  autoexec.bat
Можете също така да създава същите променливи, използвайки Windows среда променлив контролния панел.

Забележете, че избрах да се посочи изрично директория пътеки към моята текущата версия на Java 2 SDK.  Ето защо, ако се ъпгрейд, а след това трябва да модифицирате AUTOEXEC.BAT файл, за да определят новите директории. 

3.4.2 Проверете Jave 2 SDK двоични файлове

След като настройките горе в сила, трябва да бъде в състояние да стартирате инструмент Java програми от командния ред, без да се посочва пълния път до инструмента програми. 

Следната команда ще започнат на клетъчен телефон устройство емулатор: 
cmd_prompt_midp.jpg
c:\>  midp
Следното изображение показва клетъчен телефон устройство емулатор: 
java_midp_launch.jpg

4. Проста J2ME програма

4.1 Напиши Java код

Използване на всеки текстов редактор, едно лице може да напишете код, като за тази HelloMIDlet.java кода на файл:
file_image_hellomidlet_java.jpg
Тук е най-код в обикновен текстов формат:
// File: HelloMIDlet.java
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

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

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

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

    public void pauseApp()
    {
    }

    public void destroyApp( boolean unconditional )
    {
    }

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

4.2 Събиране *.java код, за да *.class

cd  c:\HelloMIDlet
Внимание: След командата трябва да бъде на един ред, но е бил разширен до няколко реда текст само за яснота.
(Текущата директория: C:\HelloMIDlet)
javac
    -target 1.1
    -d .\
    -bootclasspath c:\j2me\midp\classes
    HelloMIDlet.java
cmd_prompt_javac.jpg
Забележка: "-target 1.1" е необходимо да се избягват грешки в бъдеще "preverify" етап.  Очевидно това има нещо общо с проблема с MIDP 1.0.3 подкрепа в JDK 1.4. 

4.3 Preverify да генерира нов файл *.class

cmd_prompt_preverify.jpg
(Текущата директория: C:\HelloMIDlet)
preverify  -classpath  c:\j2me\midp\classes;.  HelloMIDlet
Това създава нов файл *.class в нов subdirectory нарича "output" (по подразбиране).

4.4 Тест на новия файл *.class

cmd_prompt_midp_midlet.jpg
(Текущата директория: C:\HelloMIDlet)
midp  -classpath  c:\j2me\midp\classes;.\output  HelloMIDlet
Тази емулаторът започва на телефона, което показва, че новият "output" директория съдържа някои от необходимите *.class файлове.
Следното изображение показва очаквания резултат.
java_midp_hellomidlet.jpg

4.5 Създаване на нов текстов файл, "manifest.mf" и редактирането на файла

А "manifest.mf" файл е изключително важно да се подготвите действително клетъчен телефон, за да интерпретира съдържанието на *.jar файл.  Ако правилно "manifest.mf" файл не е включено в рамките на *.jar файл, а след това на клетъчен телефон може успешно да изтеглите *.jar файл, но може да не успеят да интерпретират изтегления файл, евентуално отчитане на грешка като "Unsupported Content Type". 
По-долу е пример за прост "manifest.mf" файл.
file_image_manifest_mf.jpg
Тук е "manifest.mf" регистрирали като обикновен текст: 
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
Забележете, че CLDC и MIDP версии са посочени в този файл.  Бъдете много предпазливи и консервативни при промяна на различните полета в този файл.  Ако получите "File Corrupt" грешки, след това се опитайте елиминиране на всички полета, които не са показани в този пример.  Също така, остави полета в реда, в който те се появяват в пример.  Също така, да съкрати всяка област стойност толкова, колкото можеш, и пазят героите ограничени до прости букви, цифри, сроковете, както и тирета.  Някои от клетъчните телефони услуги, както и на клетъчните телефони, може да толерира повече вариант на областта, поръчване и полевите съдържание. 
Внимание: 

Когато "jar" програма се използва за създаване на *.jar файл, и "manifest.mf" файл е посочена като манифест файла, за "jar" програмата пише манифеста файл и мога да добавя повече полета, тъй като създава файл, наречен "MANIFEST.MF" в рамките на изхода *.jar файл.  Следователно, ако "MANIFEST.MF" файл е извлечена от *.jar файла и след това в сравнение с първоначалното "manifest.mf" файл по време на създаването на *.jar, двата файла могат да бъдат различни, с "MANIFEST.MF" досие, съдържащо още няколко полета от оригиналния файл "manifest.mf" . 

Не екстракт "MANIFEST.MF" един файл от *.jar файл и се опитват да формират нова *.jar файл с това явно файл.  Ако екстракт "MANIFEST.MF" един файл от *.jar файл, а след това не забравяйте да премахне всички области с изключение на тези, показани в примера "manifest.mf" файл показани по-горе. 
Забележка:

Икони за програми, очевидно не се появяват на Motorola T720 телефон.  Ето защо аз не описва моя midlet с иконата.  Въпреки това, следните показва как да зададете иконката на програмата в рамките на манифеста файл: 

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

При разработването на клетъчните телефони, които показване на икони за подаване на молбите, Файлово посочите иконата, и добавете икона графичен файл до *.jar файла, като се посочва името на файла сред файл имената на файловете, които се добавят към *.jar файл. 

4.6 Сложи "manifest.mf" файл и *.class файл във файл с *.jar

Следната команда създава *.jar файл.  В *.jar файл ще съдържа определена manifest.mf файл, и ще съдържа *.class файлове, намерени в посочената директория.
cmd_prompt_jar.jpg
Текущата директория: C:\HelloMIDlet
jar  cfm  hi.jar  manifest.mf  -C .\output  HelloMIDlet.class
Комплекс хипотетичен пример за създаване на файл *.jar
Предполагам икона имидж файл (напр.  "icon.png") е да се появи в *.jar файла като "/icon.png".  (Забележка: Program иконите не появява на Motorola T720 клетъчен телефон, но не се появи на други клетъчни типове телефони, и да се появи в MIDP емулатор.) 

Предполагам има директория с име "images" с имидж файлове (*.png формат).  Предполагам тази директория, както и всички от изображения, съдържащи се в директорията, трябва да бъдат достъпни за Java програма от относителната директория /images (такива, че изображението "a.png" ще бъде достъпна чрез път "/images/a.png"). 

Предполагам всички от *.class файлове, произвеждани от preverify команда се съдържат в директория с име "verified".  Например, проверена версия на основното клас, "MyApp.class", ще бъде в "verified" папка, заедно с други класове на програмата.  Всички тези упражнения трябва да бъдат достъпни в главната директория на *.jar файл. 

Следната команда ще създаде *.jar файл, който постига различните цели, посочени в предходните параграфи.  Внимание: командата е била разширена до няколко реда текст тук само за яснота.  При въвеждане на командата в командния ред командата не трябва да съдържа ред паузи, в противен случай командния интерпретатор ще интерпретира въвели текст като множество независими команди. 

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 .
В последната част на командата е трудно да се разбере.  Той има следното значение:  "Смяна на текущата директория, която работи .\verified и след това пуснати всички *.class файлове, намерени в относителната директория '.' (а именно *.class всички файлове в текущата директория работа) в предвид *.jar файл."  Понеже директорията бяха променени преди посочва пътя на класове да поставите в *.jar файл, местните път няма да се появи в относителния път, когато файловете се пускат в предвид *.jar файл. 

Така например, предполагам проверените класове са в следните директории: 

C:\MyApp\verified 

Предполагам има класа файлове като следните: 

C:\MyApp\verified\w.class 

Тогава "-C .\verified ."  се посочва в заповед да се създадат *.jar файл, като се започне от текущата директория на "C:\MyApp", ще доведе до по "w.class" да бъде пусната в главната директория на *.jar файл.  </ E>

Предупреждение: Когато "-C" опция е посочено, че промени в текущата директория работят в този момент за преработка на цялостната последователност от команди с параметри jar команда.  Затова, командния jar могат да се оплакват, че не могат да намерят други файлове, споменати в командния параметри извън "-C" опция.  Ако това се случи, просто да преместите "-C .\verified ."  да бъде окончателно параметрите на общото командване. 

Следните показва многословно продукцията на jar команда. 
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 Създаване и редактиране на нов файл *.jad

А *.jad файл е необходимо, така че клетъчен телефон може да се опише компютърна програма на лице пред лицето реши да изтеглите програмата.  В *.jad файл също така предвижда някои околни *.jar от само себе си. 
file_image_hi_jad.jpg
Пример *.jad файл, Описание на *.jar файл
Ето пример hi.jad файл в обикновен текстов формат:
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
Съществуват програми, които могат да генерират *.jad файл, което я прави лесна за актуализиране на "MIDlet-Jar-Size:" поле всеки път, когато *.jar файл е променен (и размерите му промени).  Ако търсите в Интернет ще намерите полезни J2ME програми. 

Ако размерът област не уточни точния байт *.jar общият размер на файла, то следната грешка може да се появи след една успешна даунлоуд към мобилен телефон: "Download Failed" (Изтегляне неуспешно). 

За Motorola T720 клетъчен телефон, следното съобщение за грешка може да се използва за inidcate невалидни полета в *.jad файл, или евентуално невалидни полета в образуваните MANIFEST.MF досие в рамките на *.jar файл: "Failed: File Corrupt" (неуспешно: повреден файл). 
Забележка: Ако *.jar файл се намира в същата директория, както *.jad съответния файл в Интернет Web сървър, тогава *.jad файл може просто да се посочи името на файла на *.jar файл, без да се посочва пълния URL, както в следния пример: 

MIDlet-Jar-URL: hi.jar 

При изтеглянето на тези файлове от Интернет Apache уеб сървър за Motorola T720 клетъчен телефон, че е приемливо да не включват пълно URL.  Въпреки това, когато тези свалянето на файлове от Интернет Yahoo!  уеб сървър за Motorola T720 клетъчен телефон, опит за изтегляне ще липсват, освен ако не е пълен URL път към *.jar файл е определен в рамките на *.jad файл, както е в следния пример: 

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

Не зная причината за този проблем, и аз знаем, че този проблем не засяга други клетъчни телефони (мобилен телефон или доставчици на услуги).  Да е необходимо да посочите пълното URL за *.jar досие в рамките на *.jad файл е очевидно създава неприятности, защото преместване на файлове в различни места на сървър, ще изисква промяна на информацията във всички *.jad файлове.  Все пак, като се посочва пълната URL може да направи *.jad за някои по-достоверни клетъчните телефони, клетъчни телефони и на някои доставчици на услуги. 

4.8 Тествайте *.jar файл и *.jad файла с изпълнение на програмата

Следните изпълнява класа намерени в *.jar файл, описан от *.jad файл. 
cmd_prompt_midp_jar_jad.jpg
(Текущата директория: C:\HelloMIDlet)
midp  -classpath c:\j2me\midp\classes;.\hi.jar  -descriptor hi.jad

4.9 Препратки за J2ME, MIDP, CLDC развитие

Голяма част от това, което тук може да се намери в много други Интернет сайтове.  Струва ми се обаче, поправени някои грешки, намерени в други Интернет сайтове и добави липсващата информация, и представи опита на някой, пълни се опитвам да направя това.  Тук са много информативни линкове, че ми помогна да започнете: 
http://wireless.java.sun.com/midp/articles/getstart
http://wireless.java.sun.com/midp/articles/setup

5. Комплекс J2ME програма

5.1 Въведение

Простите програма, представени в предишния раздел на този документ има само един източник код файл и програмата прави почти нищо и следователно не е добър пример за клетъчен телефон програмиране. 

Моят приятел Sam Robertson написа интересен J2ME програма, която учи човек да играе картата играта "Blackjack" (наричан също "21").  Играчът е представен с "дилър карта," а играча двойка карти, и играчът трябва да реши какво да направите: "атмосфера, удари, двойно-надолу," или "разделени." 

Тази програма разполага с шест изходния код файлове.  Програмата отговаря на приноса на потребителите, и не прости рисунки и текст актуализации. 
sbj_screen_on_phone.jpg

5.2 Източник код

Кликнете върху връзката по-долу за да получите код, и *.jad файл, "manifest.mf" файла и команден файл, всички в един удобен ZIP файл.
sbj.zip
Източник код, съдържаща се в досие ZIP
6090 bytes
MD5: bf3922035b7a4eef24e107d03b7524c9
Извадка на произволна директория, но ако можете да извлечете "c:\" под Windows, следният пример дискусията ще бъдат още по-близо до реалните ви положение.
sbj_directory_files.jpg
Добивна sbj.zip да "c:\" създава директория "c:\sbj"

5.3 Манифест файла

Файл: "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 Партидата файл, за да построи програма

Следните партида файл е груб, но той служи като илюстрация на това как може да се стартира с писмено свой собствен партиден файл, за да изгради своя J2ME програма.  Този пример партида файл прави следното:
(1) Изтрийте директорията, съдържаща старата *.class файлове; 
(2) Изтрийте директорията, съдържаща стари проверени *.class файлове; 
(3) Направете "упражнения" продукция указател; 
(4) събират всички *.java източници в *.class файлове, с мощност ще "класовете" указател. 
(5) Направете "проверена" продукция указател; 
(6) Preverify всички класове "в" часовете директория, както и турите проверените класове в "проверените" указател. 
(7) Създайте *.jar файла и добавете mainfest файл, и всички класове в "проверените" указател; 
*(8) Тест програмата чрез пряко preverified класове; 
*(9) Тест програмата чрез *.jar и *.jad файлове; 

(*...  Тези стъпки са извадени от употреба (като бяха коментирани) в моята партида файл). 
sbj_build_sbj_bat_file.jpg
Партидата файл "build_sbj.bat" за изграждане на програмата
Тук е същото ("build_sbj.bat") файл в обикновен текстов формат:
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 Сграда от командния ред

Тук е резултат от стопанисването на "build_sbj.bat" команден файл в командния ред:
sbj_build_command_prompt.jpg
Изпълнение на "build_sbj.bat" партида файл
Имайте предвид, че предупредителни съобщения за "rmdir" и "del" операции просто посочи, че има за какво да премахнете. 

Можете да видите нови директории (т.е.  "classes" и "verified") и новата *.jar файл, който води от надпреварата на партидата досие
sbj_new_files_after_build.jpg
Източник код файлове и нов файл, генериран

5.6 *.jad файл

За да се осигури sbj.jar файл, ние трябва да създават и редактират файлове да имат sbj.jad правилния размер *.jar в съответното поле:
Файл: 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
Всяко лице може да се наложи да добавите пълния URL към *.jar файл, когато *.jad файл е поставен на интернет сайт - но аз открих (чрез експеримент), че аз бях в състояние да избегне споменаване на пълна URL (т.е.  само определихте *.jar името на файла от само себе си).  Въпреки това, въвеждането на пълната URL, но аз исках да знам какво се спазват.

5.7 Обобщение

Като източник на множество файлове във вашия проект е обичайно и в този раздел ще даде на суровия илюстрация на изграждане на множество класове, следвана от опаковки и изпълнение. 

Моля, вижте следващия раздел по отношение на използването Sun Wireless Toolkit, което прави изграждането на заявления много по-лесно. 

6. Sun "Wireless Toolkit (version 1.0.4_01)"

6.1 Въведение

Sun предлага удобна среда за развитие на строителството и пакетирането J2ME програми: "Java 2 Platform Micro Edition (J2ME) Wireless Toolkit (version 1.0.4_01)". 

(Внимание: Трябва да изтеглите Java 2 SDK 1.4, както е описано в по-ранна секция, за да използвате тази Toolkit.  Направете това сега, ако още нямате тази версия на Java 2 SDK.) 

Отидете на следния интернет сайт, за да изтеглите Toolkit: 

http://java.sun.com/products/j2mewtoolkit/ 
Внимание!
 

Не кликвайте върху връзката "2.0 Beta 1 English" (в момента в началото на страницата даунлоуд опция), ако сте прави Motorola T720 развитие - защото тази версия има някои MIDP-2.0 неща и се наоколо, това може да бъде главоболие. 
j2me_wireless_toolkit_2_0_download_page.jpg
Да не свалите тази версия!  ("2.0 Beta 1 English")
Опитах се тази версия, и евентуално да имаш код, за да съставят с много разхвърлян промени в настройките, но след всички усилия, имам сигурност изключение, когато се опитах да извърша.  Да не се притеснявам! 
Изтеглете "1.0.4_01 English" версия.  Ето какво страницата за изтегляне изглежда така: 
j2me_wireless_toolkit_1_0_4_01_download_page.jpg
В Sun J2ME Wireless Toolkit (version 1.0.4_01) страницата за изтегляне
j2me_wireless_toolkit_1_0_4_01_download_page2.jpg
В Sun J2ME Wireless Toolkit (version 1.0.4_01) FTP списък със сайтове
Това ще изтеглите следния файл: "j2me_wireless_toolkit-1_0_4_01-bin-win.exe" 
Изпълнение на програмата за инсталиране на вашата система.

6.2 J2ME Wireless Toolkit: Стартиране Toolbar

След Toolkit е инсталирана, можете да го стартирате от "Start" (Start) меню система:
j2me_wireless_toolkit_1_0_4_ktoolbar.jpg
Стартиране на лентата с инструменти на програмата
Можете да получите достъп и до MIDP-1.0 документация чрез "Documentation" елемент в тази Start (Start) меню.
j2me_wireless_toolkit_2_0_wtk20_docs_api_index_html.jpg
J2ME Wireless Toolkit (version 1.0.4_01) документация

6.3 J2ME Wireless Toolkit: Създаване на проект и изграждане

j2me_wireless_toolkit_1_4_ktoolbar_window.jpg
В лентата с инструменти е готова.  Кликнете "New Project..."  да създадете нов проект.
j2me_wireless_toolkit_1_4_ktoolbar_new_project.jpg
New Project: Въведете име на проекта (става JAR име и името на нов проект директория), и напишете името MIDlet клас (клас, получен от MIDlet, по същество основни класа на вашето приложение). 
j2me_wireless_toolkit_1_4_ktoolbar_project_created.jpg
Toolbar: Проект създаден.  Забележете, че на конзолата ви казва къде да сложиш *.java изходни файлове и др  (напр.  "c:\WTK104\apps\sbj\src" и т.н.) 
j2me_wireless_toolkit_1_4_ktoolbar_project_settings.jpg
Кликнете върху "Settings..."  на лентата с инструменти да получите този проект настройките на менюто. 
Незачитане на "MIDlet-Jar-Size" поле (със стойност "100" байта), за сега.  Ние евентуално ще предизвика точната сума, за да получите комплекта. 
j2me_wireless_toolkit_1_4_ktoolbar_project_midlet_settings.jpg
Кликнете върху раздела MIDlets на проекта диалоговия настройки.
Кликнете на единствения ред в таблицата ("MIDlet-1"), за да подчертаят и я изберете.  След това кликнете на "Edit" бутон. 
j2me_wireless_toolkit_1_4_ktoolbar_project_no_icon.jpg
Изчистете "Icon" област, ако не разполагате с *.png файл, за да тури в своя *.jar файл. 
Направете следното: 

(1) Project --> Clean: Премахва всички *.class файлове;
(2) Build : Builds *.class всички файлове и preverifies;
(3) Project --> Package --> Create Package : *.jar произвежда и *.jad
j2me_wireless_toolkit_1_4_ktoolbar_clean_build_create_package.jpg
В резултат на изграждане на *.jar и *.jad
Когато направите тези три стъпки, в резултат *.jar и *.jad незабавно са готови за изпълнение в местното емулатора, или за незабавно разгръщане на вашия интернет сайт за други да изтеглите "над въздушната" (OTA).  В *.jar големина област в *.jad файл ще бъде правилен.  Да не забравите да направите крачка (3) всеки път, когато изгради! 

Сега можете да пробвате, като натиснете "Run" (Run) бутон. 
j2me_wireless_toolkit_1_4_ktoolbar_project_launch.jpg
j2me_wireless_toolkit_1_4_ktoolbar_project_running.jpg
Натискането "Run" за проекта чете *.jad включен към емулатора.  Можете да изберете конкретната MIDlet да стартира (обикновено само един). 
Просто копирате *.jar и *.jad файлове от определени места (който се отчита от лентата с инструменти на конзолата прозореца по време на изграждането на проекта), като:
(От прозореца на конзолата:)
Wrote c:\WTK104\apps\sbj\bin\sbj.jar
Wrote c:\WTK104\apps\sbj\bin\sbj.jad
Сложи тези файлове директно на своя интернет сайт, без промяна, и тя трябва да работи.  Ето какво видях на моя мобилен телефон, след изтеглянето на този състав "през въздушни" прилагането (OTA)
sbj_screen_on_phone.jpg
Sam Robertson's Blackjack Trainer (sbj.jar) изпълнение на моя мобилен телефон

7. Предлагането софтуер на интернет сайт

7.1 Уверете се, че интернет уеб сървър, уточнява MIME типове за *.jar файлове и *.jad файлове

Ако имате Apache интернет уеб сървър, Вие трябва да създадете файл с име ".htaccess" във вашия уеб сайт главната директория.  В ".htaccess" файл ви дава възможност да погазват Apache конфигурация, като добавяте или първостепенни файл MIME видове.  Вие трябва да добавите уточни MIME вида, съответстващ на *.jar файлове и *.jad файлове, както е показано в следния текст файл: 
htaccess_image.jpg
Моите собствени ".htaccess" файла за Apache интернет уеб сървър.  Забележка: нарекох този файл ".htaccess.txt" само, за да направят лесен за редактиране на файла, когато използвате Windows операционна система.  Името на файла трябва да бъде променено на ".htaccess" преди файл може да се използва с Apache интернет уеб сървър. 
Тук е моят прост .htaccess регистрирали като обикновен текст:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
Очевидно, създаване или промяна на този файл, води до незабавна промяна на Apache Server поведение.  Предполагам че Apache Server проверки промяна датата и часът на ".htaccess" файл при всяка нова сделка, входящи и сървъра отново се зареди този файл, ако модификацията датата и времето се е променила. 

Ако имате различен вид на интернет уеб сървър, Вие трябва да определите как да се уточни MIME типове, а ти трябва да гарантират, че *.jar файлове и *.jad файлове са възложени на съответните MIME видове. 

Ще разбера дали MIME видове не са създадени на клетъчен телефон, ако откаже да изтеглите файл *.jad и доклади на следните грешка: 

"406: Not Acceptable" 

7.2 Опционално предоставя връзки към *.jad файл в HTML или WML документи

В Motorola T720 J2ME клетъчен телефон с AT&T услуга е в състояние да си изтеглите файл *.jad пряко, чрез въвеждане на URL на *.jad файл в клетъчни телефона.  Това е вероятно да работят за други J2ME клетъчните телефони с други клетъчни телефонни услуги. 

Въпреки това, той може да бъде по-удобен за хора, за да изтеглите файл *.jad, като изберете линка HTML в рамките на един документ или в рамките на WML документ.  (Забележка: WML вече е остаряла.  Повечето клетъчни телефони, вече могат да интерпретират HTML.) 
file_image_hi_html.jpg
Прост HTML документ с линк към файла *.jad
file_image_hi_wml.jpg
Прост WML (WAP) страница с линк към файла *.jad  (Забележка: WML вече е остаряла.  Повечето клетъчни телефони, вече могат да интерпретират HTML.) 

8. Изтегляне на софтуер от Интернет сайт

Следните изображения показват точната последователност от действия, го направих за да изтеглите и изпълнява MIDlet разработени и разгърнати, както е описано в предходните раздели горе.  Тези образи са снимки на екрана на моя мобилен телефон. 
t720_screens_download_program.jpg
(1) Основен екран: Когато отворите телефона, които виждате основните екрана.  Натиснете бутона Център за да преминете към главното меню. 
(2) Main Menu: Реагирайте до елемента "WebAccess". 
(3) WebAccess: Реагирайте до елемента "Go To URL". 
(4) Enter URL: Вид на URL на *.jad файла (или на HTML документ, или на WML документ). 
(5) Details; Тази информация се обработи от *.jad файл.  Прес DOWNLD да изтеглите *.jar файл. 
(6) Download Complete; Изчакайте това съобщение, за да изчезне; 
(7) Installing; Изчакайте това съобщение, за да изчезне; 
(8) xxxx bytes transferred; Изчакайте това съобщение, за да изчезне; 
(9) Installed; Изчакайте това съобщение, за да изчезне; 


Когато WebAccess меню се появява отново, след като програмата е инсталирана, просто излизане всеки меню, за да се върнете към основния екран. 
t720_screens_start_program.jpg
(1) Основен екран: Когато отворите телефона, които виждате основните екрана.  Изберете опцията "Games & Apps" чрез главното меню, или натиснете надолу курсора на главния екран. 
(2) Java Powered: Изчакайте за този екран, за да изчезнат. 
(3) Games & Apps: Изберете елемента с името на вашата програма! 
(4) Уау!  Успешното изпълнение на вашата програма! 
Продължителността на програмата изгледи за клетъчен телефон е много подобна на външен вид в рамките на емулатор.

9. Изтегляне на съобщения за грешки и монтаж съобщения за грешки

9.1 Motorola T720 (J2ME) съобщения за грешки

Следните грешки съобщения са само от значение за Motorola T720 (GSM/J2ME) клетъчен телефон. 

9.1.1 "Download Failed"

Причина # 1
Всяко досие (HTML, JAD, JAR, MID, GIF) над 1644 байта ще направя тази грешка, за някои Интернет Силите и сървъри.  Ето кратък списък на Силите и сървъри: 
Host / Server                                               Error
===================================================    =================
Apache                                                       No
Microsoft Personal Web Server (direct from your PC)          No
Earthlink (Apache)                                           No
Yahoo! (custom server)                                       Yes
Проблемът се дължи на недостатък в Motorola T720 GSM/J2ME фърмуер, който причинява свалянето на файлове във фрагменти на неуспех.
Единственото решение е очевидно, за да превключите интернет уеб сървър или Силите тип.  Други видове клетъчен телефон не разполагат с този проблем. 
Причина # 2
В "MIDlet-Jar-Size:" областта на *.jad файл, не се посочва точното байт Общо *.jar на съответния файл.

9.1.2 "Failed: File Corrupt"

Причина # 1
В *.jar файл използва API функции, които не са достъпни за конкретни клетъчен телефон. 

Така например, MIDP 2.0 функции не са достъпни на Motorola T720 GSM/J2ME клетъчен телефон (което само MIDP 1.0 функции).  Програмата може да изпълнява в рамките на емулатор, но може да не се изпълнява по мобилен телефон. 

Разтворът е да потърсите MIDP 2.0 функции в сорс кода и да се замени с MIDP 1.0 функции, или премахване на характеристики, които изискват MIDP 2.0 функции. 
Причина # 2
В "manifest.mf" файлове, използвани за създаване на *.jar файл (чрез "jar" ютилити) съдържа грешки. 

Уверете се, че "manifest.mf" файл е със следните версии на CLDC и MIDP: 
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0
Цялата "manifest.mf" файл трябва да изглежда почти точно като следните: 
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
Всеки ред от текста в "manifest.mf" файл, включително и последният ред на файла трябва да завършва с "carraige завръщане" (CR; 13; 0x0d) характер, последван от "ред емисия" (LF; 10; 0x0a) характер. 

Единствените области на "manifest.mf" файл в собствената си версия на файла, който трябва да се различава от примера е показано тук са първите три области, посочени в пример.  Крайната три часа полета трябва да бъдат точно съвпада с примера, а крайната два знака на файла трябва да се "върне и превоз ред емисия" след окончателното област. 

Тук са възможни проблеми във вашата версия на "manifest.mf" файл: 
(1) Вашият "manifest.mf" файл съдържа символи, които не са ASCII знака; (Виж графика на ASCII символа; всеки знак извън 0 през 127 интервал е невалиден); 
(2) Вашият "manifest.mf" файл не разполага с "ред емисия" (LF) характер след всеки "превоз завръщане" (CR) характер в края на всеки ред; 
(3) Вашият "manifest.mf" файл е невидимо интервали или табулатори в края на всеки ред пред (CR)(LF) линия прекратяване; 
(4) Вашият "manifest.mf" файл съдържа "Manifest-Version:" линия; 
(5) а последният ред на вашата "manifest.mf" файл, не се завършва с ред (CR)(LF) прекратяване, а вместо просто да стигне до край на файл; 
(6) Вашият "manifest.mf" файл не разполага с точни области и точния ред на полета, както е показано в горния пример; 
(7) Вашият CLDC версия не е точно 1.0 или вашият MIDP версия не е точно 1.0; 
(8) Вашето име е продавач на знака, които не са ASCII символи (например, не се допускат Unicode символи); 
(9) Вашият "manifest.mf" файл не разполага с място след втората запетая в "MIDlet-1:" линия; 
Може би някои от случаите, изброени по-горе не действително предизвика проблеми в продължение на много клетъчни телефони, но елиминирането на всички от изброените по-горе случаи може да се даде възможност за изтегляне за успех.  След като изтеглянето е успешна, може да експериментирате с варианти на "manifest.mf" файл, за да разгледате какви други неща можеш да направиш без да причиняват даунлоуд грешки.  Когато "manifest.mf" файл е променено, че е важно да се уверите, че свалянето програмата продължава да работи за всички целеви клетъчните телефони, клетъчни телефони и доставчици на услуги.  Някои телефони и услуги са по-малко гъвкави, отколкото други. 

"manifest.mf" Когато даден файл се добавя към *.jar файл чрез jar програмата, jar програмата създава нова версия на манифеста файл в рамките на *.jar файл.  Образуваните версия на манифеста досие в рамките на *.jar файл с име "MANIFEST.MF".  В jar програмата може да добавите полета за този файл, които не съществуват в "manifest.mf" файлове, предоставени от програмист.  Не екстракт "MANIFEST.MF" един файл от *.jar файл, освен ако не са готови да премахнат някои полета и да направи оставащите области, изглежда точно като например "manifest.mf" файл показани по-горе. 

9.1.3 "Unsupported Content Type"

Причина # 1
На клетъчен телефон не може да приеме MIME вида, съобщени от отдалечен сървър за конкретен файл. 

Така например, JPG имидж файлове, които не са подкрепени от Motorola T720 и ще направя тази грешка.

Тази грешка може да възникне, ако MIME тип поддържан файлов тип (например, GIF, MID, JAD, JAR) не е коректно съобщени от сървъра.  Човек трябва да бъде много внимателен да съобщя точната MIME тип подкрепените видове файлове. 
Причина # 2
Файлът кеш за самата мобифонът трябва да бъде изчистена (напр.  Browser Settings -> Clear Cache). 

Ако наскоро сте добавя MIME видове към отдалечен сървър, след което се опитал да изтеглите файл, който преди това не успя да инсталирате поради неправилна или липсваща MIME вид, след което файлът кеша на мобилен телефон може да бъде пречка за изтегляне на файла, отново с правилното MIME тип. 

Възможно е също така, че дистанционното е бил модифициран файл, и че кеширана версия е дефектна и предотвратяване на ремонтирано файл вариант да се изтеглят като замяна. 

Укрепване капацитета на кеша на браузъра на мобилен телефон трябва да гарантират, че последващо изтегляне ползите от последните сървър конфигурация (например, новите MIME Settings) и отдалечените файлове актуализации. 
Причина # 3
[От Motorola документация: http://developers.motorola.com/developers//wireless/global/emea/other/UCT.html]
Как да се избегне "Unsupported Content type" грешки в WAP 

Ако получите съобщение за грешка в WAP каза: Unsupported Content type, това не е задължително дължат на съдържание от типа на настройката.  Много WAP страници съдържат специални символи, например шведски (å ö ä) и с цел да ги да показват правилно трябва да се уточни, която определя характера, който използвате.  С цел да се уточни, която определя характера се използва по WAP страница, променят заглавната Content-Type в отговор на сървъра включва определен характер, например "Content-Type: text/vnd.wap.wml; iso-8859-1".  Когато потребителят получава отговор от сървъра, трябва да имате всички необходими информация, за да покаже съдържанието правилно. 

Въпреки това, има проблем с използването на този подход.  Всички телефони посочват на шлюза, които знакогенератор Те поддържат с помощта "Accept-Charset" в искането заглавната част.  Според HTML спецификации, това трябва да бъде сравнена с определен характер, посочени в отговора на сървъра, и ако те не съвпадат, грешката Unsupported Content type трябва да се генерира. 

За да бъде по-сложен проблем, някои WAP портали не е грижа за сравняване на определен характер, подкрепяни от поискаха устройство, което съдържание ще се показва правилно на тези устройства.  Друго усложнение е, че низа се посочва случай характер комплект е безчувствен, но някои WAP портали третират като случай чувствителните струни. 

Всички заедно, там ще бъдат много различни резултати в зависимост от това какво устройство ползвате, които WAP портал, който използвате и какви сървъра отговор. 

Единственият начин да се уверите, че вашата съдържание ще бъдат показани правилно е да се провери какво винаги определя характера е приета от клиента и трансформира своя отговор на този символ в стаята, преди да го изпратите. 

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

Причина # 1
Имаш Verizon телефона! 

Verizon не дава възможност на клиентите си за изтегляне на изображения (GIF), пръстен тонове (MIDI), или програми, от произволни интернет уеб сървъри.  Едно трябва да използват своите "Get It Now" услуга, или да използвате USB кабел и "Get Around 'Get It Now' (GAGIN)" софтуер. 

Решение: Просто чакам за конкуренцията в "свободния пазар, да" премахнат "затворени платформи."  Цялата технология може да е остарял с времето този успее, но това е, което се случва, когато компаниите са ръководят от алчност сами. 
Причина # 2
Съобщението за грешка, показва, че MIME тип, свързани с файлово разширение (например, .gif, .mid, .jar) на файлове се изтеглят не е бил определен от Интернет сървър.

Ако имате Apache интернет уеб сървър, например, тогава трябва да модифицирате ".htaccess" един файл, добавяне на следните редове:
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"

Причина # 1
Сървърът хостинг на файлове се изтеглят не уточни MIME за този тип файл (напр.  GIF, MID, JAR).  По този начин, клетъчен телефон предполага, че файлът е обикновен текст.  Също така, клетъчен телефон може да има лимит за размера (в байтове) на текстови файлове, които са по-малки, отколкото на ограничението за големината (в байтове) на двоичен файл (например, GIF, MID, JAR).  Следователно, двоичен файл тълкува като текстов файл може да надхвърля максималния позволен размер на текстов файл, и по този начин ще предизвика грешката. 

Ако имате Apache интернет уеб сървър, например, тогава трябва да променя едно ".htaccess" файл, добавяне на следните редове:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid
Причина # 2
Очевидно тази грешка може да възникне дори и отдалечени сървъра е правилното MIME видове установени.  Аз все още не са определени, когато тази грешка възниква, вместо на "Download Failed" за тази ситуация. 

Очевидно, за Motorola T720 GSM/J2ME клетъчен телефон не може да обработи аспект на HTTP 1.1 спецификация, която позволява файлове, за да се разбиват в фрагменти, които изискват множество "GET" искания. 

Когато използвате Motorola T720 GSM/J2ME клетъчен телефон за изтегляне на файлове от определени интернет уеб сървър типове, друг файл (например, HTML, JAD, JAR, MID, GIF)-големи, отколкото 1644 байта ще направя тази грешка.  Ето кратък списък на интернет уеб хостинг доставчиците и дали или не в интернет уеб хостинг доставчик предизвиква проблем за Motorola T720 GSM/J2ME клетъчен телефон:
Host / Server                                               Error
===================================================    =================
Apache                                                       No
Microsoft Personal Web Server (direct from your PC)          No
Earthlink (Apache)                                           No
Yahoo! (custom server type)                                  Yes
Проблемът се дължи на фърмуера в Motorola T720 GSM/J2ME клетъчен телефон, което засяга способността му да изтеглите файловете в фрагменти. 

Единственото очевидно решение, при свалянето на Motorola T720 GSM/J2ME клетъчен телефон, е да се избегнат някои интернет уеб хостинг сървър типове.  Повечето други клетъчни типове телефони не разполагат с този проблем, така и този проблем може да бъде безопасно игнорирани. 

9.1.6 "Connection unsuccessful.  Try again later."

Причина # 1
Тази грешка няма нищо общо с Интернет сървър, на който се намира исканата файл. 

Ако получите тази грешка, аз Ви предлагам да направите следните неща: 
(1) Изчистете кеша на браузъра; 
(2) Ясно браузъра история; 
(3) Изключете телефона; 
(4) Премахване на батерията; 
(5) изчакайте няколко секунди; 
(6) Поставете батерията обратно в телефона; 
(7) Мощност на телефона; 
(8) Опитайте отново изтеглянето; 
"Connection unsuccessful.  Try again later.  съм получил съобщение за грешка в продължение на няколко дни след първия закупил мобилен телефон.  Тогава, чрез случаен шанс, аз се отстраняват батерията.  Когато се постави обратно батерията на клетъчния телефон, аз веднага имали достъп до Интернет. 

Получих тази грешка няколко пъти през следващите шест месеца, а процедурата по-горе е възстановен достъпът до Интернет всеки път.  Аз не съм се определи кои стъпка от процедурата може да се окаже най-важното, но аз вярвам, че просто да извадите батерията и поставянето на батерията обратно към мобилен телефон може да бъде достатъчно. 

По мое мнение, това съобщение за грешка е твърде неясна.  Защо беше неуспешен опит да се свърже?  Беше клетъчен телефон услугата на мрежата твърде зает?  Беше клетъчен телефон услугата "Gateway" сървъра не функционира?  Дали ми клетъчен телефон не получават достатъчно, или предаване на радио силата на сигнала?  Кога ще е добър момент да се опитаме изтеглянето отново?  Десет секунди от сега?  Един час от сега?  След една седмица от сега?  Съобщението за грешка, би било по-полезно, ако бяха по-специфични за причината на проблема и ако са били по-специфични за възможно решение. 
Причина # 2
Ако ви свърши "Master Reset", или ако никога не са имали възможност за достъп до Интернет, а после проверява мрежата настройките на клетъчен телефон.  За пример за настройки на мрежата (за Motorola T720 GSM/J2ME клетъчен телефон, за AT&T служба в Los Angeles, California област), вижте раздела, определен със следния линк: 
AT&T клетъчен телефон настройки за конфигурация (за мрежа)

10. Създаване, предлагане, както и свалянето "на звънене пръстен"

10.1 Създайте или придобие MIDI файл (*.mid)

Вие можете да създавате или да придобие MIDI звук файл (*.mid) от всеки източник.  Намерих тема музика за телевизионно шоу "Knight Rider" (1982-1986) в MIDI формат (например, "knightrider.mid") с просто търсене в Интернет. 

Следните образа ти дава някаква идея за това как MIDI файл се появява в MIDI редактор.  Не е необходимо да имаш MIDI редактор, за да получите музика на телефона си.  Можете да получите MIDI съществуващ файл (*.mid) от всеки източник.  Въпреки това, можете да използвате MIDI редактор по ваш избор да създадете свой собствен оригинален полифонична музика. 
home_studio_midi_knight_rider.jpg
Cakewalk Home Studio: играеш "knightrider.mid"

10.2 Уверете се, че вашата интернет уеб сървър знае MIDI MIME тип

Ако имате Apache интернет уеб сървър, например, тогава трябва да променя едно ".htaccess" файл, добавяне на следните редове: 
AddType audio/midi mid
В ".htaccess" файл ще се определят или заместите MIME видове, посочени от сървър за файлове от различни типове (обикновено обозначени с файлови разширения, като например .MID, .GIF, .JAR). 

Ако вече сте добавени различни видове MIME за други типове файлове, вашата пълна ".htaccess" файл може да наподобяват следния текст:
AddType text/vnd.sun.j2me.app-descriptor jad
AddType application/java-archive jar
AddType text/vnd.wap.wml wml
AddType audio/midi mid
Очевидно, създаване или промяна на този файл, води до незабавна промяна на Apache Server поведение.  Предполагам че Apache Server проверки промяна датата и часът на ".htaccess" файл при всяка нова сделка, входящи и сървъра отново се зареди този файл, ако модификацията датата и времето се е променила. 

Ако имате различен вид на интернет уеб сървър, Вие трябва да определите как да се уточни MIME типове, а ти трябва да гарантират, че *.jar файлове и *.jad файлове са възложени на съответните MIME видове. 

Ще разбера дали MIME видове не са създадени на клетъчен телефон, ако откаже да изтеглите файл *.jad и доклади на следните грешка: 

"406: Not Acceptable" 

10.3 Сложи MIDI файл (*.mid) с вашия Интернет сървър

Аз копирани MIDI един файл с име "kr.mid" в главната директория на моята интернет уеб сървър.  Можете да използвате софтуера като "Filezilla" да направи трансфер FTP просто и удобно. 

10.4 Изтеглете MIDI файла на вашия мобилен телефон чрез вашия телефон услугата Интернет услуги

За Motorola T720 GSM/J2ME клетъчен телефон, изтеглянето на един MIDI файл започва с "WebAccess" меню.  Избирането "Go To URL", последвано от въвеждане на URL на MIDI файл, започва изтегляне.  Например, аз напечатани в следните URL:
http://www.colinfahey.com/kr.mid
Ако изтеглите е успешно, и ако използвате Motorola T720 cellular phone, ще се даде възможност за съхранение на файлове на вашия мобилен телефон.  Когато решите да се съхранява файла, ви се предоставя възможност просто да съхранявате в комплект пръстен на звънене или вместо определяне на файл, за да бъдат текущата пръстен тон (което също, като страничен ефект, съхранява във вашия набор от пръстена на звънене) . 
Следните изображения обобщи процеса на изтегляне на файлове и да играем MIDI за Motorola T720 GSM/J2ME клетъчен телефон.  Други J2ME позволи клетъчните телефони, с други клетъчни телефонни услуги, които могат да имат подобни даунлоуд процедура.  Ако вашият клетъчен телефон мобилен оператор е Verizon, то вие сте изложени на късмет; никой от това ще работи, и че трябва да отида и си купя "Android" телефона, за да унищожи "затворен телефон" пазар! 
t720_screen_midi_download.jpg
(1) Основен екран: Натиснете съответния бутон, за да покаже основното меню. 
(2) Main Menu: Отидете в "WebAccess" елемент. 
(3) WebAccess: Отидете в "Go to URL" елемент. 
(4) Enter URL: Вид на URL на MIDI файл (*.mid) на интернет уеб сайт. 
(5) Connecting: Изчакайте изтеглянето да започне.  (Ако сте получили "406: Not Acceptable" съобщение за грешка, след това интернет уеб сървър не присвоите подходящ MIME тип MIDI файлове (*.mid)).) 
(6) Downloading: Изчакайте изтеглянето да приключи. 
(7) Download Complete: Изчакайте за този екран, за да изчезнат. 
(8) MIDI Playback: The MIDI файл започва да свири веднага.  Натиснете бутона меню да отидете до Tone Menu, и продължете към стъпка (9), или натиснете бутона "STORE" и преминете към стъпка (12). 
(9) Tone Menu: Вие имате възможност да играеш ... 
(10) Tone Menu: Вие имате възможност за получаване на информация. 
(11) Details: Тук виждаме размера в байтове. 
(12) Store Options: От стъпка (8) можем да "STORE" натиснете бутона, за да стигна до това меню.  Имате възможност да съхранявате в паметта на колекция от мелодии.  Удари "SELECT" до магазина. 
(13) Stored: The MIDI мелодия е било складирано. 
(14) Total Bytes Transferred: Това е просто съобщаване на броя на байтове изтеглен, така че те не са изненадани от вашия мобилен телефон предстоящите услуга Бил! 

10.5 Свиря на MIDI файл по всяко време на мобилен телефон

Можете да пуснете MIDI съхраняват файлове по всяко време по своя клетъчен телефон, и можете да използвате MIDI регистрирали като пръстен звук.
t720_screen_midi_playback.jpg
(1) Основен екран: Натиснете съответния бутон, за да преминете към главното меню. 
(2) Main Menu: Отидете "Media Center". 
(3) Media Center: Отидете "My Tones". 
(4) My Tones: подчерта тон започва да свири веднага.  Можете да промените името на "EDIT" опция.  Натискането на бутона за менюто ви дава други възможности. 

10.6 Задайте пръстен стил да се използва MIDI файл

Отиди меню чрез следните екрани:

(1) Основен екран 
(2) Main Menu 
(3) Ring Styles: Прес "SELECT" 
(4) [Silent, Soft, Loud] Detail: Прес "CHANGE" 
(5) Calls: [current ring style/tune]: Прес "CHANGE" 


Преминете въпреки че списъкът на ринга стилове (звук, вибрация стилове, постоянен пръстен мелодии и т.н.), и най-отдолу ще видите вашия изтеглили мелодии.  Просто натиснете бутона "SELECT" да направите вашия нов пръстен мелодия активни! 

11. Създаване, предлагане и изтегляне изображения

11.1 Създайте 120 * 160 GIF графичен файл (*.gif)

Следните стъпки могат да бъдат използвани за създаване на 120 * 160 GIF графичен файл (*.gif) подходящи за показване на Motorola T720 GSM/J2ME клетъчен телефон, или като фоново изображение за основния екран, или като образ в образ галерия. 
(1) Отвори файл с някое изображение Microsoft Paint или Adobe Photoshop или всеки друг подходящ софтуер за редактиране на изображения; 
(2) мащаба или култура на изображението до 120 пиксела широка и 160 пиксела високи (т.е., A 120 * 160 пиксел на изображението); 
(3) запишете файла в GIF имидж формат (*.gif); (в рамките на Adobe Photoshop начинът да направите това е: File -> Export -> Gif89a) 
Образът файл трябва да бъде в GIF изображение файлов формат, така че Motorola T720 клетъчен телефон е в състояние да дешифрира и показване на изображението.  Ако изображението размери са точно 120 * 160, тогава ще годни перфектно изображение на екрана на Motorola T720 клетъчен телефон, в противен случай картинката ще има празно граничи с две страни. 
Забележка: Аз успешно изтеглен и се показва една *.gif графичен файл, който беше 118 * 120 пиксела, което е по-малък от размера на екрана 120 * 160.  Мисля, че останалата част от екрана е изпълнен с цветен избрани от границата на изображението.  Може би пиксел цвета на пиксела в горната лява на изображението се използва като цвят за празния граници около двете страни на изображението. 
В Motorola T720 клетъчен телефон може да дисплей 4096 цвята, което мисля, е кодирано като 12-bit RGB (4-4-4).  Затова, мисля, че изображения с малък наклон цвят, които покриват големи площи трябва да се избягва, защото границите на тези наклон ще са много явни и разсейващ на лице гледате изображението.  Също така, GIF самия формат е ограничен само до 256 различни цвята, така че човек трябва да бъде запознат с това ограничение също.  Във всеки случай, тя винаги е най-добре просто да погледна снимка на мобилен телефон да знам дали не е подходящ за образа на клетъчен телефон. 
si.gif
Space Invaders (космически нашественици): A 120 * 160 GIF изображение

11.2 Сложи GIF графичен файл (*.gif) с вашия Интернет сървър

Аз копирани GIF един файл с име "si.mid" в главната директория на моята интернет уеб сървър.  Можете да използвате софтуера като "Filezilla" да направи трансфер FTP просто и удобно. 

11.3 Изтеглете GIF файла на вашия мобилен телефон чрез вашия телефон услугата Интернет услуги

За Motorola T720 GSM/J2ME клетъчен телефон, изтеглянето на една GIF графичен файл започва с "WebAccess" меню.  Избирането "Go To URL", последвано от въвеждане на URL на GIF файл, започва изтегляне.  Например, аз напечатани в следните URL:
http://www.colinfahey.com/si.gif
Ако изтеглите е успешно, и ако използвате Motorola T720 cellular phone, ще се даде възможност за съхранение на файлове на вашия мобилен телефон.  Когато решите да се съхранява файла, ви се предоставя възможност просто да съхранявате във вашия набор от изображения или настройка на файла, вместо да се текущата фон "(т.е.," тапети). 
Следните изображения обобщи процеса на изтегляне на файлове с изображения GIF за Motorola T720 GSM/J2ME клетъчен телефон.  Други J2ME позволи клетъчните телефони, с други клетъчни телефонни услуги, които могат да имат подобни даунлоуд процедура.  Ако вашият клетъчен телефон мобилен оператор е Verizon, то вие сте изложени на късмет; никой от това ще работи, и че трябва да отида и си купя "Android" телефона, за да унищожи "затворен телефон" пазар! 
t720_screen_image_download.jpg
(1) WebAccess: Отидете в "Go to URL" елемент. 
(2) Enter URL: Вид на URL на GIF графичен файл (*.gif) на интернет уеб сайт. 
(3) Connecting: Изчакайте изтеглянето да започне.  (Ако сте получили "406: Not Acceptable" съобщение за грешка, след това интернет уеб сървър не присвоите подходящ MIME тип GIF имидж файлове (*.gif)).) 
(4) Преглед на изтеглили образ, с опция за "STORE" (Store) изображението в паметта на клетъчен телефон; 
(5) Store Options: The GIF изображения могат просто да бъдат складирани, или не може да се използва за да замени сегашните "тапета" (фона на основните екран), или може да бъде използвана като "скрийнсейвър" (т.  е.  изображение, което ще се появи, когато на клетъчен телефон бутоните не са пресовани за определен период от време). 
(6) Changed: Wallpaper [image name]: Това е просто уведомление, че "тапета" на изображението е променена. 
(7) външния вид на главната екран на мобилен телефон след като "фон" (т.е.  фон) изображение е променена.  "Мястото, нашествениците" са победили моя мобилен телефон! 

11.4 Анимирани GIF изображение за употреба като "екранна" защита на мобилен телефон

За изтегляне на анимирани GIF снимката за използване като "спасител" на изображението "на екрана" на вашия мобилен телефон, просто следвайте инструкциите в предишната точка от настоящия документ за подготовката и изтеглянето изображение. 
Ако GIF изображението е постигане GIF, а след това "на" екрана ще се появи тази "анимация" анимация. 
Просто се постави изображение "на" екрана на изображението "пестовник" след като изображението е бил изтеглен. 
Следните анимирани GIF изображение може да бъде използвана като "скрийнсейвър" анимирани изображения върху Motorola T720 GSM/J2ME клетъчен телефон. 
sun.gif
Един GIF анимирани изображения, които могат да бъдат използвани за постигане "на екрана" на изображението "пестовник" на Motorola T720 GSM/J2ME клетъчен телефон.
За съжаление, Motorola T720 клетъчен телефон не стимулира "тапета" изображение.  Това би било страхотно много за отваряне на клетъчен телефон и виждам постигане фона на главния екран!  :^( 

Вие ще видите анимирани GIF появяват на Motorola T720 клетъчен телефон, когато телефонът влезе "скрийнсейвър" режим, които биха могли да изискват от 30 секунди или повече, за да започне.  (Можете да зададете това забавяне в едно от менютата.)  Екранът осветление е възможно да изключите пред екрана се появява анимация.  "Екранната" защита не се появява по време на активен телефонен разговор.  Затова, като всички тези факти, "на" екрана "анимация" Motorola T720 характеристика на клетъчните телефони е доста куца. 

12. Motorola T720 GSM/J2ME клетъчен телефон настройките за AT&T мобифон мрежата

12.1 Въведение

Този раздел на този документ е малко вероятно да бъдат полезни на никого, тъй като този раздел описва настройки за един много специфичен клетъчен телефон (Motorola T720 GSM/J2ME) за един много специфичен клетъчен телефон доставчик (AT&T) за един много специфичен регион (Южна Калифорния).  Струва ми се обаче, включват тази информация за исторически интерес. 

12.2 Web Sessions настройки

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)
Освен това, налице е DNS настройката за Java програми:
Main Menu
  Settings
    Java Tools
      DNS IP:  10.250.1.10

12.3 Коментари

(1) Правя "настр" ще определи WAP Port номера "9201," така че те трябва да бъдат сменени с "9203." 

(2) Вторичната WAP IP and Port е настроен на същата IP и на пристанищата като основната WAP настройки.  Аз бях в състояние да използват "mMode" (т.е., отидете на всяко URL) с абсолютно празно средно WAP настройка, но трябваше "Line Type 1: Modem" по това време.  Аз не знам дали настройката на "ISDN" го прави по-вероятно, че средното WAP настройки ще бъдат използвани. 

(3) "Майстор нулиране" прави "Timeout:" областта "15 minutes".  Промяна на стойността, която "2 minutes". 

(4) на "Name:", "Homepage:" и "GPRS APN:" включва всички сфери на пишеща машина с букви и символи ръчно. 

(5) Полетата, които са празни в примера горе, са предназначени наистина да не са въвели текст.  В бланки не са случайни. 

13. Връзки с други клетъчни телефони ресурси

13.1 Motorola J2ME SDK 3.0

Motorola има Набор за софтуерна разработка SDK че включва емулатор способни emulating много Motorola телефони, включително T720.  Можете да получите тази SDK безплатно, а и не е нужно CodeWarrior да използвате телефона с включен емулатор SDK, въпреки всички съобщения CodeWarrior на Motorola уеб сайт.  Също така, по принцип мисля, че можете да получите от CodeWarrior или Motorola SDK, без дори да правите професионално развитие за T720.

Вие трябва да се регистрираш в Motorola даже да се запознаят с техните J2ME SDK, камо ли да го изтеглите. 

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

Има някои функции за възпроизвеждане "Compact MIDI" и дори "*.wav" файлове.  Инсталиране и чете документацията, за да научите повече подробности. 
Ето коментар получих по електронната поща:
Motorola J2ME SDK дава на вас (наред с други неща) "кожи" за емулатор, така че емулаторът ще изглежда като телефон, която сте програмиране за.  Това е повече от козметични.  Размер на екрана може да са различни, например, така че ако сте проектиране нещо, когато размер на екрана въпроси, той определено ви помага да има емулатор, който съответства на целта.  В SDK също включва някои Motorola създали отворена Java класове нарича Lightweight Windowing Toolkit, които ти дават някои от това, което трябва да създадете заявка с истински UI - различни UI джунджурии. 

Можете да получите като без нея, но ако сте били прави сериозна работа, която може би искаш да го получа.  Ако бях създаване неща за Sony Ericsson или Nokia или всеки друг телефон, бих иска SDKs също. 
Ето един цитат от Motorola's уеб сайт по отношение на техните SDK:
В Motorola Software Development Kit (SDK) за J2ME™ платформа е инструмент, използван за разработване и тестване на програми, написани в Java език за програмиране.  В SDK включва приложения, които позволяват лесно да стартира MIDlets (J2ME™ Programs) използвайки Motorola J2ME™ устройство емулатор.  Заедно тези инструменти Ви позволяват да се развива и трасира своя J2ME™ програми в емулация преди свалянето им целеви устройство.  В Motorola SDK могат да бъдат интегрирани в Metrowerks' CodeWarrior™ Wireless Studio, Professional Edition, Version 7. 

Тази версия на SDK включва множество подобрения за производителността и стабилността.  Всички от функционалността на предишната версия е подкрепена с тези нови характеристики: 

Нови мобилни телефони се поддържат от тази версия: A830. 

Нови функции се поддържат от тази версия: 

A830 - Gaming API, Сериен Порт за свързване, HTTPS протокол подкрепа.
All devices - подобряване ефективността на графики

В SDK поддържа следните устройства:
*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

Един приятел очевидно не е имал проблем да изтеглите и да използвате този Toolkit - което очевидно ти дава всичко, което трябва (JDK, MIDP, CLDC) и допълнителни инструменти, за да направят JAD и др  Не съм опитвал сам.  Тук са други коментари по този Toolkit: 
Цитат от Slashdot командироването: 
Можеш да спасиш себе си някои излишни инсталирате всички различни инструменти.  Само даунлоуд [sun.com] Sun ONE Studio 4 update 1, Mobile Edition му напълно безплатно (както в бирата), и е страхотен интегрирано развитие на околната среда (около 20 MB даунлоуд).  Всички инструменти, emulators и демота от статията са пакетни.  От миналата седмица съм се изпълняват под RH Linux 7.2, с 512mb на ram (YOU NEED LOTS OF RAM!!!). 

Отне само една минута [sun.com] отпадне и от regestration на екрана, за да се засили през червей игра в дебъгер  (Аз винаги обичам играта червей / змия / Нибълс във всичките му превъплъщения, както и демо версия е прекрасно, програмиран - прост, но обектно-ориентиран и мулти-резбовани в малка сума на кода). 

Трябва да се регистрирате за изтегляне.  Поддържани платформи: Linux, Windows, Solaris.
Цитат от Slashdot командироването:
От sun даунлоуд faq [sun.com]: 
"Заради начина, по който нашата услуга даунлоуд дръжки сесия за управление, няма да можете да възстановите Файлове Частично, като щракнете върху връзката отново в прозорец на браузъра.  Напротив, отвори даунлоуд мениджър програмата, която използвате и да се започне изтеглянето от рамките на даунлоуд мениджър сам.

Ние продължаваме да работим с нашите инженери да се даде възможност за повече подкрепа даунлоуд мениджъри на повече платформи.  За сега, обаче, моля, изключете всички други даунлоуд мениджъри и комунални услуги, ако имате даунлоуд проблеми."
Изтегляне на големи файлове от sun под linux е наистина трудно за около година сега.  Единственото, даунлоуд мениджър, докато наскоро имах възможност да се заемем с работата по windows е DAP (Внимание: шпионски софтуер).  Основно най-даунлоуд мениджъри (prozgui, getright, opera) няма да бъде в състояние да се справят с Sun's [неискреност].  Ludicrously вместо да се определи техния уебсайт просто работа, Sun са писали свои собствени даунлоуд мениджър [sun.com].  Писменото си в java, а само малка 140KB!  В учудващо е, че това е наистина отлично даунлоуд мениджър, малка следа, без отклоняване на браузъра, не рекламен софтуер / шпионски софтуер работи при никакви OS, автоматична проверка на файла, автоматично unzips, и твърдо като камък 

13.3 Случайна форум командироването:

В Jad и Jar файлове са само файловете, необходими за да стартирате приложението по телефона и в зависимост от телефона и от вас метод са прехвърляне на апартамент към телефона, може да се нуждаете само от jar. 

Ако заявленията трябва да бъдат изпратени Over the Air (OTA), т.е.  чрез уеб URL, ще трябва да създадете връзка на страница четима по телефона (например wml, cHtml, cHtml) към JAD файл.  За OTA Даунлоуд вас също ще трябва да създаде своя уеб сървър за обработка и jar файл jad видове.  В apache трябва да добавите следните редове към httpd.conf файл: 

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

Също така, ще трябва да се уверите, че URL за jar файл е URL за JAR файлове на сървъра, а не местни URL 

Ако от друга страна, които искате да прехвърлите през IR, Bluetooth или кабел трябва само за прехвърляне на файлове към телефона, инсталирате и стартирате.  В JAD файл обикновено се използва специално, за да предоставят нужната информация за телефона OTA изтегли и като такива, на Nokia 7650 и някои други модели, само трябва да прехвърлите файла jar за неспазване OTA трансфери. 

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

SAR (или WTP-SAR) стендове за Segmentation and Reassembly.  Това е допълнителна функция на Wireless Transaction Protocol (WTP) рамките WAP.  SAR определя метод за WAP вход за почивка голяма съобщение (а JAR файла, който сте се изтегли, например) в малки парченца (сегментирането) и за телефон, за да го върна заедно парче (The повторно сглобяване). 

Не всички телефони използват SAR, но повечето ще имате достъп до уеб сървърите чрез WAP портал.  Nokia използва SAR, докато Motorola използва особености на HTTP 1.1 за изтегляне на малки парченца на даден файл един по един път и после го събирам. 

Един проблем, който възниква с WAP портали отнася MIME видове върнат с уеб сървър.  Ако даден потребител поиска JAD или JAR файл и сървърът връща грешната MIME тип, шлюза и след това телефонът ще се справят с превод неправилно.  За да се гарантира правилното изтегляне на MIDlets, използвайте следните MIME вида: 

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

13.5 Случайна форум за публикуване

Трябва да имате правилната MIME настройките на сървъра, складове .JAD/.JAR файлове.  След това ще можете да изтеглите Apps за вашето устройство.  Моля, имайте предвид, че: - Този процес е доста специфично устройство (не е задължително използването WA Протокола)  - Най-добре са абсолютни пътища към .JAD и .JAR множество (т.е.  http://www.fooserver.com/repository/JoeDoeApp.JAD) 

13.6 Случайна форум за публикуване

Най-малко в Siemens устройства, те имат специална конфигурация за Java, който е различен от този на WAP и GPRS.  Можете да навигирате през WAP, но когато се установи, midlet, различна настройка автоматично се промени за да бъде свален.  В M50 удобен, ще трябва да настроите Java профили в зависимост от параметрите на вашия доставчик, в c55 удобен, със същия набор се нарича "HTTP profile" и тя се използва и за други видове Изтегли (напр.  http връзки в midlet) . 

13.7 Различни интересни връзки на напредналите midlet подписването неща

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

13.8 Много готино midlet програмиране въвеждането

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

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

Да разположи вашата безжична заявления от разстояние: 

Изпратете своята молба файлове (JAD и JAR) към отдалечен уеб сървър.  Ако вашият проект е на име игри, например, качване на файлове: games.jad и games.jar от bin Справочник на проекта си у дома (например, <toolkit>/apps/games/bin).  Имайте предвид, че двата файла трябва да завършва в една директория на сървъра. 

Reconfigure уеб сървър, така че да разпознава JAD и JAR файлове: 

За JAD тип файл, задаване на файлово разширение с .jad и MIME вид с text/vnd.sun.j2me.app-descriptor. 

За JAR тип файл, задаване на файлово разширение с .jar и MIME вид с application/java-archive. 

Как я конфигурирате уеб сървър, зависи от това кой сте използвате.  Например, ако използвате Tomcat, се уверете, че вашата web.xml досие включва следните линии: 

<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> 


Сменете JAD файла MIDlet-Jar-URL имот да се определи URL на своите JAR файл.  Така например, в копие на games.jad сте качили на сървъра, промяна ... 

MIDlet-Jar-URL: games.jar 

...  да ...

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

13.10 Разни линкове

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

13.11 Nokia J2ME програма за развитие на връзките

От Nokia сайт:
Nokia's J2ME изпълнението се състои в индустрията стандарт MIDP 1.0 и CLDC 1.0.  Платформата е удължен от Nokia User Interface (UI) API.  Тя осигурява прилагането на разработчиците достъп до някои основни функции на телефона, който не е определен от CLDC 1.0 или MIDP 1.0.  В Nokia UI API осигурява достъп до обикновените аудио възможности, вибрации, осветление дисплей, както и някои графики, свързани с аксесоари. 
От електронната поща получих съобщение:
Така Nokia изглежда е наистина, че отварянето на телефоните на всякакъв вид потребителски модификация можеш да се сетиш.  Може да добавите към вибрации java игри, добавете анимационен филм мехурчета снимки, които да се предприемат, и наистина качите снимки на вашия сайт!  Можете да напишете своя собствен сървър, и хората биха могли да качите неща за теб! 
Ето някои готини 7650 връзки:
DOOM на 7650!!: http://www.wildpalm.co.uk/Doom7650.html 
В 7650 страница: http://www.nokia.com/nokia/0,1522,,00.html?orig=/phones/7650/index.html 
Nokia J2ME FAQ: http://www.nokia.com/nokia/0,5184,2776,00.html 
Изтегли SDKs, J2ME уроци, и още: http://www.forum.nokia.com 

13.12 Мобифон програма връзки

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

14. J2ME срещу BREW

14.1 Въведение

Има два доминиращи софтуерни платформи за мобилни устройства: J2ME и BREW.  Много клетъчните телефони превозвачи са решили да предлагат телефони с J2ME поддръжка: AT&T, T-Mobile и Sprint.  Един основен превозвач е решила да предложи само телефони с BREW поддръжка: Verizon. 

Мобилно устройство, който поддържа J2ME да извърша J2ME програми, но не може да изпълни BREW програми.  Мобилно устройство, който поддържа BREW да извърша BREW програми, но не може да изпълни J2ME програми. 

Производителите на мобилни устройства често предлагат няколко версии базирани на различни безжични стандарти за излъчване.  Така например, Motorola предлага две версии на T720: GSM и CDMA.  Coincidentally на GSM версия на T720 подкрепя J2ME програми, както и CDMA версия на T720 подкрепя BREW приложения.  Така, въпреки че безжичните стандарти са излъчени не е технически, свързани с телефона операционни системи, условия на пазара са довели до това случайно корелация. 

14.2 Мобифон доставчиците да реши какво мога да направя класация с клетъчен телефон устройство

Ето обобщение на това, което клетъчен телефон услуга позволява на клиентите да направите: 
[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 предлага най-добрите клиенти и разработчици на достъп до клетъчните телефони и мултимедийни файлове в Интернет.  Очевидно, AT&T е решила да съсредоточи вниманието си върху дейността на транспортиране байта чрез мрежите си, отколкото да се опитват да бъдат в бизнеса на продажба на мултимедийно съдържание. 

Verizon е най-потиснически клетъчен телефон мобилен оператор на всички тях.  "Get It Now."  Техният бизнес модел, който включва изкуствено ограничаване на клиента използването на техните собствени клетъчни телефони да защити бизнеса от продажби на мултимедийно съдържание, е вдъхновил много разочарован клиентите да прекратят договорите си с Verizon или да намерят начини за прекрачване на "Get It Now."  портал.  Точно както филма театри и спортни арени могат да налагат изключително високи цени за храна, тъй като клиентите не могат лесно достъп до алтернативни източници на храна в тези обстоятелства (т.е., налице е липса на достъп до конкуренция), Verizon могат да налагат изключително високи цени за достъп до мултимедийните файлове и софтуерни програми, тъй като клиентите не могат лесно достъп до алтернативни източници за мултимедийни файлове и софтуерни програми. 

14.3 Binary Runtime Environment for Wireless (BREW)

BREW е "Binary Runtime Environment for Wireless, имуществена софтуерна платформа, разработена от QUALCOMM.  За да научите повече за BREW, посетете следния Интернет сайт: 

http://www.qualcomm.com/brew

В SDK може да бъде изтеглен от Qualcomm.  През 2002 г.  SDK биха могли да се използват за използването Microsoft Visual C++ 6.0 изгради софтуера и програмите могат да бъдат прехвърлени към мобилен телефон без "тест подпис." 

Всички телефони с Verizon договори за ползване BREW.  Всички софтуер, изображения, музика и трябва да бъдат прехвърлени чрез Verizon's "Get It Now."  портала, и обикновено включва плащане на таксите, извън мрежата на постоянните разходи. 

14.4 Java 2 Platform, Micro Edition (J2ME)

J2ME е "Java 2 Platform, Micro Edition", "силно оптимизиран" Java Runtime среда.  За да научите повече за J2ME, посетете следния Интернет сайт: 

http://java.sun.com/j2me

Може да са го направили някои Java програмиране.  J2ME включва много от Java класове, използвани за десктоп компютърни програми.  Очевидно, всяка Java класове, които са чисто Java код, и не зависят от всеки хардуер или операционна система функции, може да се състави да изпълняват в контекста на Java виртуална машина. 

Всяко лице може да създаде конци, подложки, графични платна, и т.н., много лесно.  Човек само трябва да изтеглите *.JAR файла (и вероятно *.JAD файл) за инсталиране на приложението на мобилен телефон. 

Свалянето на Java SDK е безплатна.  Документацията за Java е задълбочен.  Милиони хора са се развили код за Java.  Съществуват многобройни интернет форуми обсъждане на различните аспекти на Java програмиране. 

В протокола от простото търсене в Интернет, открих стотици интересни софтуерни програми, както и изображения, както и звукови ефекти, всички за Motorola T720 GSM/J2ME клетъчен телефон - и всички файлове не се таксуват за изтегляне. 

Много съм развълнуван, като е в състояние да се възползват напълно от мултимедийни аспекти на моята собственост (т.е., ми клетъчен телефон), без да се налага да плащате ми клетъчен телефон мобилен оператор за нещо повече от използването на техния мобилен телефон мрежа. 

14.5 Моят BREW и Verizon история на ужасите

Аз създадох софтуера и за двете J2ME и BREW платформи, и по мое мнение, мисля, че и двете технологии има своите предимства и недостатъци, и двамата са доста способни да се използва за създаване на сложни програми много лесно. 

Въпреки това, фирма, която проявява интерес към създаване и продажба на софтуер за клетъчни телефони трябва да започне, като един въпрос: "Ако аз разработи софтуер, ще бъде разрешено да го продадеш?" 

Ако една бизнес разработва софтуер за J2ME платформа, а след това най-клетъчен телефон услуга позволява на клиентите да преминете към всеки сайт и свалете всяко J2ME софтуер, без да се налага каквато и да цена извън разходите за прехвърляне на байтове чрез клетъчен телефон мрежа.  Така, софтуерно развитие на бизнеса със сигурност ще бъде в състояние да имат достъп до потенциални клиенти и да направите свои собствени мерки за събиране на пари от клиенти за всякакви софтуерни покупки. 

Ако една бизнес разработва софтуер за BREW платформа, а след това Verizon реши дали или не на софтуера ще бъдат на разположение за продажба на потребителите.  Освен това, Verizon ще извлечете голям процент от продажната цена на софтуера за привилегията да бъде позволено да продава софтуер чрез техния изключителен портал. 

Тук е моят BREW и Verizon хорър история: 

Имахме уникална идея за програма за клетъчни телефони по време, когато са били клетъчни телефони, започват да бъде в състояние да изпълнява BREW и J2ME програми.  Бях много развълнувана, защото аз повярвах, че мога да създава и публикува уникална програма за тези платформи, много преди всички състезатели ще бъдат готови за създаване на подобен продукт.  Бях убеден, че накрая да направя нещо в живота ми, че би ме направило богат.  Значи, аз напуснах работа и започнах работа по BREW версия на софтуера си идея.  След шест месеца усилена работа, и няма доходи, бях готова с моя BREW програмата!  Бях готов да го представя Qualcomm за тестване. 

Това е, когато се направи ужасяваща откритие: Дори, ако ми мина програма за осигуряване на качеството, тестване, Verizon ще трябва да одобри на продажбата на моя софтуер - и може да не одобрим Verizon на моя софтуер за каквато и да е причина (след очевидни причини, че са обидни или в конкуренция с друг аспект на Verizon's бизнес).  Аз просто не си представя тази възможност.  Всичко, което прочетете за развитие BREW подразбиращи се, че предизвикателството е да се мине за осигуряване на качеството тестване.  Нищо не чета, споменати всички трябва да имат софтуер, одобрен от клетъчен телефон доставчици на услуги.  Аз не биха били изненадани да научат, че клетъчните телефонни услуги, може да избере да не продава обидно или злонамерени програми, но подобни съображения изглеждаше толкова маловажно за моя конкретен проект, че аз не мисля за по-общата концепция, че клетъчните телефонни услуги, може да избере да не продава обикновени софтуерни програми! 

Един от моите приятели, които вече бяха продадени няколко видео игра програми чрез Verizon, задават Verizon представител, ако Verizon ще одобри ми софтуер за продажба на тяхната мрежа ...  В Verizon представител заяви: "Не, защото" имаше няколко различни софтуерни програми в този широк жанр вече.  Моят софтуер е преподавател, речник (със специално внимание за SAT и GRE стандартизирани тестове), но Verizon представител заяви, че думата игра жанр вече бе "претъпкан," въпреки факта, че има по-малко от 10 думи, свързани с програми Общо в "Махай Веднага."  Портала, както и останалите програми са много различни (например, кръстословица пъзели, "Scrabble", "Boggle", и т.н.).  Моята програма е технологично постижение: Тя съхранява определенията речник от 5000 думи, заедно със синоними и antonyms и дума смисъла групи (Тест въпроси, така че ще бъде предизвикателство), по програма, която беше по-малко от 1 MB.  Моята програма би била уникална на пазара в продължение на много месеци, и потенциално за няколко години. 

Бях ядосан, депресиран, и финансово разорен.  Шест месеца на работа пропиляват бе, всички Verizon само защото исках софтуер, който е определен да продаде хиляди копия в техните продажби, портал, а Verizon представител не мислите ми софтуер имаше висока продажби потенциал. 

Тук е най-важният урок научих от този горчив опит:  Проверка на всяка част на бизнес плана, преди да започнете работа.  (В идеалния случай, всяка част от бизнес плана могат да бъдат тествани многократно, като реалното изпълнение на различни критични процедури, преди и по време на усилията за създаване на продукт.) 

Трябваше да провери дали има или не всяка вероятност ще бъде пречка за продажба на моя софтуер, преди да започна да развива софтуера.  Бих Verizon са открили, че могат да изберат да не ми позволи да продава моя софтуер. 

Аз научих за втори урок:  Избягвайте ситуации, в които останалите хора имат способността да се определи дали да имате достъп до клиенти! 
colinfahey.com
Информация за контакти
English  Español  Português  Français  Italiano  Deutsch  Nederlands  Svenska  Dansk  Suomi  Norsk  Русский  Polski  Română  Български  Hrvatski  Česky  中国  中國  日本語  한국어  Ελληνική  हिन्दी  العربية