{"id":1506,"date":"2025-07-04T23:10:24","date_gmt":"2025-07-04T20:10:24","guid":{"rendered":"https:\/\/www.aimp.ru\/blogs\/?p=1506"},"modified":"2025-07-28T11:19:46","modified_gmt":"2025-07-28T08:19:46","slug":"","status":"publish","type":"post","link":"https:\/\/aimp.ru\/blogs\/?p=1506&language=en","title":{"rendered":"AIMP for Android v4.20","raw":"AIMP for Android v4.20"},"content":{"rendered":"\n<p>Key feature of this release is support for track part repeating (aka A-B repeat).<\/p>\n\n\n\n<!--more READ MORE-->\n\n\n\n<p><strong>Part track repeat<\/strong><\/p>\n\n\n\n<p>In general case, especially if you use a third-party skin, the command to start track part repeat is located in context menu of navigation bar:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-medium\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"278\" src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-04-en-300x278.png\" alt=\"\" class=\"wp-image-1511\" srcset=\"https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-04-en-300x278.png 300w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-04-en-624x578.png 624w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-04-en.png 648w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/figure>\n<\/div>\n\n\n<p>In default skin (Charm), the command is duplicated by a button at bottom of main screen. When you tap on the button, the track part repeat control panel appears:<\/p>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-medium\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"278\" src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-03-300x278.png\" alt=\"a-b repeat\" class=\"wp-image-1509\" srcset=\"https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-03-300x278.png 300w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-03-624x578.png 624w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-03.png 648w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/figure>\n<\/div>\n\n\n<p>Taps on the A\/B buttons set timestamps to current playback position. As soon as both timestamps will be set, track part repeating will be started.<\/p>\n\n\n\n<p>Note the control panel can be dragged on the screen in free way.<\/p>\n\n\n\n<p>Track part repeating will be disabled on closing the control panel by tap on the &#8220;X&#8221; button or the &#8220;A-B&#8221; button.<\/p>\n\n\n\n<p><strong>UI Improvements<\/strong><\/p>\n\n\n\n<p>Improved visual perception of the app&#8217;s context menus:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-medium\"><img loading=\"lazy\" decoding=\"async\" width=\"189\" height=\"300\" src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/menus-189x300.png\" alt=\"\" class=\"wp-image-1515\" srcset=\"https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/menus-189x300.png 189w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/menus-645x1024.png 645w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/menus-768x1220.png 768w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/menus-967x1536.png 967w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/menus-624x991.png 624w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/menus.png 1080w\" sizes=\"auto, (max-width: 189px) 100vw, 189px\" \/><\/figure>\n<\/div>\n\n\n<p>Note that the icons for menu commands are set at skin level, and will only be displayed when using skins adapted for v4.20.<\/p>\n\n\n\n<p><span style=\"text-decoration: underline;\">Panini v2<\/span><\/p>\n\n\n\n<p>New major version of the Panini skin by AJ with full support of v4.20!<\/p>\n\n\n\n<p><strong>Custom button for Notification Area \/ Android Auto<\/strong><\/p>\n\n\n\n<p>In control settings of app, now you can specify the action that will be displayed in notification area \/ Android Auto:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"650\" height=\"341\" src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/auto.png\" alt=\"\" class=\"wp-image-1516\" srcset=\"https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/auto.png 650w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/auto-300x157.png 300w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/auto-624x327.png 624w\" sizes=\"auto, (max-width: 650px) 100vw, 650px\" \/><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"247\" src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/widget.png\" alt=\"\" class=\"wp-image-1518\" srcset=\"https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/widget.png 500w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/widget-300x148.png 300w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/figure>\n<\/div>\n\n\n<p>Currently, following actions are available for selection:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Add to Favorites<\/li>\n\n\n\n<li>Add to Bookmarks<\/li>\n\n\n\n<li>Fast forward \/ Rewind<\/li>\n\n\n\n<li>Repeat Playlist \/ Track \/ Off<\/li>\n\n\n\n<li>Shuffle Playback<\/li>\n\n\n\n<li>Next group in playlist<\/li>\n\n\n\n<li>Next playlist<\/li>\n<\/ul>\n\n\n\n<p><strong>Also<\/strong><\/p>\n\n\n\n<p>Since v4.20, AIMP will able to import group of files from external applications via the &#8220;share with&#8221; command.<\/p>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center\">Changes in Skin Engine<\/h2>\n\n\n\n<p><strong>Track Part Repeating (\u0410-B)<\/strong><\/p>\n\n\n\n<p>Support for track part repeating can be implemented in one of three ways::<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>full integration into the skin<\/li>\n\n\n\n<li>floating view<\/li>\n\n\n\n<li>floating view with custom design<\/li>\n<\/ol>\n\n\n\n<p>By default, the skin engine uses a floating view (#2), where the appearance is built automatically based on the colors that are set at the skin level for pop-up windows:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-medium\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"89\" src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-01-300x89.png\" alt=\"\" class=\"wp-image-1507\" srcset=\"https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-01-300x89.png 300w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-01-1024x303.png 1024w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-01-768x228.png 768w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-01-624x185.png 624w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-01.png 1080w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/figure>\n<\/div>\n\n\n<p>The view can be moved within parent container. In option #2, the topmost container from main window is taken as parent container. In option #3, the designer decides where exactly floating view will moved.<\/p>\n\n\n\n<p>How th skin engine works: first of all, it looks at whether the floating view on skin side is overridden, if not, it checks whether binding is used for A-B repeat commands, if not, it generates a floating view by default.<\/p>\n\n\n\n<p>Option #1 is simple: we throw the necessary elements into the window and bind them to new commands (a list of new commands can be found in the help for the updated skin editor).<\/p>\n\n\n\n<p>Option #3 is little bit complex: to redefine the floating view at skin level, you need to place a special element into one of containers (where it will be moved):<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"742\" height=\"204\" src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-special.png\" alt=\"\" class=\"wp-image-1512\" srcset=\"https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-special.png 742w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-special-300x82.png 300w, https:\/\/aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-special-624x172.png 624w\" sizes=\"auto, (max-width: 742px) 100vw, 742px\" \/><\/figure>\n<\/div>\n\n\n<p>Next, just customize it as you want. Elements inside the container can be changed\/deleted. The container itself must remains.<\/p>\n\n\n\n<p><strong>Context Menu Icons<\/strong><\/p>\n\n\n\n<p>Icons for context menus can be defined in the Resource Repository of the Skin Editor tool.<\/p>\n\n\n\n<p>Note that context menu icons are optional feature, you may want to define just few or not define them at all.<\/p>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center\">Testing<\/h2>\n\n\n\n<p>Test build of the v4.20 is already available for downloading from <a href=\"https:\/\/www.aimp.ru\/?do=download&amp;os=android#beta\" data-type=\"link\" data-id=\"https:\/\/www.aimp.ru\/?do=download&amp;os=android#beta\" target=\"_blank\" rel=\"noreferrer noopener\">our site<\/a> or <a href=\"https:\/\/play.google.com\/apps\/testing\/com.aimp.player\" data-type=\"link\" data-id=\"https:\/\/play.google.com\/apps\/testing\/com.aimp.player\" target=\"_blank\" rel=\"noreferrer noopener\">beta-testing page<\/a> of Google Play.<\/p>\n","protected":false,"raw":"<!-- wp:paragraph -->\n<p>Key feature of this release is support for track part repeating (aka A-B repeat).<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:more {\"customText\":\"READ MORE\"} -->\n<!--more READ MORE-->\n<!-- \/wp:more -->\n\n<!-- wp:paragraph -->\n<p><strong>Part track repeat<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>In general case, especially if you use a third-party skin, the command to start track part repeat is located in context menu of navigation bar:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1511,\"sizeSlug\":\"medium\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-medium\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-04-en-300x278.png\" alt=\"\" class=\"wp-image-1511\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>In default skin (Charm), the command is duplicated by a button at bottom of main screen. When you tap on the button, the track part repeat control panel appears:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1509,\"sizeSlug\":\"medium\",\"linkDestination\":\"none\",\"align\":\"center\",\"className\":\"is-style-default\"} -->\n<figure class=\"wp-block-image aligncenter size-medium is-style-default\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-03-300x278.png\" alt=\"a-b repeat\" class=\"wp-image-1509\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Taps on the A\/B buttons set timestamps to current playback position. As soon as both timestamps will be set, track part repeating will be started.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Note the control panel can be dragged on the screen in free way.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Track part repeating will be disabled on closing the control panel by tap on the \"X\" button or the \"A-B\" button.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>UI Improvements<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Improved visual perception of the app's context menus:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1515,\"sizeSlug\":\"medium\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-medium\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/menus-189x300.png\" alt=\"\" class=\"wp-image-1515\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Note that the icons for menu commands are set at skin level, and will only be displayed when using skins adapted for v4.20.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><span style=\"text-decoration: underline;\">Panini v2<\/span><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>New major version of the Panini skin by AJ with full support of v4.20!<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Custom button for Notification Area \/ Android Auto<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>In control settings of app, now you can specify the action that will be displayed in notification area \/ Android Auto:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1516,\"sizeSlug\":\"full\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/auto.png\" alt=\"\" class=\"wp-image-1516\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:image {\"id\":1518,\"sizeSlug\":\"full\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/widget.png\" alt=\"\" class=\"wp-image-1518\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Currently, following actions are available for selection:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li>Add to Favorites<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Add to Bookmarks<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Fast forward \/ Rewind<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Repeat Playlist \/ Track \/ Off<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Shuffle Playback<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Next group in playlist<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Next playlist<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p><strong>Also<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Since v4.20, AIMP will able to import group of files from external applications via the \"share with\" command.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"textAlign\":\"center\"} -->\n<h2 class=\"wp-block-heading has-text-align-center\">Changes in Skin Engine<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p><strong>Track Part Repeating (\u0410-B)<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Support for track part repeating can be implemented in one of three ways::<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:list {\"ordered\":true} -->\n<ol class=\"wp-block-list\"><!-- wp:list-item -->\n<li>full integration into the skin<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>floating view<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>floating view with custom design<\/li>\n<!-- \/wp:list-item --><\/ol>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p>By default, the skin engine uses a floating view (#2), where the appearance is built automatically based on the colors that are set at the skin level for pop-up windows:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1507,\"sizeSlug\":\"medium\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-medium\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-01-300x89.png\" alt=\"\" class=\"wp-image-1507\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>The view can be moved within parent container. In option #2, the topmost container from main window is taken as parent container. In option #3, the designer decides where exactly floating view will moved.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>How th skin engine works: first of all, it looks at whether the floating view on skin side is overridden, if not, it checks whether binding is used for A-B repeat commands, if not, it generates a floating view by default.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Option #1 is simple: we throw the necessary elements into the window and bind them to new commands (a list of new commands can be found in the help for the updated skin editor).<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Option #3 is little bit complex: to redefine the floating view at skin level, you need to place a special element into one of containers (where it will be moved):<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1512,\"sizeSlug\":\"full\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-special.png\" alt=\"\" class=\"wp-image-1512\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Next, just customize it as you want. Elements inside the container can be changed\/deleted. The container itself must remains.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Context Menu Icons<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Icons for context menus can be defined in the Resource Repository of the Skin Editor tool.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Note that context menu icons are optional feature, you may want to define just few or not define them at all.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"textAlign\":\"center\"} -->\n<h2 class=\"wp-block-heading has-text-align-center\">Testing<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Test build of the v4.20 is already available for downloading from <a href=\"https:\/\/www.aimp.ru\/?do=download&amp;os=android#beta\" data-type=\"link\" data-id=\"https:\/\/www.aimp.ru\/?do=download&amp;os=android#beta\" target=\"_blank\" rel=\"noreferrer noopener\">our site<\/a> or <a href=\"https:\/\/play.google.com\/apps\/testing\/com.aimp.player\" data-type=\"link\" data-id=\"https:\/\/play.google.com\/apps\/testing\/com.aimp.player\" target=\"_blank\" rel=\"noreferrer noopener\">beta-testing page<\/a> of Google Play.<\/p>\n<!-- \/wp:paragraph -->"},"excerpt":{"rendered":"","protected":false,"raw":""},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_ru_post_content":"<!-- wp:paragraph -->\n<p>\u041a\u043b\u044e\u0447\u0435\u0432\u043e\u0439 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044c\u044e \u044d\u0442\u043e\u0433\u043e \u0440\u0435\u043b\u0438\u0437\u0430 \u0441\u0442\u0430\u043b\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043f\u043e\u0432\u0442\u043e\u0440\u0430 \u043e\u0442\u0440\u0435\u0437\u043a\u0430 \u0442\u0440\u0435\u043a\u0430 (\u0442.\u043d. A-\u0411 \u043f\u043e\u0432\u0442\u043e\u0440).<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:more -->\n<!--more-->\n<!-- \/wp:more -->\n\n<!-- wp:paragraph -->\n<p><strong>\u041f\u043e\u0432\u0442\u043e\u0440 \u043e\u0442\u0440\u0435\u0437\u043a\u0430 \u0442\u0440\u0435\u043a\u0430<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u0412 \u043e\u0431\u0449\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e, \u0435\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0439 \u0441\u043a\u0438\u043d, \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0432\u044b\u0437\u043e\u0432\u0430 \u043f\u043e\u0432\u0442\u043e\u0440\u0430 \u043e\u0442\u0440\u0435\u0437\u043a\u0430 \u0442\u0440\u0435\u043a\u0430 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u043d\u043e\u043c \u043c\u0435\u043d\u044e \u043f\u043e\u043b\u043e\u0441\u044b \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1510,\"sizeSlug\":\"medium\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-medium\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-04-ru-300x278.png\" alt=\"\" class=\"wp-image-1510\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>\u0412 \u0441\u043a\u0438\u043d\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e - Charm - \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043f\u0440\u043e\u0434\u0443\u0431\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u0432\u043d\u0438\u0437\u0443 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u044d\u043a\u0440\u0430\u043d\u0430. \u041a\u043e\u0433\u0434\u0430 \u0432\u044b \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442\u0435 \u043f\u043e\u0432\u0442\u043e\u0440 \u043e\u0442\u0440\u0435\u0437\u043a\u0430 \u0442\u0440\u0435\u043a\u0430, \u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0432\u0442\u043e\u0440\u043e\u043c:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1509,\"sizeSlug\":\"medium\",\"linkDestination\":\"none\",\"align\":\"center\",\"className\":\"is-style-default\"} -->\n<figure class=\"wp-block-image aligncenter size-medium is-style-default\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-03-300x278.png\" alt=\"a-b repeat\" class=\"wp-image-1509\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>\u0422\u0430\u043f\u044b \u043f\u043e \u043a\u043d\u043e\u043f\u043a\u0435 A \/ \u0411 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u044e\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043c\u0435\u0442\u043a\u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f. \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u0434\u0430\u043d\u044b \u043e\u0431\u0435 \u043c\u0435\u0442\u043a\u0438 - \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0441\u044f \u043f\u043e\u0432\u0442\u043e\u0440 \u043e\u0442\u0440\u0435\u0437\u043a\u0430 \u0442\u0440\u0435\u043a\u0430.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u041f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043c\u043e\u0436\u043d\u043e \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e \u0434\u0432\u0438\u0433\u0430\u0442\u044c \u043f\u043e \u044d\u043a\u0440\u0430\u043d\u0443.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u041f\u043e\u0432\u0442\u043e\u0440 \u043e\u0442\u0440\u0435\u0437\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d \u043f\u0440\u0438 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u0438 \u043f\u0430\u043d\u0435\u043b\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0430\u043f\u043e\u043c \u043f\u043e \u043a\u043d\u043e\u043f\u043a\u0435 \"\u0425\" \u0438\u043b\u0438 \u043f\u043e \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u043c\u0443 \u043d\u0430\u0436\u0430\u0442\u0438\u044e \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443 \"\u0410-B\" \u0432\u043d\u0438\u0437\u0443 \u043e\u043a\u043d\u0430.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432 UI<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u0423\u043b\u0443\u0447\u0448\u0438\u043b\u0438 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u043e\u0441\u043f\u0440\u0438\u044f\u0442\u0438\u0435 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u043d\u044b\u0445 \u043c\u0435\u043d\u044e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1515,\"sizeSlug\":\"medium\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-medium\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/menus-189x300.png\" alt=\"\" class=\"wp-image-1515\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>\u0422\u0443\u0442 \u0441\u0442\u043e\u0438\u0442 \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0438\u043a\u043e\u043d\u043a\u0438 \u0443 \u043a\u043e\u043c\u0430\u043d\u0434 \u043c\u0435\u043d\u044e \u0437\u0430\u0434\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0441\u043a\u0438\u043d\u043e\u0432, \u0438 \u0431\u0443\u0434\u0443\u0442 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u0434 v4.20 \u0441\u043a\u0438\u043d\u043e\u0432.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><span style=\"text-decoration: underline;\">Panini v2<\/span><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u041d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u043a\u0438\u043d\u0430 \u043e\u0442 AJ \u0441 \u043f\u043e\u043b\u043d\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 v4.20!<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0430\u044f \u043a\u043d\u043e\u043f\u043a\u0430 \u0432 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0438 \/ Android Auto<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u0412 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u044b\u0431\u0440\u0430\u0442\u044c, \u043a\u0430\u043a\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c\u0441\u044f \u0432 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439 \/ \u043d\u0430 \u0433\u043b\u0430\u0432\u043d\u043e\u043c \u044d\u043a\u0440\u0430\u043d\u0435 Android Auto:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1516,\"sizeSlug\":\"full\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/auto.png\" alt=\"\" class=\"wp-image-1516\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:image {\"id\":1518,\"sizeSlug\":\"full\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/widget.png\" alt=\"\" class=\"wp-image-1518\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>\u041d\u0430 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li>\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u0438\u0437\u0431\u0440\u0430\u043d\u043d\u043e\u0435<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u0437\u0430\u043a\u043b\u0430\u0434\u043a\u0438<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>\u041f\u0435\u0440\u0435\u043c\u043e\u0442\u0430\u0442\u044c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0432\u043f\u0435\u0440\u0435\u0434\/\u043d\u0430\u0437\u0430\u0434<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>\u041f\u043e\u0432\u0442\u043e\u0440 \u043f\u043b\u0435\u0439\u043b\u0438\u0441\u0442\u0430 \/ \u0442\u0440\u0435\u043a\u0430<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>\u041f\u0440\u043e\u0438\u0433\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0432\u0440\u0430\u0437\u043d\u043e\u0431\u043e\u0439<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0433\u0440\u0443\u043f\u043f\u0430<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043f\u043b\u0435\u0439\u043b\u0438\u0441\u0442<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p><strong>\u041f\u043e\u043c\u0438\u043c\u043e \u044d\u0442\u043e\u0433\u043e<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043b\u0435\u0435\u0440 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0438\u043c\u043f\u043e\u0440\u0442 \u0433\u0440\u0443\u043f\u043f\u044b \u0444\u0430\u0439\u043b\u043e\u0432 \u0438\u0437 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u044b \"\u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f\"<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"textAlign\":\"center\"} -->\n<h2 class=\"wp-block-heading has-text-align-center\">\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432 Skin Engine<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p><strong>\u041f\u043e\u0432\u0442\u043e\u0440 \u043e\u0442\u0440\u0435\u0437\u043a\u0430 (\u0410-B)<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043f\u043e\u0432\u0442\u043e\u0440\u0430 \u043e\u0442\u0440\u0435\u0437\u043a\u0430 \u0442\u0440\u0435\u043a\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u0442\u0440\u0451\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:list {\"ordered\":true} -->\n<ol class=\"wp-block-list\"><!-- wp:list-item -->\n<li>\u043f\u043e\u043b\u043d\u0430\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0432 \u0441\u043a\u0438\u043d<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>\u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0430\u044f \u043f\u0430\u043d\u0435\u043b\u044c<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>\u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0430\u044f \u043f\u0430\u043d\u0435\u043b\u044c \u0441\u043e \u0441\u0432\u043e\u0438\u043c \u0434\u0438\u0437\u0430\u0439\u043d\u043e\u043c<\/li>\n<!-- \/wp:list-item --><\/ol>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p>\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0441\u043a\u0438\u043d-\u0434\u0432\u0438\u0436\u043e\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0443\u044e \u043f\u0430\u043d\u0435\u043b\u044c (\u21162), \u0433\u0434\u0435 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0432\u0438\u0434 \u0441\u0442\u0440\u043e\u0438\u0442\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0442\u0435\u0445 \u0446\u0432\u0435\u0442\u043e\u0432, \u0447\u0442\u043e \u0437\u0430\u0434\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0441\u043a\u0438\u043d\u0430 \u0434\u043b\u044f \u0432\u0441\u043f\u043b\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u043e\u043a\u043e\u043d:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1507,\"sizeSlug\":\"medium\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-medium\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-01-300x89.png\" alt=\"\" class=\"wp-image-1507\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>\u041f\u0430\u043d\u0435\u043b\u044c \u043c\u043e\u0436\u043d\u043e \u0434\u0432\u0438\u0433\u0430\u0442\u044c \u0432 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u0445 \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430. \u0412 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0435 \u21162 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u0431\u0435\u0440\u0435\u0442\u0441\u044f \u0441\u0430\u043c\u044b\u0439 \u0432\u0435\u0440\u0445\u043d\u0438\u0439 \u043e\u0442 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043e\u043a\u043d\u0430. \u0412 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0435 \u21163 \u0434\u0438\u0437\u0430\u0439\u043d\u0435\u0440 \u0441\u0430\u043c \u0440\u0435\u0448\u0430\u0435\u0442, \u0433\u0434\u0435 \u0438\u043c\u0435\u043d\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \"\u0435\u0437\u0434\u0438\u0442\u044c\" \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0430\u044f \u043f\u0430\u043d\u0435\u043b\u044c.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u041a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441\u043a\u0438\u043d-\u0434\u0432\u0438\u0436\u043e\u043a: \u0432 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u043e\u043d \u0441\u043c\u043e\u0442\u0440\u0438\u0442, \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 \u043b\u0438 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0430\u044f \u043f\u0430\u043d\u0435\u043b\u044c \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u0441\u043a\u0438\u043d\u0430, \u0435\u0441\u043b\u0438 \u043d\u0435\u0442 - \u043e\u043d \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043b\u0438 \u0431\u0438\u043d\u0434\u0438\u043d\u0433 \u0434\u043b\u044f \u043a\u043e\u043c\u0430\u043d\u0434 A-B \u043f\u043e\u0432\u0442\u043e\u0440\u0430, \u0435\u0441\u043b\u0438 \u043d\u0435\u0442 - \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0443\u044e \u043f\u0430\u043d\u0435\u043b\u044c \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u0421 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u043c \u21161 \u0432\u0441\u0435 \u043f\u0440\u043e\u0441\u0442\u043e - \u043d\u0430\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u043c \u043d\u0443\u0436\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0432 \u043e\u043a\u043d\u043e \u0438 \u0431\u0438\u043d\u0434\u0438\u043c \u0438\u0445 \u043a \u043d\u043e\u0432\u044b\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c (\u0441\u043f\u0438\u0441\u043e\u043a \u043d\u043e\u0432\u044b\u0445 \u043a\u043e\u043c\u0430\u043d\u0434 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0432 \u0441\u043f\u0440\u0430\u0432\u043a\u0435 \u043a \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u043c\u0443 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0443 \u0441\u043a\u0438\u043d\u043e\u0432). <\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u0421 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u043c \u21163 \u043f\u043e\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0435\u0435: \u0447\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0443\u044e \u043f\u0430\u043d\u0435\u043b\u044c \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0441\u043a\u0438\u043d\u0430, \u043d\u0443\u0436\u043d\u043e \u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0432 \u043e\u0434\u0438\u043d \u0438\u0437 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 (\u0432 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u0445 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043e\u043d\u0430 \u0431\u0443\u0434\u0435\u0442 \"\u0435\u0437\u0434\u0438\u0442\u044c\") \u0441\u043f\u0435\u0446.\u044d\u043b\u0435\u043c\u0435\u043d\u0442:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1512,\"sizeSlug\":\"full\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-special.png\" alt=\"\" class=\"wp-image-1512\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>\u0414\u0430\u043b\u0435\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u0430\u0441\u0442\u043e\u043c\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0435\u0433\u043e \u043a\u0430\u043a \u043d\u0430\u0434\u043e. \u042d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u043c\u043e\u0436\u043d\u043e \u043c\u0435\u043d\u044f\u0442\u044c\/\u0443\u0434\u0430\u043b\u044f\u0442\u044c - \u0433\u043b\u0430\u0432\u043d\u043e\u0435, \u0447\u0442\u043e\u0431\u044b \u0441\u0430\u043c \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043e\u0441\u0442\u0430\u043b\u0441\u044f.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>\u0418\u043a\u043e\u043d\u043a\u0438 \u0434\u043b\u044f \u043c\u0435\u043d\u044e<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u0418\u043a\u043e\u043d\u043a\u0438 \u0434\u043b\u044f \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u043d\u044b\u0445 \u043c\u0435\u043d\u044e \u0437\u0430\u0434\u0430\u044e\u0442\u0441\u044f \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432. <\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>\u0421\u0442\u043e\u0438\u0442 \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0438\u043a\u043e\u043d\u043a\u0438 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u043c \u0434\u0435\u043a\u043e\u0440\u043e\u043c - \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u0434\u0430\u0442\u044c \u043b\u0438\u0448\u044c \u0447\u0430\u0441\u0442\u044c \u0438\u043a\u043e\u043d\u043e\u043a, \u0438\u043b\u0438 \u043d\u0435 \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u0432\u043e\u0432\u0441\u0435.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"textAlign\":\"center\"} -->\n<h2 class=\"wp-block-heading has-text-align-center\">\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>\u0422\u0435\u0441\u0442\u043e\u0432\u0430\u044f \u0441\u0431\u043e\u0440\u043a\u0430 v4.20 \u0443\u0436\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0434\u043b\u044f \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u044f <a href=\"https:\/\/www.aimp.ru\/?do=download&amp;os=android#beta\" data-type=\"link\" data-id=\"https:\/\/www.aimp.ru\/?do=download&amp;os=android#beta\" target=\"_blank\" rel=\"noreferrer noopener\">\u0441 \u043d\u0430\u0448\u0435\u0433\u043e \u0441\u0430\u0439\u0442\u0430<\/a> \u0438\u043b\u0438 <a href=\"https:\/\/play.google.com\/apps\/testing\/com.aimp.player\" data-type=\"link\" data-id=\"https:\/\/play.google.com\/apps\/testing\/com.aimp.player\" target=\"_blank\" rel=\"noreferrer noopener\">\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0431\u0435\u0442\u0430-\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f<\/a> Google Play.<\/p>\n<!-- \/wp:paragraph -->","_ru_post_name":"aimp-%d0%b4%d0%bb%d1%8f-android-v4-20","_ru_post_excerpt":"","_ru_post_title":"AIMP \u0434\u043b\u044f Android v4.20","_en_post_content":"<!-- wp:paragraph -->\n<p>Key feature of this release is support for track part repeating (aka A-B repeat).<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:more {\"customText\":\"READ MORE\"} -->\n<!--more READ MORE-->\n<!-- \/wp:more -->\n\n<!-- wp:paragraph -->\n<p><strong>Part track repeat<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>In general case, especially if you use a third-party skin, the command to start track part repeat is located in context menu of navigation bar:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1511,\"sizeSlug\":\"medium\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-medium\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-04-en-300x278.png\" alt=\"\" class=\"wp-image-1511\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>In default skin (Charm), the command is duplicated by a button at bottom of main screen. When you tap on the button, the track part repeat control panel appears:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1509,\"sizeSlug\":\"medium\",\"linkDestination\":\"none\",\"align\":\"center\",\"className\":\"is-style-default\"} -->\n<figure class=\"wp-block-image aligncenter size-medium is-style-default\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-03-300x278.png\" alt=\"a-b repeat\" class=\"wp-image-1509\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Taps on the A\/B buttons set timestamps to current playback position. As soon as both timestamps will be set, track part repeating will be started.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Note the control panel can be dragged on the screen in free way.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Track part repeating will be disabled on closing the control panel by tap on the \"X\" button or the \"A-B\" button.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>UI Improvements<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Improved visual perception of the app's context menus:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1515,\"sizeSlug\":\"medium\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-medium\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/menus-189x300.png\" alt=\"\" class=\"wp-image-1515\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Note that the icons for menu commands are set at skin level, and will only be displayed when using skins adapted for v4.20.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><span style=\"text-decoration: underline;\">Panini v2<\/span><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>New major version of the Panini skin by AJ with full support of v4.20!<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Custom button for Notification Area \/ Android Auto<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>In control settings of app, now you can specify the action that will be displayed in notification area \/ Android Auto:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1516,\"sizeSlug\":\"full\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/auto.png\" alt=\"\" class=\"wp-image-1516\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:image {\"id\":1518,\"sizeSlug\":\"full\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/widget.png\" alt=\"\" class=\"wp-image-1518\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Currently, following actions are available for selection:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:list -->\n<ul class=\"wp-block-list\"><!-- wp:list-item -->\n<li>Add to Favorites<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Add to Bookmarks<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Fast forward \/ Rewind<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Repeat Playlist \/ Track \/ Off<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Shuffle Playback<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Next group in playlist<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>Next playlist<\/li>\n<!-- \/wp:list-item --><\/ul>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p><strong>Also<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Since v4.20, AIMP will able to import group of files from external applications via the \"share with\" command.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"textAlign\":\"center\"} -->\n<h2 class=\"wp-block-heading has-text-align-center\">Changes in Skin Engine<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p><strong>Track Part Repeating (\u0410-B)<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Support for track part repeating can be implemented in one of three ways::<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:list {\"ordered\":true} -->\n<ol class=\"wp-block-list\"><!-- wp:list-item -->\n<li>full integration into the skin<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>floating view<\/li>\n<!-- \/wp:list-item -->\n\n<!-- wp:list-item -->\n<li>floating view with custom design<\/li>\n<!-- \/wp:list-item --><\/ol>\n<!-- \/wp:list -->\n\n<!-- wp:paragraph -->\n<p>By default, the skin engine uses a floating view (#2), where the appearance is built automatically based on the colors that are set at the skin level for pop-up windows:<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1507,\"sizeSlug\":\"medium\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-medium\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-01-300x89.png\" alt=\"\" class=\"wp-image-1507\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>The view can be moved within parent container. In option #2, the topmost container from main window is taken as parent container. In option #3, the designer decides where exactly floating view will moved.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>How th skin engine works: first of all, it looks at whether the floating view on skin side is overridden, if not, it checks whether binding is used for A-B repeat commands, if not, it generates a floating view by default.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Option #1 is simple: we throw the necessary elements into the window and bind them to new commands (a list of new commands can be found in the help for the updated skin editor).<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Option #3 is little bit complex: to redefine the floating view at skin level, you need to place a special element into one of containers (where it will be moved):<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:image {\"id\":1512,\"sizeSlug\":\"full\",\"linkDestination\":\"none\",\"align\":\"center\"} -->\n<figure class=\"wp-block-image aligncenter size-full\"><img src=\"https:\/\/www.aimp.ru\/blogs\/wp-content\/uploads\/2025\/06\/partrepeat-special.png\" alt=\"\" class=\"wp-image-1512\"\/><\/figure>\n<!-- \/wp:image -->\n\n<!-- wp:paragraph -->\n<p>Next, just customize it as you want. Elements inside the container can be changed\/deleted. The container itself must remains.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><strong>Context Menu Icons<\/strong><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Icons for context menus can be defined in the Resource Repository of the Skin Editor tool.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>Note that context menu icons are optional feature, you may want to define just few or not define them at all.<\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:heading {\"textAlign\":\"center\"} -->\n<h2 class=\"wp-block-heading has-text-align-center\">Testing<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p>Test build of the v4.20 is already available for downloading from <a href=\"https:\/\/www.aimp.ru\/?do=download&amp;os=android#beta\" data-type=\"link\" data-id=\"https:\/\/www.aimp.ru\/?do=download&amp;os=android#beta\" target=\"_blank\" rel=\"noreferrer noopener\">our site<\/a> or <a href=\"https:\/\/play.google.com\/apps\/testing\/com.aimp.player\" data-type=\"link\" data-id=\"https:\/\/play.google.com\/apps\/testing\/com.aimp.player\" target=\"_blank\" rel=\"noreferrer noopener\">beta-testing page<\/a> of Google Play.<\/p>\n<!-- \/wp:paragraph -->","_en_post_name":"","_en_post_excerpt":"","_en_post_title":"AIMP for Android v4.20","edit_language":"en","footnotes":""},"categories":[8,61],"tags":[75,19],"class_list":["post-1506","post","type-post","status-publish","format-standard","hentry","category-aimp-mobile","category-61","tag-android","tag-19"],"views":5092,"_links":{"self":[{"href":"https:\/\/aimp.ru\/blogs?language=en%2Findex.php&rest_route=\/wp\/v2\/posts\/1506","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aimp.ru\/blogs?language=en%2Findex.php&rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/aimp.ru\/blogs?language=en%2Findex.php&rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/aimp.ru\/blogs?language=en%2Findex.php&rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/aimp.ru\/blogs?language=en%2Findex.php&rest_route=%2Fwp%2Fv2%2Fcomments&post=1506"}],"version-history":[{"count":0,"href":"https:\/\/aimp.ru\/blogs?language=en%2Findex.php&rest_route=\/wp\/v2\/posts\/1506\/revisions"}],"wp:attachment":[{"href":"https:\/\/aimp.ru\/blogs?language=en%2Findex.php&rest_route=%2Fwp%2Fv2%2Fmedia&parent=1506"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/aimp.ru\/blogs?language=en%2Findex.php&rest_route=%2Fwp%2Fv2%2Fcategories&post=1506"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/aimp.ru\/blogs?language=en%2Findex.php&rest_route=%2Fwp%2Fv2%2Ftags&post=1506"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}