На сайте Microsoft в разделе Universal Windows Platform Bridges появился анонс программного инструмента Project Astoria, предназначенного для переноса Android-приложений в Windows 10. Аналогичный по смыслу анонс с также звучным названием Project Islandwood сделан и для iOS.

Однако для Android, в отличие от общих заявлений в разделе для iOS, что Xcode-проекты можно будет импортировать в Visual Studio и собирать Windows-приложения с минимальными изменениями ObjectiveC-кода, инженеры проекта показали короткое видео с беглым описанием возможностей Project Astoria.

Как можно понять из видео, Android-приложение будет подвергнуто анализу на предмет совместимости, и в результате этого анализа типичные для Android пользовательские действия будут транслированы в аналогичные для Windows 10. В качестве примера приводится довольно простое действие расшаривания некоторого контента в социальных сетях. Что именно будет происходить с java-кодом в этом случае пока что остаётся неясным. Для работы с Windows SDK можно будет использовать и Android Studio и Eclipse без перехода на Visual Studio.

Для того чтобы понять, сколько именно кода может быть повторно использовано и не содержит ли он специфических для Google инструментов, надо будет использовать инструмент App Analysis. На сайт потребуется загрузить APK-файл, после анализа которого разработчик увидит, что именно ему рекомендуется сделать для совместимости с Windows 10. На видео показан этот момент.

Кроме того, в Редмонде говорят, что позаботились о том, чтобы переход от Google-сервисов на Windows-сервисы выглядел буквально как замена одной строчки кода на другую. Утверждается, что все инструменты вроде рекламы или встроенных покупок будут перенесены в среду Windows с минимальными усилиями.

Статус Project Astoria пока что даже не альфа, но при желании можно подписать специальное Testing Agreement и прислать команде свой APK-файл, который будет использован при разработке.

Комментарии (37)


  1. Steely
    01.05.2015 23:15
    +9

    Хм, а то что телефон справа выглядит ярче и реагирует быстрее сделано специально или действительно так?


    1. Artima
      02.05.2015 12:21

      А вы как думаете? )


  1. lolipop
    01.05.2015 23:18
    -9

    Какой ужасный звук перекомпрессированный в ролике, уши вянут.


  1. kivsiak
    01.05.2015 23:19
    +5

    Чет терзают меня сомнения, что так раз и получится перенести прилагу на винду. Вдвойне меня терзают сомнения как они с нативными либами справляться будут.


    1. IRainman
      02.05.2015 01:26
      -1

      С нативными особой разницы и фатальных проблем тоже быть не должно если внутрь ассемблера не понапихали.


      1. GrigoryPerepechko
        02.05.2015 12:08
        -2

        В библиотеках машинный код, а ассемблер — семейство языков которые компилируются в машинный код.


    1. Athari
      02.05.2015 09:55
      +1

      Вдвойне меня терзают сомнения как они с нативными либами справляться будут.

      Они ответили:

      • Если есть сорцы, то берёте и компилируете — и всё зашибись.
      • Если либа поддерживается мелкомягкими, то будет прослойка, и вы не заметите разницы.
      • Если есть виндовая версия либы, то можно взять её.


  1. NeoCode
    02.05.2015 00:17
    +2

    Код на Objective C прямо в Visual Studio… со всеми фичами редактирования, компиляции, отладки и запуска в эмуляторе айфона… channel9.msdn.com/events/Build/2015/3-610
    И сегодня вроде первое мая а не первое апреля… Одно слово — Круто!


    1. Athari
      02.05.2015 09:58

      Мелкомягкие начали стабильно выдавать такие новости, что приходится сверяться с календарём. Похоже, всё происходящее перестаёт быть исключениями и становится закономерностью.


      1. XimikS
        02.05.2015 13:28
        +6

        Новый CEO — технарь до мозга костей, к счастью


        1. khim
          02.05.2015 15:17
          +2

          Вопрос «к счастью» или «к сожалению», в общем, очень философский, но стоит признать, что после того, как Сатья стал у руля политика Microsoft отошла от Баллмероского самоубийства.

          Всё просто: Сатья, в отличие от Баллмера, понимает, что среди пользователей Windows уже сейчас — порядка половины, а скоро будет ещё меньше, а вот среди разработчиков — их ещё очень много, но если их не удержать, то всё, лавочку можно закрывать.

          Потому сейчас посыл такой: пользуйтесь нашими тулами и вы сможете делать программы подо всё, что угодно! Ну а дальше, если разработчики действительно ими будут пользоваться, можно будет крылышки-то всем, кто не пользуется «правильной» Windows, подрезать. Почти этот же гамбит был разыгран самим Биллом Гейтсом на рынке рабочих станций (почитайте, если кто забыл): вначале Windows NT должна была работать на всём на свете (Alpha, PowerPC, Itanium, Sparc и т.д. и т.п.), ну а потом, когда всякие идиоты типа SGI на это сделали ставку и UNIX (за исключением Linux'а и, кое-где, *BSD) «скуксился» вся эта поддержка разных зоопарков куда-то улетучилась.

          Так что не нужно думать, что Microsoft вдруг стал мягким и пушистым — просто в отличие от Баллмера, всегда прущего напролом, Сатья умеет и более тонкие манёвры делать.


          1. freeOne
            03.05.2015 00:02
            +3

            Да это же классика.
            ru.wikipedia.org/wiki/Embrace,_Extend,_and_Extinguish


  1. Rumlin
    02.05.2015 02:08

    Демонстрировали стандартный интерфейс. Интереснее посмотреть на чем-то ресурсоемком, игры например.


  1. js605451
    02.05.2015 08:36
    +1

    Что именно будет происходить с java-кодом в этом случае пока что остаётся неясным.

    Arstechnica подсказывает:
    А более конкретно, Windows Mobile (ага, именно так теперь называется Windows для телефонов и планшетов с диагональю менее 8 дюймов) будет включать в себя слой Android runtime, который позволит исполнять существующие приложения Android без специальных переделок. В противоположность проекту Islandwood, где разработчикам нужно специальным образом пересобрать приложение, чтобы оно запустилось на Windows, Astoria по идее будет работать с любым старым APK (при условии, что этот APK использует только те API, которые предоставляет Astoria). Единственное, что потребуется от разработчика — опубликовать приложение в Windows Store.


    1. QtRoS
      02.05.2015 10:17

      То есть это по сути своя реализация ВМ с маппингом Google сервисов на Macrosoft?


      1. js605451
        02.05.2015 10:29

        Моя лучшая догадка:
        1. Microsoft запрограммировал какой-то большой кусок Android runtime на дотнете
        2. При публикации APK в Windows Store скорее всего будет происходить трансляция байткода Java/Dalvik/whatever в CIL + прикручивание п.1 в виде библиотеки.
        Т.е. в итоге там будет получаться самый обычный пакет, как если бы его изначально делали на дотнете.


  1. QtRoS
    02.05.2015 10:13
    +2

    Я знаю, что принято в ЛС, но это:

    Однако для Android, в отличие от общих заявлений в разделе для iOS, что Xcode-проекты можно будет импортировать в Visual Studio и собирать Windows-приложения с минимальными изменениями ObjectiveC-кода, инженеры проекта показали короткое видео с беглым описанием возможностей Project Astoria.

    Это шедевр. Вы хоть раз читали этот «перевод»?


  1. AlexandrBorisov
    02.05.2015 10:27
    -1

    Эдакий blackberry-way? Интересно, какая судьба будет у C# для мобильной разработки.


    1. DonkeyHot
      02.05.2015 13:16
      +5

      Странный вопрос насчет судьбы.
      Например большинство игр на Unity написаны на C#. А это один из самых популярных игровых движков для мобильных платформ.


    1. Nagg
      02.05.2015 18:19

      Думаю, правильнее спросить — какая судьба ждёт нативные средства разработки под Вин10 (XAML, etc) т.е. зачем париться и писать замл, если можно просто портировать андроид.


      1. boblenin
        02.05.2015 19:21

        Очень верное замечание. Но я думаю выход и из этого есть и уже опробован.

        Они так делали с html, с java, с ldap. Поддерживаем стандарт пока не накопится критическая масса и разработчиков и приложений под win платформу и база не станет больше чем под платформы конкурентов, а потом начинаем вносить мелкие несовместимости с конкурирующими платформами. (принцип лисы жившей в ледяной избушке)


        1. a553
          02.05.2015 19:42

        1. dordzhiev
          02.05.2015 22:19
          +1

          Nagg говорит про другое: если Windows будет поддерживать Android/iOS приложения, то смысл тратиться на разработку нативных для Windows? Создадут для Android/iOS, а потом будут на Windows запускать (как в свое время было с OS\2, но несколько в другую сторону). Родным Windows Runtime пользоваться будут реже.


          1. Nagg
            02.05.2015 22:25
            +2

            Именно. В свое время убил почти 2 года на эту платформу, а она до сих пор никому не нужна. Теперь пишу на Java и C#/Xamarin. Часто вижу заказы на Xamarin только на ios и android. при предложении до кучи сделать еще и WP8 где собственно сам C# нативен — отказываются мотивируя ненужностью.


  1. zenden2k
    02.05.2015 11:29
    +1

    Блин, да это же праздник какой-то!


  1. Artima
    02.05.2015 12:30
    +2

    Количество упоминаний сторонних брендов в ролике просто зашкаливает. MS действительно собирается продвигать свои новые телефоны потом с лозунгом — «Эй, на нашей Lumia с Windows вы можете запускать приложения от Android»?


    1. DonkeyHot
      02.05.2015 13:17
      +3

      Ну для разработчиков да, будут продвигать что легко портировать на их платформу.
      А пользователи и не будут знать, что это было разработано для Android сначала


    1. khim
      02.05.2015 15:20
      +2

      В ближайшее время у Microsoft нет никаких шансов куда-то продвинуть «Lumia с Windows» и для них самое главное — сохранить разработчиков.

      А убивство Andorid'а можно оставить на потом. Всему своё время. План-то не шибко сложный, всего-лишь двухходовый, но да, это игра «вдолгую».


    1. boblenin
      02.05.2015 19:25
      +1

      У них проблема яйца и курицы. Люди не хотят покупать win платформу — потому что нет поддержки разработчиков. А разработчики не хотят перепиливать приложения под win, потому что дорого и нет пользователей (не выгодно). Упрощая конвертацию приложений с других платформ они эту дилемму решают, делая затраты на портирование меньше чем потенциальные выгоды (ваше приложение теперь может рабтать не только на ios, но и на win mobile, но впридачу еще и на win desktop). Т.е. двойная выгода разработчикам. А после этого глядишь и пользователи потянутся на самую популярную у разработчиков платформу.


      1. Artima
        04.05.2015 14:35

        Обогнать платформу таким образом нельзя, если использовать те же приложения. Более того, многие разработчики не будут тратить время на этот перевод и последующие обновления, предпочтя развивать основное приложение.


  1. nekdenis
    04.05.2015 10:10
    +1

    а никого не смущает, что у ios свои гайдлайны, у android — свои? и user experience пользователей winPhone иной, как и весь metroUI


    1. GoodNTS
      05.05.2015 15:02

      Metro UI мертв. Так что всё нормально. В Windows 10 нет Metro UI.


      1. DjoNIK
        13.05.2015 20:51

        Metro UI мертв

        Он скорее не мертв, а эволюционировал в Universal Windows Platform (UWP). Который, к слову сказать, берет часть UX из android и/или iOS.


        1. Overrided
          15.05.2015 00:38
          +1

          берет часть UX из android и/или iOS.

          Не согласен. Фактически, Metro был еще на WinPhone 7 — а тогда еще ни Material Design у Google не появился, ни iOS «плитку» использовать не начал. Да, было общее движение в сторону content-oriented design, но Microsoft были первыми, кто его пустил «в массы».


          1. DjoNIK
            15.05.2015 10:02
            +1

            Вы меня не правило поняли. Да, действительно у истоков Metro UI стояли мелкомягкие. Но я говорил о тенденциях в вин10. Там уже Microsoft перенимет опыт других мобильных платформ.


            1. Overrided
              15.05.2015 10:48

              В таком случае да, понял Вас неправильно. Спасибо за уточнение)


        1. GoodNTS
          15.05.2015 12:01

          Простите, но это не эволюция. Metro UI мертв. То что мы видим в Windows 10 это жалкое подобие на Android/iOS. Добавим к этому приложения с Android и всё прощай Windows Phone… ах да Windows Mobile теперь же.