J2ME рдкрд░ рд╕реНрдХреНрд░реАрдирд╕реЗрд╡рд░ рдпрд╛ рдЕрддреАрдд рдореЗрдВ рд╡рд╛рдкрд╕ред рдПрдХ рднрд╛рдЧ

рдЖрдкрдХрд╛ рджрд┐рди рд╢реБрдн рд╣реЛ!

рдкрд░рд┐рдЪрдп


рдпрд╣ рдЬрдирд╡рд░реА рдХрд╛ рддреАрд╕рд░рд╛ рднрд╛рдЧ рд╣реИ, рдФрд░ рд╣рд░ рдмрд╛рд░ рдЖрддреНрдорд╛ рдФрд░ рдлрд┐рд░ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдорд╛рдВрдЧ рдХрд░рддреА рд╣реИред рджреЛ рдмрд╛рд░ рд╕реЛрдЪрдиреЗ рдХреЗ рдмрд┐рдирд╛, рдореБрдЭреЗ рдпрд╛рдж рдЖрдпрд╛ рдХрд┐ рдореИрдВрдиреЗ рдПрдХ рдмрд╛рд░ J2ME рдкрд░ рд╕реНрдкреНрд▓реИрд╢ рд╕реНрдХреНрд░реАрди рд╡рд┐рд╖рдп рдХреЗ рд▓реЗрдЦрдХ рдХреЛ рдПрдХ рд╕реБрдзрд╛рд░ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджрд┐рдпрд╛ рдерд╛, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдХреНрдпрд╛ рд▓рд┐рдЦрдирд╛ рд╣реИ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдВрджреЗрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЧрд╛рдпрдм рд╣реЛ рдЧрдпрд╛ред рдЖрдЬ рдореИрдВ рдЖрдкрдХреЛ "рд╕рд╛рдзрд╛рд░рдг рдбрд╛рдпрд▓рд░" рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ рдЬрд╛рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ рдФрд░ рдЙрдирдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╡реЗрджрди рд▓рд┐рдЦрддрд╛ рд╣реВрдВ - рдпрд╣ рдПрдХ рдирд┐рдпрдорд┐рдд рд╕реНрдХреНрд░реАрдирд╕реЗрд╡рд░ рд╣реЛрдЧрд╛ред


рддреЛ рдЪрд▓рд┐рдП рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ


рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЪрд╛рд╣рд┐рдП рд╡рд╣ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдкреАрд╕реА рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдкреЗрдВрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдРрд╕реЗ рдирд┐рд░реНрджреЗрд╢ рдкрд╛рдБрдЪ рд╕реЗрдХрдВрдб рдореЗрдВ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рджреЗрдЦреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдПред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВ "рд╕рд╛рдзрд╛рд░рдг рдбрд╛рдпрд▓рд░" рдкрд░ J2ME рдХреЗ тАЛтАЛрд▓рд┐рдП рд╕рднреА рд╕реНрд░реЛрдд рдХреЛрдбреЛрдВ рдХрд╛ рд╕рдВрдХрд▓рди рдХрд░рддрд╛ рд╣реВрдВред рд╣рд╛рдБ, рд╣рд╛рдБ, рд░реВрд╕реА рднреВрдорд┐ рдореЗрдВ рд╢рд┐рд▓реНрдкрдХрд╛рд░ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЬреЗ 2 рдИрдПрдордИ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдпрд░рд┐рдлрд╛рдпрд░ рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рдХ рдХреЛ рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ред
рд╕рдм рдХреБрдЫ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, J2ME рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрдиреЗ рдФрд░ рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХреЗ рдкреНрд░рдХрдЯ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░, рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЛ рдпрд╛рдж рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрджрд┐ рдЖрдк рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдХреНрдпрд╛ рд╣реИ, рддреЛ рдирд┐рд░рд╛рд╢ рдордд рд╣реЛ - рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ J2ME рдХреЗ тАЛтАЛрд▓рд┐рдП рд╡рд┐рдХрд╛рд╕рд╢реАрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдкрд░ рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреАред

рдПрдирд╛рдЯреЙрдореА J2ME рдПрдкреНрд▓реАрдХреЗрд╢рди


рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, J2ME рдореЗрдВ рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдПрдХ MIDlet рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдРрд╕рд╛ рдХреНрдпреЛрдВ, рдЖрдк рдЖрдЧреЗ рдЬрд╛рдиреЗрдВрдЧреЗред

javax.microedition.midlet.MIDlet

J2ME рдХреЗ тАЛтАЛрд▓рд┐рдП рдПрдХ рдЖрд╡реЗрджрди javax.microedition.mletlet рдкреИрдХреЗрдЬ рд╕реЗ MIDlet рд╡рд░реНрдЧ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реА рд╢реНрд░реЗрдгреА рд╕реЗ рдЕрдзрд┐рдХ рдХреБрдЫ рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╡рд░реНрдЧ рдорд┐рд▓реЗрдЯрд▓реЗрдЯ рдХрд╛ "рджрд┐рд▓" рд╣реИред рд╣рдорд╛рд░реА рдХрдХреНрд╖рд╛ рдореЗрдВ, рд╣рдореЗрдВ рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХреЗ рдХрд╛рдордХрд╛рдЬ рдХреЗ рд▓рд┐рдП рддреАрди рддрд░реАрдХреЛрдВ рдХреА рдШреЛрд╖рдгрд╛ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП:
public void startApp() { //        } public void pauseApp() { //   ,      , SMS  .. } public void destroyApp(boolean unconditional) { //    ,   . //  ... } 

рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рдкрджреНрдзрддрд┐ рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдмрдХрд┐ рдпрд╣ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд▓рд╛рдн рдирд╣реАрдВ рд▓рд╛рддрд╛ рд╣реИред StartApp () рдФрд░ pauseApp () рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ AMS рджреНрд╡рд╛рд░рд╛ рд╣реА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдирд╖реНрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ () рдирд╣реАрдВ рд╣реИред рд╕реНрдерд╛рдкрд┐рдд рдкрд░рдВрдкрд░рд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЖрдорддреМрд░ рдкрд░ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдПрдХ рдмреНрд▓реЙрдХ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
 public void destroyApp(boolean unconditional) { notifyDestroyed(); //      } 

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЬреАрд╡рди рдЪрдХреНрд░ рдХреА рд╕рдорд╛рдкреНрддрд┐ рдХреЛ InformDestroyed () рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ , рди рдХрд┐ рдирд╖реНрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ () ред рдУрд╣ рдареАрдХ рд╣реИ, рдмрд╛рдж рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдПрдХ рд░рд╣рд╕реНрдп рдмрдирд╛ рд░рд╣реЗрдЧрд╛ред рд╣рдо рд╡рд┐рдЪрд▓рд┐рдд рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдЖрдЧреЗ рдмрдврд╝реЗрдВрдЧреЗред

javax.microedition.lcdui.Display

рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдЕрдЧрд▓рд╛ рдХрджрдо javax.microedition.lcdk рдкреИрдХреЗрдЬ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рд╕рдВрджрд░реНрдн рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ рд╣реИ, рдпрд╣ рд╕реНрдХреНрд░реАрди, рд░реВрдкреЛрдВ ( javax.microedition.lcdui.Form ) рдпрд╛ рдХреИрдирд╡рд╛рд╕ ( javax.microedition.lcdui.Canvas ) рдФрд░ рдЙрдирдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдо рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд▓рд┐рдВрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
 Display dsp = Display.getDisplay(this); //  ... 

рд╣реЛ рдЧрдпрд╛, рдЕрдЧрд▓реЗ рдХрджрдо рдкрд░ рдЬрд╛рдПрдБред

javax.microedition.lcdui.game.GameCanvas

рдореИрдВ рддреБрд░рдВрдд рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ GameCanvas рд╡рд░реНрдЧ рдХреЗ рдЖрдЧрдорди рдХреЗ рд╕рд╛рде, рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рдХреИрдирд╡рд╕ рдХреЛ "рдмрдХреНрд╕рд╛ рд╕реЗ рдмрд╛рд╣рд░" рдбрдмрд▓ рдмрдлрд░рд┐рдВрдЧ рдХреА рдЕрд╕рдВрднрд╡рддрд╛ рдХреЗ рдХрд╛рд░рдг рджрдмрд╛рдиреЗ рд▓рдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдПрдХ рдХреИрдирд╡рд╛рд╕ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ GameCanvas рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВред рдЬрд▓реНрджреА рд╕реЗ рдирд╣реАрдВ рдХрд╣рд╛ред
рдЧреЗрдордХреЗрди рдФрд░ рдХреИрдирд╡рд╕ рдХреЗрд╡рд▓ рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рднрд┐рдиреНрди рд╣реЛрддреЗ рд╣реИрдВ: рдкрд╣рд▓рд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдпрд╣ рдбрдмрд▓ рдмрдлрд░рд┐рдВрдЧ рд╣реИ), рдФрд░ рджреВрд╕рд░рд╛ рдмрд╛рдж рдореЗрдВ рдкреЗрдВрдЯ рд╡рд┐рдзрд┐ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдХреИрдирд╡рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреИрдирд╡рд╛рд╕ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛрдб рдкреНрд░рджрд╛рди рдХрд░реВрдВрдЧрд╛:
 import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Graphics; public class OurCanvas extends Canvas { //   Canvas public void paint(Graphics g) { int w = getWidth(); //    int h = getHeight(); //      g.setColor(0xffffff); //    g.fillRect(0,0,w,h); //      } } 

рдкреЗрдВрдЯ () рд╡рд┐рдзрд┐ рдореЗрдВ, рд╣рдо рдЧреНрд░рд╛рдлрд┐рдХ рдкреНрд░рд╛рдЗрдореЗрдЯрд┐рдХреНрд╕ рдХреЗ рд╕рднреА рдкреНрд░рддрд┐рдкрд╛рджрди рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрдИ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреНрд░рднрд╛рд╡реА рдирд╣реАрдВ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдПрдХ рддрд░реНрдХ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреА рдЗрдЪреНрдЫрд╛ рд╣реИред
GameCanvas рдЖрдкрдХреЛ рддрд░реНрдХ рдХреЛ рдЕрдиреНрдп рддрд░реАрдХреЛрдВ, рдХрдХреНрд╖рд╛рдУрдВ рдЖрджрд┐ рдореЗрдВ рд▓реЗ рдЬрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣:
 import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Graphics; public class OurCanvas extends GameCanvas implements Runnable { //   GameCanvas    Runnable,    Thread public void run() { Graphics g = getGraphics(); //     Graphics //           int w = getWidth(); //    int h = getHeight(); //      g.setColor(0xffffff); //    g.fillRect(0,0,w,h); //      } } 

рдлрд┐рд░ рдореИрдВрдиреЗ рдПрдХ рдЧрд▓рддреА рдХреА: рдореИрдВрдиреЗ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рдШреЛрд╖рдгрд╛ рдХреЛ рдХрдХреНрд╖рд╛ рдХреА рдШреЛрд╖рдгрд╛ рдХреЗ рдЕрдВрджрд░ рдХрд╣реАрдВ рднреА рдЦреБрдж рдХреЛ рдЪрд░ рдХреА рдШреЛрд╖рдгрд╛ рдХреЗ рд╕реНрдерд╛рди рдкрд░ рдирд╣реАрдВ рд▓рд┐рдпрд╛, рдЕрд░реНрдерд╛рддреНред рдХреЛрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:
 import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Graphics; public class OurCanvas extends GameCanvas implements Runnable { Graphics g = getGraphics(); int w = getWidth(); int h = getHeight(); public void run() { g.setColor(0xffffff); g.fillRect(0,0,w,h); isSomethingDone(); } public void isSomethingDone() { g.setColor(0xababab); g.drawLine(25,25,125,125); } } 

рдХреБрдЫ рдЗрд╕ рддрд░рд╣ред рдпрд╣ рд╕рдм рд╣реИ - рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрдкрдиреА рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЬреНрдЮрд╛рди рдХрд╛ рдЖрдзрд╛рд░ рд╣реИред рдЪрд▓реЛ рдЪрд▓рддреЗ рд╣реИрдВ!

рд╣рдо рд╡рд┐рдХрд╛рд╕ рдХреЛ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ


рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдореЗрдВ рдХрдИ рд╡рд░реНрдЧ рд╢рд╛рдорд┐рд▓ рд╣реЛрдВрдЧреЗ:
рдореБрдЭрд╕реЗ рдорд┐рд▓реЛ! midlet.java:
 import javax.microedition.midlet.MIDlet; import javax.microedition.lcdui.*; import java.util.Timer; public class midlet extends MIDlet { Timer timer; midletTimerTask task; midletCanvas canvas; public midlet () { canvas = new midletCanvas(this); //   timer = new Timer (); task = new midletTimerTask (canvas); //  ,    timer.scheduleAtFixedRate(task,10,10); //  10  // 10  -  .    repaint  , //     ,    in } protected void startApp() { //     Display.getDisplay(this).setCurrent (canvas); } protected void pauseApp() {} protected void destroyApp(boolean unconditional) {} public void exitMIDlet() { notifyDestroyed(); } } 

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреИрдирд╡рд╛рд╕ рд╣реА midletCanvas.java рд╣реИ:
 import javax.microedition.lcdui.*; class midletCanvas extends Canvas { midlet midlet; random Random; static int [] PlasmaTab = { //   - 256  32,32,33,34,35,35,36,37,38,39,39,40,41,42,42,43, 44,45,45,46,47,47,48,49,49,50,51,51,52,52,53,54, 54,55,55,56,56,57,57,58,58,59,59,59,60,60,60,61, 61,61,62,62,62,62,63,63,63,63,63,63,63,63,63,63, 63,63,63,63,63,63,63,63,63,63,62,62,62,62,62,61, 61,61,60,60,60,59,59,58,58,58,57,57,56,56,55,54, 54,53,53,52,52,51,50,50,49,48,48,47,46,46,45,44, 43,43,42,41,40,40,39,38,37,37,36,35,34,33,33,32, 31,30,30,29,28,27,26,26,25,24,23,23,22,21,20,20, 19,18,17,17,16,15,15,14,13,13,12,11,11,10,10, 9, 9, 8, 7, 7, 6, 6, 5, 5, 5, 4, 4, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9,10,11,11,12,12,13,14,14,15,16,16,17,18,18,19, 20,21,21,22,23,24,24,25,26,27,28,28,29,30,31,31 }; //,      ,   //  32* (1+ sin (x*(2*pi/255)),      static int Delta = 6; //     static int Yold_pos=0, Yold_asp=0, Xold_pos=0, Xold_asp=0; int Ynew_pos, Ynew_asp, Xnew_pos, Xnew_asp, x, y, Color; static int Width, Height; //    static boolean in = false; //  Graphics gbuffer; //   Image screen; //  public midletCanvas (midlet midlet) { this.midlet = midlet; Random = new random (); setFullScreenMode (true); //   MIDP 2.0 Width = getWidth (); Height = getHeight (); screen=Image.createImage(Width,Height); gbuffer=screen.getGraphics(); //   gbuffer, draw (gbuffer); //      ! } void draw (Graphics g) { //      in = true; Ynew_pos = Yold_pos; Ynew_asp = Yold_asp; for (y=0; y<Height; y+=Delta) { Xnew_pos = Xold_pos; Xnew_asp = Xold_asp; for (x=0; x<Width; x+=Delta) { Color = PlasmaTab[Ynew_pos]+ PlasmaTab[Ynew_asp]+ PlasmaTab[Xnew_pos]+ PlasmaTab[Xnew_asp]; g.setColor(((255-Color)<<16 | Color<<8 | 128+(Color>>1))); g.fillRect (x,y,Delta,Delta); Xnew_pos += 1; if (Xnew_pos > 255) Xnew_pos=0; Xnew_asp += 7; if (Xnew_asp > 255) Xnew_asp=0; } Ynew_pos += 2; if (Ynew_pos > 255) Ynew_pos=0; Ynew_asp += 1; if (Ynew_asp > 255) Ynew_asp=0; } Xold_pos -= 2; if (Xold_pos<0) Xold_pos=255; Xold_asp += Random.get(8); if (Xold_asp > 255) Xold_asp=0; Yold_pos += 4; if (Yold_pos > 255) Yold_pos=0; Yold_asp -= Random.get(6); if (Yold_asp<0) Yold_asp=255; in = false; } protected void paint (Graphics g) { if (in == true) return; //      g.drawImage(screen,0,0,0); draw (gbuffer); } public void keyPressed(int keyCode) { switch (keyCode) { //   # case Canvas.KEY_POUND: midlet.exitMIDlet(); break; } } } 

рдЕрдЧрд▓реА рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЯрд╛рдЗрдорд░ рд╣реИ - midletTimerTask.java:
 import java.util.TimerTask; import javax.microedition.midlet.MIDlet; class midletTimerTask extends TimerTask { midletCanvas canvas; public midletTimerTask (midletCanvas canvas) { this.canvas = canvas; } public final void run() { canvas.repaint(); } } 

рдФрд░ рдЕрдВрдд рдореЗрдВ, рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдЪреБрдирдиреЗ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди - random.java
 import java.util.Date; import java.util.Random; class random { //-    private Random r; private Date d; public random () { d = new Date (); r = new Random (d.getTime()); } public int get (int max) { //    [0,max-1] int n=r.nextInt()%max; return (n<0 ? -n : n); } } 


рдШреЛрдЯрд╛рд▓реЛрдВ, рд╖рдбреНрдпрдВрддреНрд░реЛрдВ, рдЬрд╛рдВрдЪ


рдореЗрд░реЗ рд╕реНрд░реЛрдд рд╕рдВрдХрд▓рди рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдмрд▓реНрдХрд┐, рд╡реЗ рд╕рдВрдХрд▓рд┐рдд рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЬреЛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рд╡рд╣ рдкреВрд░рд╛ рдирд╣реАрдВ рд╣реБрдЖред рджреЗрд░ рд░рд╛рдд, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЗ рд╡рд┐рдирдореНрд░ рд╕реЗрд╡рдХ рдХреЛ рдЕрдкрдирд╛ рд╕реНрд░реЛрдд рд▓реЗрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рдереАред рдореИрдВ рдХреЛрдб рдХреЛ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдлреА рдЪрд╛рд╣рддрд╛ рд╣реВрдВ - рдореИрдВ рдЗрд╕реЗ рдХрд▓ рдареАрдХ рдХрд░реВрдВрдЧрд╛ред

рддрдХрдиреАрдХ рдХрд╛ рдФрд░ рдорд╛рдорд▓рд╛


рд╕рдВрдХрд▓рди рдФрд░ рд╕рддреНрдпрд╛рдкрдиред рдпрд╣ рдЪрд░рдг рдореИрдВ рддреБрдореНрд╣рд╛рд░реЗ рд▓рд┐рдП рдЫреЛрдбрд╝рддрд╛ рд╣реВрдВред

MANIFEST.MF


рдореИрдВ рдЖрдкрдХреЛ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдЯрд┐рдВрдХрд░ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдореЗрдЯрд╛- рдЗрди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИред рдЖрдЦрд┐рд░рдХрд╛рд░, рдЕрдЧрд░ рд╣рдо рдПрдХ рд╕реНрдХреНрд░реАрдирд╕реЗрд╡рд░ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдЙрд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗрд╡рд▓ рд╕реЛрдиреА рдПрд░рд┐рдХреНрд╕рди рдХреЗ рдлреЛрди рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИред рдЪрд▓рд┐рдП рдЗрд╕рдореЗрдВ рдирд┐рдореНрди рдкрдВрдХреНрддрд┐ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ:
  SEMC-StandbyApplication: Y 


рд╣рдордиреЗ рдХреНрдпрд╛ рдХрд┐рдпрд╛ рд╣реИ?


рд╣рдордиреЗ рд╡реЙрд▓рдкреЗрдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдкрдиреА рд╕реНрдХреНрд░реАрдирд╕реЗрд╡рд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛ рджрд┐рдпрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдлреЛрди рдореЗрдВ MIDlet рдбреНрд░реЙрдк рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЕрдЧрд▓рд╛, "рдПрдкреНрд▓рд┐рдХреЗрд╢рди" рдкрд░ рдЬрд╛рдПрдВ, рд╣рдорд╛рд░рд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВред рдЕрдЧрд▓реА рдХреНрд░рд┐рдпрд╛ рд╕рд╣реА рд╕реЙрдлреНрдЯ рдХреА рдХреЛ рджрдмрд╛рдПрдЧреА рдФрд░ тАЬрд▓рд╛рдЗрдХ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдбтАЭ рдХрд╛ рдЪрдпрди рдХрд░реЗрдЧреАред рдбреНрд░рд╛рдЗрдВрдЧ "ред рдЪреБрдиреЗрдВ - рдкрд░реЛрд╕рд╛ рдЧрдпрд╛ рдЦрд╛рдирд╛ред рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЗрдЦреЗрдВрдЧреЗ

рд╡рд╣реА рд╣реБрдЖ






рдмрд╕ рдЖрдкрдХреЛ рдЬрд░реВрд░рдд рд╣реИ


рдЖрдк Pastebin рдкрд░ рд╕реНрд░реЛрдд рдХреЛрдб рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣рд╛рдБ рд╡реЗ рд╣реИрдВ:
midlet.java
midletCanvas.java
midletTimerTask.java
random.java

рдирд┐рд╖реНрдХрд░реНрд╖


рд╡рд╣ рд╕рдм рд╣реИред рдХреБрдЫ рд╣реА рдЪрд░рдгреЛрдВ рдореЗрдВ, рд╣рдордиреЗ рдПрдХ рдорд┐рд▓реЗрдЯ рд▓рд┐рдЦрд╛ред рдЖрдЬрдХрд▓, J2ME рдзреАрд░реЗ-рдзреАрд░реЗ рдХрд╣реАрдВ рдирд╣реАрдВ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╢рд╛рдпрдж рдРрд╕реА рдХреЛрдИ рдЯреНрдпреВрдм рдирд╣реАрдВ рдмрдЪреА рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдмрдХрд┐ рдУрд░реЗрдХрд▓ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд░рд╣рд╛ рд╣реИ - рдХреМрди рдЬрд╛рдирддрд╛ рд╣реИ, рдЕрднреА рднреА рдПрдХ рд╣реЛрдЧрд╛ред рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЖрдк рд░реБрдЪрд┐ рд░рдЦрддреЗ рдереЗред

рдЬрд▓реНрдж рдорд┐рд▓рддреЗ рд╣реИрдВ!

Source: https://habr.com/ru/post/In135672/


All Articles