{"id":264069,"date":"2015-08-21T19:56:02","date_gmt":"2015-08-21T15:56:02","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=264069"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=264069","title":{"rendered":"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 HTML5 \u0438\u0433\u0440\u044b \u043f\u043e\u0434 Android \u0441 \u043d\u0443\u043b\u044f \u0438 \u0434\u043e \u0440\u0435\u043b\u0438\u0437\u0430"},"content":{"rendered":"<p>     \t<b>\u0412\u043c\u0435\u0441\u0442\u043e \u0432\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u044f.<\/b><br \/>  \u041f\u043e\u0442\u0440\u0430\u0442\u0438\u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0443\u0442\u043e\u043a \u043f\u043e\u0434\u0440\u044f\u0434 (\u0431\u0435\u0437 \u043f\u0435\u0440\u0435\u0440\u044b\u0432\u0430 \u043d\u0430 \u0441\u043e\u043d) \u043d\u0430 \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 HTML5 \u0432\u0441\u0435\u043c\u0438 \u043b\u044e\u0431\u0438\u043c\u044b\u043c\u0438 Android-\u0433\u0430\u0434\u0436\u0435\u0442\u0430\u043c\u0438, \u0440\u0435\u0448\u0438\u043b, \u0447\u0442\u043e \u0434\u0430\u043d\u043d\u043e\u0439 \u0442\u0435\u043c\u0435 \u0441\u0442\u043e\u0438\u0442 \u0443\u0434\u0435\u043b\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u044e\u0441\u044c \u0440\u0430\u0441\u043a\u0440\u044b\u0442\u044c \u043f\u043e \u0448\u0430\u0433\u0430\u043c \u0432\u0441\u0435 \u044d\u0442\u0430\u043f\u044b (\u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435 \u0431\u0430\u0437\u043e\u0432\u044b\u0435\/\u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0435\/\u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435) \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f HTML5 \u0418\u0433\u0440\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0434\u043b\u044f Android \u043e\u0442 \u0438\u0434\u0435\u0438 \u0434\u043e \u0440\u0435\u043b\u0438\u0437\u0430 \u0441\u0430\u043c\u043e\u0433\u043e APK \u0444\u0430\u0439\u043b\u0430.<br \/>  \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u044f \u0438 \u043d\u0435 \u043e\u0442\u043a\u0440\u043e\u044e \u043c\u0430\u0441\u0442\u0438\u0442\u044b\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c, \u043d\u043e \u0434\u043b\u044f \u043d\u043e\u0432\u0438\u0447\u043a\u043e\u0432 \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u044e\u0441\u044c \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0432\u0441\u0435 \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0449\u0435, \u0441\u043e \u0441\u043a\u0440\u0438\u043d\u0448\u043e\u0442\u0430\u043c\u0438 \u0438 \u043f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u044f\u043c\u0438. <br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/380\/1f9\/242\/3801f924299bb35056b7e05122f7e375.jpg\" alt=\"image\"\/><br \/>  \u0416\u0435\u043b\u0430\u044e\u0449\u0438\u0445 \u0443\u0437\u043d\u0430\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0430\u044e \u043f\u043e\u0434 \u043a\u0430\u0442. <a name=\"habracut\"><\/a><\/p>\n<p>  <b>\u0418\u0434\u0435\u044f<\/b><br \/>  \u0412\u043e\u043e\u0431\u0449\u0435 \u043c\u043d\u043e\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u043e \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u0435 Android, \u043e \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0438 HTML5 \u0438 \u043e\u0431 \u0438\u0445 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0438. \u042f \u044d\u0442\u043e\u0433\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0443. \u0422\u0430\u043a \u0447\u0442\u043e, \u0441\u0440\u0430\u0437\u0443 \u043a \u0434\u0435\u043b\u0443.<\/p>\n<p>  \u0418\u0434\u0435\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0438\u0433\u0440\u044b \u043f\u043e\u0434 Android \u043d\u0430\u0432\u0435\u0440\u043d\u044f\u043a\u0430 \u0437\u0430\u0441\u0435\u0434\u0430\u0435\u0442 \u0432 \u0440\u0430\u0437\u0443\u043c\u0430\u0445 <s>\u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432<\/s> \u0441\u043e\u0442\u0435\u043d \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432, \u0438 \u0442\u0435\u0445, \u043a\u0442\u043e \u0441\u0435\u0431\u044f \u0442\u0430\u043a\u043e\u0432\u044b\u043c\u0438 \u0441\u0447\u0438\u0442\u0430\u0435\u0442. \u042f \u043d\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435.<\/p>\n<p>  \u041f\u043e\u0447\u0435\u043c\u0443 HTML5? \u2014 \u041d\u0430\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c. \u041f\u0438\u0448\u0435\u0448\u044c \u0438\u0433\u0440\u0443 \u043d\u0430 JS, \u0430 \u0437\u0430\u0442\u0435\u043c \u0434\u043b\u044f \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u043b\u044e\u0431\u043e\u0439 \u041e\u0421 \u0441\u043e\u0437\u0434\u0430\u0435\u0448\u044c \u043e\u0431\u0435\u0440\u0442\u043a\u0443 \u0432 \u0443\u0434\u043e\u0431\u043d\u043e\u043c \u0432\u0438\u0434\u0435 \u0438 \u043d\u0430 \u043b\u044e\u0431\u043e\u043c \u042f\u0437\u044b\u043a\u0435. <\/p>\n<p>  \u0412\u0435\u0441\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u0431\u0438\u0442 \u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0448\u0430\u0433\u043e\u0432 \u0430 \u0438\u0442\u043e\u0433\u043e\u0432\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u0442\u044c \u0438\u0437 \u0434\u0432\u0443\u0445 \u0447\u0430\u0441\u0442\u0435\u0439:<br \/>   \u2014 \u041e\u0431\u0435\u0440\u0442\u043a\u0430 (\u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0434\u043b\u044f Android)<br \/>   \u2014 \u0418\u0433\u0440\u0430<\/p>\n<p>  <b>\u0428\u0430\u0433 1. \u041d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0441\u0430\u043c\u043e\u0439 \u0438\u0433\u0440\u044b<\/b><br \/>  \u0415\u0449\u0435 \u043e\u0434\u043d\u0438\u043c \u043f\u043b\u044e\u0441\u043e\u043c \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0438\u0433\u0440\u044b \u043d\u0430 HTML5 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u043e\u0442 \u0444\u0430\u043a\u0442, \u0447\u0442\u043e \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043a\u0443\u0447\u0430 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c, IDE, \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u043e\u0432 \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. \u041d\u0443\u0436\u0435\u043d \u043b\u0438\u0448\u044c \u0431\u0440\u0430\u0443\u0437\u0435\u0440 (\u0432 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e Chromium) \u0438 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 (BlueFish)<\/p>\n<p>  \u0418\u0433\u0440\u0430 \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u0441\u043b\u043e\u0436\u043d\u043e\u0439: \u0435\u0441\u043b\u0438 \u0441\u0438\u043d\u0438\u0439 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a \u0438 \u0435\u0441\u0442\u044c \u0437\u0435\u043b\u0435\u043d\u044b\u0439 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a. \u0417\u0430\u0434\u0430\u0447\u0430 \u0438\u0433\u0440\u043e\u043a\u0430 \u2014 \u043f\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u044c \u0441\u0438\u043d\u0438\u0439 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a \u043d\u0430 \u0437\u0435\u043b\u0435\u043d\u044b\u0439 \u0432 \u043e\u0431\u0445\u043e\u0434 \u043a\u0440\u0430\u0441\u043d\u043e\u0433\u043e, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u043f\u043e \u0438\u0433\u0440\u043e\u0432\u043e\u043c\u0443 \u043f\u043e\u043b\u044e \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e\u043c \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438.<\/p>\n<p>  \u0414\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438\u0433\u0440\u044b \u0431\u0443\u0434\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c J2ds (\u0438\u0433\u0440\u043e\u0432\u043e\u0439 \u0434\u0432\u0438\u0436\u043e\u043a)<\/p>\n<p>  \u041a\u043e\u0434 \u0433\u043e\u0442\u043e\u0432\u043e\u0439 \u0438\u0433\u0440\u044b:  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">index.html<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"html\">&lt;!DOCTYPE html&gt; &lt;html&gt;   &lt;head&gt;   &lt;script type=&quot;text\/javascript&quot; src=&quot;j2ds\/engineMath.js&quot;&gt;&lt;\/script&gt;   &lt;script type=&quot;text\/javascript&quot; src=&quot;j2ds\/engineKey.js&quot;&gt;&lt;\/script&gt;      &lt;script type=&quot;text\/javascript&quot; src=&quot;j2ds\/engineDOM.js&quot;&gt;&lt;\/script&gt;   &lt;script type=&quot;text\/javascript&quot; src=&quot;j2ds\/engine2D.js&quot;&gt;&lt;\/script&gt;   &lt;script type=&quot;text\/javascript&quot; src=&quot;j2ds\/engineNet.js&quot;&gt;&lt;\/script&gt;   &lt;script type=&quot;text\/javascript&quot; src=&quot;j2ds\/engineParticles.js&quot;&gt;&lt;\/script&gt;   &lt;script type=&quot;text\/javascript&quot; src=&quot;j2ds\/enginePE.js&quot;&gt;&lt;\/script&gt;     &lt;meta http-equiv=&quot;content-type&quot; content=&quot;text\/html; charset=UTF-8&quot; \/&gt;   &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width,user-scalable=no&quot; \/&gt;     &lt;title&gt;Demo Game on J2ds v.0&lt;\/title&gt;  &lt;\/head&gt;  &lt;body id=&quot;gameBody&quot;&gt;   &lt;canvas id=&quot;iCanvas&quot; width=&quot;500&quot; height=&quot;280&quot;&gt;&lt;\/canvas&gt;  &lt;br&gt;  &lt;div id=&quot;hint&quot;&gt;&lt;\/div&gt;  &lt;script type=&quot;text\/javascript&quot;&gt; \/\/ \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0432\u0432\u043e\u0434\u0430 initInput('gameBody');  \/\/ \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u0441\u0446\u0435\u043d\u0443 scene= createScene('iCanvas', '#aeeaae');  \/\/ \u0421\u0442\u0430\u0440\u0442\u0443\u0435\u043c \u0432 \u043f\u043e\u043b\u043d\u043e\u044d\u043a\u0440\u0430\u043d\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 scene.fullScreen(true);  post= createPost(scene);  score= 5;  \/\/ \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a\u0438  blue= createRect(vec2di(100, 100), vec2di(30, 30), 'blue');  green= createRect(vec2di(300, 200), vec2di(30, 30), 'green'); green.dX= -1; green.dY= 1;  red= createRect(vec2di(16, 200), vec2di(30, 30), 'red'); red.dX= 1; red.dY= -1;  restart= createRect(vec2di(430, 10), vec2di(60, 60), '#ad21ad');   GameOver= function() { \t\/\/ \u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u0437\u0438\u0446\u0438\u044e \u043a\u0430\u0441\u0430\u043d\u0438\u044f \/ \u043c\u044b\u0448\u0438  input.upd(scene);  \/\/ \u0412\u044b\u0432\u043e\u0434\u0438\u043c \u0442\u0435\u043a\u0441\u0442  scene.drawText(vec2di(5,5), 'Score: '+score);  \/\/ \u0412\u044b\u0432\u043e\u0434\u0438\u043c \u0442\u0435\u043a\u0441\u0442  scene.drawTextOpt(vec2df(140, 100), '\u041f\u0440\u043e\u0438\u0433\u0440\u0430\u043b!',     'bold 40px Courier New', '#326598');  if (input.lClick && input.onNode(restart)) setActivEngine(Game);     restart.draw(scene); }  Success= function() { \t\/\/ \u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u0437\u0438\u0446\u0438\u044e \u043a\u0430\u0441\u0430\u043d\u0438\u044f \/ \u043c\u044b\u0448\u0438  input.upd(scene);  \/\/ \u0412\u044b\u0432\u043e\u0434\u0438\u043c \u0442\u0435\u043a\u0441\u0442  scene.drawText(vec2di(5,5), 'Score: '+score);  \/\/ \u0412\u044b\u0432\u043e\u0434\u0438\u043c \u0442\u0435\u043a\u0441\u0442  scene.drawTextOpt(vec2df(140, 100), '\u041f\u043e\u0431\u0435\u0434\u0430!',     'bold 40px Courier New', '#326598');  if (input.lClick && input.onNode(restart)) setActivEngine(Game);     restart.draw(scene); }   \/\/ \u041e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0438\u0433\u0440\u043e\u0432\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 Game Game= function() {  \/\/ \u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u0437\u0438\u0446\u0438\u044e \u043a\u0430\u0441\u0430\u043d\u0438\u044f \/ \u043c\u044b\u0448\u0438  input.upd(scene);   \/\/ \u0412\u044b\u0432\u043e\u0434\u0438\u043c \u0442\u0435\u043a\u0441\u0442  scene.drawText(vec2di(5,5), 'Score: '+score);   blue.color= input.lClick?'yellow' : 'blue';   if (input.lClick)    {   red.move(vec2di(red.dX, red.dY));   green.move(vec2di(green.dX, green.dY));           blue.move(    vec2df(     blue.getPosition().x &gt; input.pos.x ? -1*score\/2 : 1*score\/2,     blue.getPosition().y &gt; input.pos.y ? -1*score\/2 : 1*score\/2        ) )   ;         if (green.collisionScene(scene).x != 0) green.dX= -green.dX;   if (green.collisionScene(scene).y != 0) green.dY= -green.dY;   if (red.collisionScene(scene).x != 0) red.dX= -red.dX;   if (red.collisionScene(scene).y != 0) red.dY= -red.dY;    }   if (blue.collision(red)) {   input.cancel(); score-= 1;   setActivEngine(GameOver);   red.setPosition(vec2df(200, 100));   blue.setPosition(vec2df(50, 50));  }   if (blue.collision(green)) {   input.cancel(); score+= 1;   setActivEngine(Success);   red.setPosition(vec2df(200, 100));   blue.setPosition(vec2df(50, 50));   blue.setPosition(vec2di(Random(0, 450), Random(0, 250)));  }    \/\/ \u0412\u0440\u0430\u0449\u0430\u0435\u043c \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a\u0438  blue.turn(1);   green.turn(720\/blue.getDistance(green));   red.turn(Random(1, 5)); \t \t \t\/\/ \u041e\u0442\u0440\u0438\u0441\u043e\u0432\u044b\u0432\u0430\u0435\u043c \u043e\u0431\u044a\u0435\u043a\u0442\u044b \tgreen.draw(scene); blue.draw(scene); red.draw(scene);   \/\/post.motionBlur(4);   }  \/\/ \u0421\u0442\u0430\u0440\u0442\u0443\u0435\u043c \u0438\u0433\u0440\u0443 \u0441 \u0438\u0433\u0440\u043e\u0432\u044b\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u043c Game \u0438 FPS 25 startGame(Game, 30); &lt;\/script&gt;  &lt;\/body&gt; &lt;\/html&gt;  <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u041d\u0430 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u0434\u0430 \u0438\u0433\u0440\u044b \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u043c\u043e\u0436\u043d\u043e \u043d\u0435 \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c, \u0438\u0431\u043e \u043d\u0435 \u044d\u0442\u043e \u0446\u0435\u043b\u044c \u0441\u0442\u0430\u0442\u044c\u0438. \u0425\u043e\u0442\u044f \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u043c\u043e\u0436\u043d\u043e \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443\u0433\u043e\u0434\u043d\u043e, \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u0435\u043d.<\/p>\n<p>  <b>\u0428\u0430\u0433 2. Android Studio. \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u0435\u0440\u0442\u043a\u0438 \u0434\u043b\u044f \u0438\u0433\u0440\u044b<\/b><br \/>  \u042f \u043d\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u044e\u0441\u044c \u043d\u0438 \u0441 \u043a\u0435\u043c \u043c\u0435\u0440\u0438\u0442\u044c\u0441\u044f \u043a\u0440\u0443\u0442\u043e\u0441\u0442\u044c\u044e \u0442\u043e\u0439 \u0438\u043b\u0438 \u0438\u043d\u043e\u0439 IDE \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u043e\u0434 Android, \u0430 \u043f\u043e\u043a\u0430\u0436\u0443 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 Android Studio. \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f:<br \/>   \u2014 Java \u043c\u0430\u0448\u0438\u043d\u0430 (\u043f\u043e\u0434 \u043c\u043e\u044e Linux \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 OpenJDK)<br \/>   \u2014 \u0414\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432 Android Studio.<\/p>\n<p>  \u0421\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u043c, \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c.<br \/>  \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0441\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 (\u042d\u0442\u0438\u0445 \u0434\u0432\u0443\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e), \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0439\u0442\u0435 Android Studio.<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/896\/323\/0a0\/8963230a01d1b088927ca7a963485908.png\" alt=\"image\"\/><\/p>\n<p>  \u041e\u0442\u043a\u0440\u043e\u0435\u0442\u0441\u044f \u0441\u0442\u0430\u0440\u0442\u043e\u0432\u043e\u0435 \u043e\u043a\u043d\u043e (\u0435\u0441\u043b\u0438 \u043f\u0435\u0440\u0432\u044b\u0439 \u0437\u0430\u043f\u0443\u0441\u043a), \u0435\u0441\u043b\u0438 \u043d\u0435 \u043f\u0435\u0440\u0432\u044b\u0439 \u2014 \u0442\u043e \u043e\u0442\u043a\u0440\u043e\u0435\u0442\u0441\u044f \u0441\u0430\u043c\u0430 IDE, \u043d\u043e \u0441\u0443\u0442\u0438 \u043d\u0435 \u043c\u0435\u043d\u044f\u0435\u0442, \u043f\u0440\u043e\u0439\u0434\u0435\u043c \u0432 SDK Manager:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/29d\/7d9\/796\/29d7d979666367252fae50a0c9da1f4c.png\" alt=\"image\"\/><br \/>  \u0422\u0443\u0442 \u043d\u0443\u0436\u043d\u043e \u0433\u0430\u043b\u043e\u0447\u043a\u0430\u043c\u0438 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0432\u0430\u043c \u0432\u0435\u0440\u0441\u0438\u0438 Android, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c, \u0432 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e Android 4.4.2, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0445\u043e\u0442\u044c \u0432\u0441\u0435 \u0441\u0440\u0430\u0437\u0443. <\/p>\n<p>  \u0413\u043b\u0430\u0432\u043d\u043e\u0435 \u2014 \u0432\u044b\u0431\u0435\u0440\u0435\u0442\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u00abTools\u00bb \u0438 \u00abExtras\u00bb \u0438 \u043d\u0430\u0436\u0438\u043c\u0430\u0439\u0442\u0435 \u00abinstall packages\u00bb.<\/p>\n<p>  \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0443 \u0432\u0430\u0441 \u0432\u0441\u0435 \u0441\u043a\u0430\u0447\u0430\u043b\u043e\u0441\u044c, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0441\u044f IDE \u0441 \u0443\u043d\u044b\u043b\u044b\u043c \u0441\u0435\u0440\u044b\u043c \u0444\u043e\u043d\u043e\u043c \u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u043a\u043d\u043e\u043f\u043a\u0430\u043c\u0438, \u0436\u043c\u0435\u043c \u043f\u0435\u0440\u0432\u0443\u044e \u0438 \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442. \u0415\u0441\u043b\u0438 IDE \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0430\u0441\u044c \u0441\u0440\u0430\u0437\u0443 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438, \u0442\u043e: \u00abFile-&gt;New-&gt;New Project\u00bb<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/c2e\/dda\/877\/c2edda8778338e34f034a8e8023cbb46.png\" alt=\"image\"\/><br \/>  \u0417\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043f\u043e\u043b\u044f, \u0438 \u0436\u043c\u0435\u043c Next<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/4e3\/e39\/1e4\/4e3e391e4953b438397afe603cb75066.png\" alt=\"image\"\/><br \/>  \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043d\u0443\u0436\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u0430\u043d\u0434\u0440\u043e\u0438\u0434\u0430 \u0438 Next<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/5ff\/7be\/8c7\/5ff7be8c7edee05b6fc9dcfc314080b7.png\" alt=\"image\"\/><br \/>  \u0422\u0443\u0442 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c Blank Activity (\u043f\u0443\u0441\u0442\u043e\u0439 \u0448\u0430\u0431\u043b\u043e\u043d \u0441 Hello, World!)<\/p>\n<p>  \u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043e\u043a\u043d\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043b\u0430\u0441\u0441\u043e\u0432, \u044f \u043c\u0435\u043d\u044f\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0443 \u0434\u043b\u044f \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u043e\u0441\u0442\u0438:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/419\/3f4\/44b\/4193f444b9b73bea426414313dbeb530.png\" alt=\"image\"\/><\/p>\n<p>  \u0422\u043e\u0440\u0436\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0436\u043c\u0435\u043c Finich \u0438 \u0436\u0434\u0435\u043c, \u043f\u043e\u043a\u0430 IDE \u0432\u0441\u0435 \u0441\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0443\u0435\u0442 \u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b. <br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/d86\/08d\/50a\/d8608d50aa2c3d9eb593374530c4df18.png\" alt=\"image\"\/><\/p>\n<p>  \u041e\u0442\u043a\u0440\u043e\u0435\u0442\u0441\u044f \u043e\u043a\u043d\u043e \u0441 \u0434\u0438\u0437\u0430\u0439\u043d\u0435\u0440\u043e\u043c \u0444\u043e\u0440\u043c. \u041e\u043d\u043e \u043d\u0435 \u0442\u0430\u043a\u043e\u0435, \u043a\u0430\u043a \u0432 Lazarus, Delphi, \u043d\u043e \u0447\u0442\u043e-\u0442\u043e \u0441\u0445\u043e\u0436\u0435\u0435 \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u0438\u043c\u0435\u0435\u0442\u0441\u044f:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/6ec\/0ec\/6ff\/6ec0ec6ff2ea8c253bc12b26363028d7.png\" alt=\"image\"\/><\/p>\n<p>  \u041d\u0435 \u0441\u043f\u0435\u0448\u0438\u0442\u0435 \u043d\u0438\u0447\u0435\u0433\u043e \u043c\u0435\u043d\u044f\u0442\u044c \u0438\u043b\u0438 \u0447\u0442\u043e-\u0442\u043e \u0449\u0435\u043b\u043a\u0430\u0442\u044c, \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0435\u0449\u0435 \u043d\u0435 \u043e\u043a\u043e\u043d\u0447\u0435\u043d\u0430.<br \/>  \u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u00abTolls-&gt;Android-&gt;AVD Manager\u00bb \u0434\u043b\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430. <br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/b9c\/339\/423\/b9c339423913e9ed20d00cd9f8caa6e0.png\" alt=\"image\"\/><\/p>\n<p>  \u0422\u0443\u0442, \u0435\u0441\u043b\u0438 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435\u0442, \u0436\u043c\u0435\u043c \u00abCereate Virtual Device\u00bb, \u0435\u0441\u043b\u0438 \u0435\u0441\u0442\u044c, \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0435 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439, \u0443 \u043c\u0435\u043d\u044f \u0443\u0436\u0435 \u0431\u044b\u043b, \u0442.\u043a. \u044f \u00ab\u043d\u0430\u0442\u044b\u043a\u0430\u043b\u00bb \u0435\u0433\u043e, \u043f\u043e\u043a\u0430 \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043b\u0441\u044f. \u0415\u0441\u043b\u0438 \u0436\u0435 \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440, \u0442\u043e \u0442\u0430\u043c \u0432\u0441\u0435 \u043f\u0440\u043e\u0441\u0442\u043e:<br \/>  1. \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0440\u0430\u0437\u043c\u0435\u0440 \u044d\u043a\u0440\u0430\u043d\u0430 \u0438 \u043c\u043e\u0434\u0435\u043b\u044c \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430<br \/>  2. \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0432\u0435\u0440\u0441\u0438\u044e \u0430\u043d\u0434\u0440\u043e\u0438\u0434\u0430 (\u0443 \u043c\u0435\u043d\u044f 4.4.2)<br \/>  3. \u041d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e.<\/p>\n<p>  \u041d\u0430 \u0442\u0440\u0435\u0442\u044c\u0435\u043c \u0448\u0430\u0433\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/9af\/8db\/b86\/9af8dbb865a8459490cb053c0e67587b.png\" alt=\"image\"\/><\/p>\n<p>  \u0422.\u041a. \u0438\u0433\u0440\u0430 \u0443 \u043d\u0430\u0441 \u0432\u044b\u0442\u044f\u043d\u0443\u0442\u0430 \u043f\u043e \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u0438, \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u043e \u043b\u0430\u043d\u0434\u0448\u0430\u0444\u0442\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c.<\/p>\n<p>  \u041a\u043e\u0433\u0434\u0430 \u0432\u0441\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432\u0432\u0435\u0434\u0435\u043d\u044b, \u0436\u043c\u0435\u043c \u043d\u0430 \u0437\u0435\u043b\u0435\u043d\u044b\u0439 \u0442\u0440\u0435\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440. \u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0436\u0434\u0435\u043c, \u043a\u043e\u0433\u0434\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0441\u044f \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0441\u044f \u041e\u0421:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/7f3\/af9\/56e\/7f3af956eb86799e28cacf8d858b97a6.png\" alt=\"image\"\/><\/p>\n<p>  \u042d\u0442\u043e \u043e\u043a\u043d\u043e \u043d\u0435 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0439\u0442\u0435, \u0432 \u043d\u0435\u043c \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442\u044c \u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f. \u0422\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u0432 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440, \u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u044e \u0432 \u0434\u0438\u0437\u0430\u0439\u043d\u0435\u0440\u0435 \u0444\u043e\u0440\u043c:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/2de\/e01\/de4\/2dee01de4f3920af76f2f10e56cb52a2.png\" alt=\"image\"\/><\/p>\n<p>  \u041c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c! \u0412\u043e\u0442 \u0442\u0435\u043f\u0435\u0440\u044c \u0442\u043e\u0447\u043d\u043e \u043c\u043e\u0436\u043d\u043e.<br \/>  \u0415\u0441\u043b\u0438 \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u0437\u0430\u043f\u0440\u043e\u0441 \u043d\u0430 \u0432\u044b\u0431\u043e\u0440 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 \u2014 \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0433\u0430\u043b\u043e\u0447\u043a\u0443 \u0432\u043d\u0438\u0437\u0443:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/dfc\/db8\/4c7\/dfcdb84c78f9e40fa75352da4bc0b4cc.png\" alt=\"image\"\/><\/p>\n<p>  \u041c\u043e\u0438 \u043f\u043e\u0437\u0434\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f! \u0412\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043f\u0440\u043e\u0432\u0435\u0440\u0435\u043d\u043e!<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/846\/c1e\/4fc\/846c1e4fcdb2955bbbd90de08a4b1730.png\" alt=\"image\"\/><\/p>\n<p>  \u0421\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0435\u043c \u043d\u0430\u0448 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440 (\u041d\u043e \u043d\u0435 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c!) \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u0432 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440, \u0422\u0430\u043c \u0432\u0441\u0435 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0441\u043b\u043e\u0436\u043d\u0435\u0435 (\u0447\u0443\u0442\u044c-\u0447\u0443\u0442\u044c).<br \/>  \u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043d\u0443\u0436\u043d\u043e \u0432 \u0440\u0435\u0436\u0438\u043c \u00abText\u00bb. \u0423 \u0432\u0430\u0441 \u0432 activity_main \u043e\u043f\u0438\u0441\u0430\u043d\u044b \u0432\u0441\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0435\u0441\u0442\u044c \u043d\u0430 \u0444\u043e\u0440\u043c\u0435. \u0412\u043a\u043b\u044e\u0447\u0430\u044f \u0441\u0430\u043c\u0443 \u0444\u043e\u0440\u043c\u0443. \u0414\u0430 \u0438 \u043d\u0435 \u0444\u043e\u0440\u043c\u0430 \u044d\u0442\u043e \u0432\u043e\u0432\u0441\u0435 =). <\/p>\n<p>  \u0422.\u043a. \u043c\u044b \u0434\u0435\u043b\u0430\u0435\u043c \u0438\u0433\u0440\u0443 \u0432 HTML5, \u0430 \u0442\u0443\u0442 \u0443 \u043d\u0430\u0441 \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u0438\u0433\u0440\u044b, \u0443\u0434\u0430\u043b\u044f\u0435\u043c \u0432\u0435\u0441\u044c \u0442\u0435\u043a\u0441\u0442 \u0438 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<pre><code class=\"xml\">&lt;RelativeLayout xmlns:android=&quot;http:\/\/schemas.android.com\/apk\/res\/android&quot;     xmlns:tools=&quot;http:\/\/schemas.android.com\/tools&quot; android:layout_width=&quot;fill_parent&quot;     android:layout_height=&quot;fill_parent&quot;     tools:context=&quot;.MainActivity&quot;&gt;      &lt;WebView         android:layout_width=&quot;fill_parent&quot;         android:layout_height=&quot;fill_parent&quot;         android:id=&quot;@+id\/webView&quot;         android:clickable=&quot;true&quot;         android:scrollbars=&quot;none&quot; \/&gt; &lt;\/RelativeLayout&gt; <\/code><\/pre>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c, \u0435\u0441\u043b\u0438 \u043e\u043f\u044f\u0442\u044c \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u0434\u0438\u0437\u0430\u0439\u043d, \u0442\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0431\u0443\u0434\u0435\u0442 \u0438\u043d\u0430\u0447\u0435:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/aa7\/28e\/b19\/aa728eb19f89a283d0b0e77c844cfaf8.png\" alt=\"image\"\/><\/p>\n<p>  \u041a\u0430\u043a \u0432\u0438\u0434\u043d\u043e, \u0442\u0435\u043f\u0435\u0440\u044c \u0432\u043c\u0435\u0441\u0442\u043e \u00abHello, World\u00bb \u0432\u043e \u0432\u0441\u044e \u043a\u0440\u0430\u0441\u0443\u0435\u0442\u0441\u044f \u0440\u0430\u0441\u0442\u044f\u043d\u0443\u0442\u044b\u0439 \u043d\u0430 \u0432\u0435\u0441\u044c \u044d\u043a\u0440\u0430\u043d \u2014 WebView. \u042d\u0442\u043e\u0442 \u043e\u0431\u044a\u0435\u043a\u0442 \u0438 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0430\u0448\u0438\u043c \u00ab\u043e\u043a\u043d\u043e\u043c\u00bb \u0432 \u0438\u0433\u0440\u043e\u0432\u043e\u0439 \u043c\u0438\u0440.<\/p>\n<p>  \u041c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0434\u0430\u0436\u0435, \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u0431\u0443\u0434\u0435\u0442 \u0431\u0435\u043b\u044b\u0439 \u044d\u043a\u0440\u0430\u043d. \u0418\u0434\u0435\u043c \u0434\u0430\u043b\u044c\u0448\u0435.<\/p>\n<p>  \u0410 \u0434\u0430\u043b\u044c\u0448\u0435 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u0432 \u043d\u0430\u0448 \u043f\u0440\u043e\u0435\u043a\u0442, \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u043b\u0435\u0432\u0430 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u043b\u0435 \u00abProject\u00bb \u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0432\u043a\u043b\u0430\u0434\u043a\u0443 \u00abAndroid\u00bb, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u0430:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/3de\/8b2\/21d\/3de8b221d167a6412a8f918c93dd3c2e.png\" alt=\"image\"\/><br \/>  \u0412 \u044d\u0442\u043e\u0439 \u0432\u043a\u043b\u0430\u0434\u043a\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0438 \u0432\u0441\u0435 \u0435\u0433\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u044b \u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u044b.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u0441\u043f\u043e\u0439\u043b\u0435\u0440\u0430<\/b><\/p>\n<div class=\"spoiler_text\">\u041d\u0430\u043c \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043d\u0430\u0439\u0442\u0438 \u0444\u0430\u0439\u043b \u00ab\u043c\u0430\u043d\u0438\u0444\u0435\u0441\u0442\u00bb \u0438 \u0434\u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u00abapplication\u00bb \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443:<br \/>  <code> android:hardwareAccelerated=&quot;true&quot; <\/code>  <\/div>\n<\/div>\n<p>  \u041f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043e\u043c \u043d\u0430\u0448\u0435\u0433\u043e \u00ab\u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430\u00bb, \u0432\u0435\u0434\u044c \u044d\u0442\u043e \u0438\u043c\u0435\u043d\u043d\u043e \u043e\u043d! \u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u043a\u043b\u0430\u0441\u0441 \u00abMainActivity.java\u00bb \u0438 \u0443\u0434\u0430\u043b\u044f\u0435\u043c \u0432\u0441\u0435 \u043b\u0438\u0448\u043d\u0435\u0435, \u043e\u0441\u0442\u0430\u0432\u0438\u0432 \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435:  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u0441\u043f\u043e\u0439\u043b\u0435\u0440\u0430<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"java\">package com.soft.skaner.demogamehtml5;  import android.support.v7.app.AppCompatActivity; import android.os.Bundle;  public class MainActivity extends AppCompatActivity {      @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);     }   } <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u0415\u0441\u043b\u0438 \u043d\u0435 \u0437\u0430\u0431\u044b\u043b\u0438, \u043c\u044b \u0432 \u0444\u0430\u0439\u043b\u0435 activity_main \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 WebView, \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u0443\u044e \u0436\u0438\u0440\u043d\u044b\u043c \u0441\u0442\u0440\u043e\u0447\u043a\u0443:<br \/>  &lt;WebView<br \/>   android:layout_width=\u00abfill_parent\u00bb<br \/>   android:layout_height=\u00abfill_parent\u00bb<br \/>   <b>android:id=&quot;@+id\/webView&quot;<\/b><br \/>   android:clickable=\u00abtrue\u00bb<br \/>   android:scrollbars=\u00abnone\u00bb \/&gt;<\/p>\n<p>  \u041d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043e\u0431\u044a\u044f\u0432\u0438\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442 \u043a\u043b\u0430\u0441\u0441\u0430 WebView.<\/p>\n<p>  \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043a \u0441\u043f\u0438\u0441\u043a\u0443 \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0432 \u0434\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c:  <\/p>\n<pre><code class=\"java\">import android.webkit.WebView; <\/code><\/pre>\n<p>  \u0410 \u0437\u0430\u0442\u0435\u043c \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u0435\u043c \u043d\u0430\u0448 \u043e\u0431\u044a\u0435\u043a\u0442 myWeb \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043b\u0430\u0441\u0441\u0430 MainActivity:  <\/p>\n<pre><code class=\"java\">protected WebView myWeb; <\/code><\/pre>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c, \u043f\u043e\u0441\u043b\u0435 \u0441\u0442\u0440\u043e\u0447\u043a\u0438 <b>setContentView(R.layout.activity_main);<\/b> \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043a\u043e\u0434:  <\/p>\n<pre><code class=\"java\">        \/* \u041d\u0430\u0445\u043e\u0434\u0438\u043c \u043d\u0430\u0448 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 *\/         myWeb= (WebView) findViewById(R.id.webView);          \/* \u041d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c \u043d\u0430\u0448 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 *\/         myWeb.getSettings().setUseWideViewPort(true);         myWeb.setInitialScale(1);         myWeb.getSettings().setJavaScriptEnabled(true);                  \/* \u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043a\u0443 *\/         myWeb.loadUrl(&quot;file:\/\/\/android_asset\/index.html&quot;); <\/code><\/pre>\n<p>  \u0412\u043e\u0442 \u0447\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0443 \u043c\u0435\u043d\u044f \u0432 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0435:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/52b\/363\/b56\/52b363b562a4d7101a4bb0bf9fa0b24f.png\" alt=\"image\"\/><\/p>\n<p>  \u0410 \u0432\u043e\u0442, \u0447\u0442\u043e \u0432 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0435:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/464\/36a\/a1b\/46436aa1b7a7021ed50282c319263dfd.png\" alt=\"image\"\/><\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0442\u0430\u043a \u0436\u0435 \u2014 \u043c\u044b \u043d\u0430 \u0432\u0435\u0440\u043d\u043e\u043c \u043f\u0443\u0442\u0438!<\/p>\n<p>  \u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u0434\u0435\u043b\u043e \u0437\u0430 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u043c:<br \/>  \u0422\u0430\u043c, \u0433\u0434\u0435 \u043c\u044b \u043f\u043e\u0434\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u043d\u0430\u0448\u0435\u043c\u0443 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0443, \u043f\u0443\u0442\u044c \u043a \u0444\u0430\u0439\u043b\u0443 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a: \u00abfile:\/\/\/android_asset\/index.html\u00bb<br \/>  \u0421\u043b\u0435\u0434\u0443\u0435\u0442 \u0443\u0447\u0435\u0441\u0442\u044c, \u0447\u0442\u043e \u043b\u044e\u0431\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u0438 \u043d\u0430\u0448\u0435\u0439 \u0438\u0433\u0440\u044b, \u0438\u043c\u0435\u044f \u043a \u043d\u0438\u043c \u0434\u043e\u0441\u0442\u0443\u043f.<\/p>\n<p>  \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043a\u043b\u044e\u0447\u0435\u0432\u0430\u044f \u043f\u0430\u043f\u043a\u0430: \u00abandroid_asset\u00bb, \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0435\u0435 \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c (\u0434\u0430, \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0435\u0435 \u043d\u0435\u0442 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435):<br \/>  \u00abFile -&gt; New -&gt; Folder -&gt; Assets folder\u00bb, \u043e\u0442\u043a\u0440\u043e\u0435\u0442\u0441\u044f \u043e\u043a\u043d\u043e \u0433\u0434\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u0442\u044c\u0441\u044f \u0441 IDE.<br \/>  \u0417\u0430\u043c\u0435\u0442\u0438\u043b\u0438? \u0412 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u043d\u043e\u0432\u0430\u044f \u043f\u0430\u043f\u043a\u0430:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/b55\/d99\/6c4\/b55d996c4605e9da8e1079db894e4cd0.png\" alt=\"image\"\/><\/p>\n<p>  \u0416\u043c\u0435\u043c \u043f\u043e \u043d\u0435\u0439 \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u043c\u044b\u0448\u0438 -&gt; \u00abShow in Files\u00bb, \u043e\u0442\u043a\u0440\u043e\u0435\u0442\u0441\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u043f\u0440\u043e\u0432\u043e\u0434\u043d\u0438\u043a (\u0432 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 Nautilus), \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u043f\u0443\u0442\u044c \u043a \u043f\u0430\u043f\u043a\u0435. \u0418\u043c\u0435\u0439\u0442\u0435 \u0442\u0430\u043a \u0436\u0435 \u0432\u0432\u0438\u0434\u0443, \u0447\u0442\u043e \u043f\u0430\u043f\u043a\u0430 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u00abassets\u00bb, \u043d\u043e \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043d\u0435\u0439 \u0438\u0434\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 \u00abandroid_asset\u00bb.<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/637\/98a\/734\/63798a7342cd5e9435343cc0a20c8791.png\" alt=\"image\"\/><\/p>\n<p>  \u0414\u0430\u043b\u044c\u0448\u0435 \u0432\u0441\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u043f\u0440\u043e\u0441\u0442\u043e \u2014 \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u043c \u043d\u0430\u0448\u0443 \u0438\u0433\u0440\u0443 \u0432 \u043f\u0430\u043f\u043a\u0443 assets:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/21c\/4cb\/066\/21c4cb066edcf313931220790d4055e9.png\" alt=\"image\"\/><\/p>\n<p>  \u0424\u0430\u0439\u043b index.html \u2014 \u044d\u0442\u043e \u0442\u043e\u0442 \u0441\u0430\u043c\u044b\u0439 index \u0438\u0437 \u043d\u0430\u0447\u0430\u043b\u0430 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438. \u041d\u0443 \u0447\u0442\u043e, \u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c!<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/7a7\/01d\/38b\/7a701d38b5528541c42c4e53c4d7c5dd.png\" alt=\"image\"\/><\/p>\n<p>  <i>\u041d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0441\u043e\u0432\u0435\u0442: \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043b\u0443\u0447\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043d\u0430 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435 \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c USB, \u0442\u0430\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0442\u0435\u0441\u0442\u0430 \u0431\u0443\u0434\u0443\u0442 \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u0435\u0435, \u0434\u0430 \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u043c\u044b\u0448\u044c\u044e \u043d\u0435 \u0441\u0430\u043c\u044b\u0439 \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442, \u043d\u0435 \u0433\u043e\u0432\u043e\u0440\u044f \u0443\u0436\u0435 \u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u043c \u043d\u0430\u0436\u0430\u0442\u0438\u0438.<\/i><\/p>\n<p>  <b>\u0428\u0430\u0433 3. Android Studio. \u0421\u0431\u043e\u0440\u043a\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438 \u0435\u0433\u043e \u043f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u043d\u0438\u0435<\/b><\/p>\n<p>  \u041a\u043e\u0433\u0434\u0430 \u0438\u0433\u0440\u0430 \u0432\u0430\u043c\u0438 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043e\u0442\u043b\u0430\u0436\u0435\u043d\u0430 (\u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435 \u0438\u043b\u0438 \u043d\u0430 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0435), \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0433\u043e\u0442\u043e\u0432\u0430 \u0438 \u0432\u0441\u0435 \u044d\u0442\u0430\u043f\u044b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u043e\u0437\u0430\u0434\u0438, \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435. Android Studio \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438 \u043f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0438\u0445 \u0432\u0430\u0448\u0438\u043c\u0438 \u043a\u043b\u044e\u0447\u0430\u043c\u0438.<\/p>\n<p>  \u0414\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043b\u044e\u0447\u0435\u0439 \u0432 \u044d\u0442\u043e\u0439 IDE \u0435\u0441\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u0430\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u0430 \u00abKeyTool\u00bb.<\/p>\n<p>  \u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f (\u00abBuild -&gt; Generate Signed APK\u00bb):<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/258\/5c9\/aa3\/2585c9aa39344af50041870b7ed98f27.png\" alt=\"image\"\/><\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0440\u0430\u043d\u0435\u0435 \u043a\u043b\u044e\u0447\u0435\u0439 \u0438 \u0430\u043b\u0438\u0430\u0441\u043e\u0432 \u0432\u044b \u043d\u0435 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b\u0438, \u043d\u0430\u0436\u0438\u043c\u0430\u0439\u0442\u0435 \u00abCreate New\u00bb<br \/>  \u0417\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043f\u043e\u043b\u044f \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430 \u0441\u0432\u043e\u0435 \u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u0435, \u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u043d\u043e\u0441\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0445 \u0446\u0435\u043b\u0438\u043a\u043e\u043c \u043b\u0435\u0436\u0438\u0442 \u043d\u0430 \u0432\u0430\u0441.<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/09c\/8bc\/db7\/09c8bcdb74d70bfc3a9b5070e26b11e7.png\" alt=\"image\"\/><\/p>\n<p>  \u041f\u0435\u0440\u0432\u043e\u0435 \u043f\u043e\u043b\u0435 \u2014 \u044d\u0442\u043e \u043f\u0443\u0442\u044c \u043a \u043f\u0430\u043f\u043a\u0435, \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d \u043a\u043b\u044e\u0447.<br \/>  \u0424\u043e\u0440\u043c\u0430 \u043f\u043e\u0441\u043b\u0435 \u043d\u0430\u0436\u0430\u0442\u0438\u044f Ok \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/ae4\/351\/9f8\/ae43519f85eeeec91b8f193c7e6948f8.png\" alt=\"image\"\/><\/p>\n<p>  \u0414\u043b\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u043a\u043b\u044e\u0447\u0438 \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0432\u0430\u0448\u0438\u043c \u043a\u043b\u044e\u0447\u0435\u043c \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0438\u043c\u0435\u043d\u043d\u043e \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0438 \u0435\u0441\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0430 \u00abChoose Existing\u00bb<br \/>  \u041d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0448\u0430\u0433\u0435 IDE \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u0442 \u0443 \u0432\u0430\u0441 \u0435\u0449\u0435 \u0440\u0430\u0437 \u0432\u0432\u0435\u0441\u0442\u0438 \u043f\u0430\u0440\u043e\u043b\u044c, \u0430 \u0437\u0430\u0442\u0435\u043c \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u0430\u043f\u043a\u0443 \u0434\u043b\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f APK \u0444\u0430\u0439\u043b\u0430.<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/313\/40a\/735\/31340a7351642baa85a78fc26470f9e4.png\" alt=\"image\"\/><\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u0435\u0442\u0435 \u0440\u0430\u0441\u0441\u043b\u0430\u0431\u0438\u0442\u044c\u0441\u044f \u0438 \u043f\u043e\u043f\u0438\u0442\u044c, \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443, \u043a\u043e\u0444\u0435.\u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043d\u0430\u0447\u0430\u043b\u0430 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044e, \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432 \u0441\u0442\u0430\u0442\u0443\u0441\u0431\u0430\u0440\u0435:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/c19\/ab6\/eb3\/c19ab6eb3a2b4477bbe521bf7a8f5847.png\" alt=\"image\"\/><\/p>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u0441\u044f, \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0432\u0430\u043c \u043e\u0431 \u044d\u0442\u043e\u043c \u0441\u043e\u043e\u0431\u0449\u0438\u0442.<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/f2d\/959\/7bb\/f2d9597bbc181b058019b653b7f02b25.png\" alt=\"image\"\/><br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/09e\/98c\/902\/09e98c902274a5944bb708c408433259.png\" alt=\"image\"\/><\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0444\u0430\u0439\u043b \u043d\u0430 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \/ \u043f\u043b\u0430\u043d\u0448\u0435\u0442 \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c, \u043a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435.<\/p>\n<p>  \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: <br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/34a\/f9f\/8ae\/34af9f8aea9454914a58804c3591a24c.jpg\" alt=\"image\"\/><br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/2d7\/b81\/317\/2d7b813179204b98cd00fb4aa9ca855a.jpg\" alt=\"image\"\/><\/p>\n<p>  \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0435\u0433\u043e \u0442\u0430\u043a \u0436\u0435 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043d\u0430 \u0441\u0432\u043e\u0435\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435: <a href=\"https:\/\/drive.google.com\/file\/d\/0B09c3UoyWG0xTVpnVHJpckNfSmM\/view?usp=sharing\">J2ds Demo HTML5<\/a>     \t<\/p>\n<div class=\"clear\"><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/habrahabr.ru\/post\/265247\/\"> http:\/\/habrahabr.ru\/post\/265247\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>     \t<b>\u0412\u043c\u0435\u0441\u0442\u043e \u0432\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u044f.<\/b><br \/>  \u041f\u043e\u0442\u0440\u0430\u0442\u0438\u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0443\u0442\u043e\u043a \u043f\u043e\u0434\u0440\u044f\u0434 (\u0431\u0435\u0437 \u043f\u0435\u0440\u0435\u0440\u044b\u0432\u0430 \u043d\u0430 \u0441\u043e\u043d) \u043d\u0430 \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 HTML5 \u0432\u0441\u0435\u043c\u0438 \u043b\u044e\u0431\u0438\u043c\u044b\u043c\u0438 Android-\u0433\u0430\u0434\u0436\u0435\u0442\u0430\u043c\u0438, \u0440\u0435\u0448\u0438\u043b, \u0447\u0442\u043e \u0434\u0430\u043d\u043d\u043e\u0439 \u0442\u0435\u043c\u0435 \u0441\u0442\u043e\u0438\u0442 \u0443\u0434\u0435\u043b\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u044e\u0441\u044c \u0440\u0430\u0441\u043a\u0440\u044b\u0442\u044c \u043f\u043e \u0448\u0430\u0433\u0430\u043c \u0432\u0441\u0435 \u044d\u0442\u0430\u043f\u044b (\u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435 \u0431\u0430\u0437\u043e\u0432\u044b\u0435\/\u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0435\/\u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435) \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f HTML5 \u0418\u0433\u0440\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0434\u043b\u044f Android \u043e\u0442 \u0438\u0434\u0435\u0438 \u0434\u043e \u0440\u0435\u043b\u0438\u0437\u0430 \u0441\u0430\u043c\u043e\u0433\u043e APK \u0444\u0430\u0439\u043b\u0430.<br \/>  \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u043e\u0432\u043e\u0433\u043e \u044f \u0438 \u043d\u0435 \u043e\u0442\u043a\u0440\u043e\u044e \u043c\u0430\u0441\u0442\u0438\u0442\u044b\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c, \u043d\u043e \u0434\u043b\u044f \u043d\u043e\u0432\u0438\u0447\u043a\u043e\u0432 \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u044e\u0441\u044c \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0432\u0441\u0435 \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0449\u0435, \u0441\u043e \u0441\u043a\u0440\u0438\u043d\u0448\u043e\u0442\u0430\u043c\u0438 \u0438 \u043f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u044f\u043c\u0438. <br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/380\/1f9\/242\/3801f924299bb35056b7e05122f7e375.jpg\" alt=\"image\"\/><br \/>  \u0416\u0435\u043b\u0430\u044e\u0449\u0438\u0445 \u0443\u0437\u043d\u0430\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0430\u044e \u043f\u043e\u0434 \u043a\u0430\u0442. <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-264069","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/264069","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=264069"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/264069\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=264069"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=264069"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=264069"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}