Основные этапы реализации just-for-fun проекта известного разработчика



Разработчик Ник Ли стал известным благодаря своим проектам по запуску различных операционных систем на гаджетах Apple, включая Windows 95 на Apple Watch. Сейчас он решил попробовать запустить Android на iPhone. В новом проекте автор решил использовать Android Open Source Project (AOSP). Это проект Android с открытым исходным кодом. Разработан он был специалистами, которые считали необходимым создать платформу с открытым кодом для упрощения создания приложений для мобильных устройств. Работать open-source Android может на большинстве известных устройств, включая смартфоны и Android-совместимые одноплатные ПК.

Для своих нужд Ли создал кастомную версию Android Marshmallow, которая без всяких проблем «завелась» на LG Nexus 5 (прототип проекта «Android на iPhone» работал именно с этим смартфоном). В дистрибутив были включены следующие компоненты:
  • libimobiledevice: программный пакет для нативной связи с iOS-устройствами;
  • usbmuxd: клон одноименного демона ПО Apple. Этот компонент позволил использовать USB дата-кабель для скоростного обмена данными с iPhone;
  • screenstreamer: демон, написанный Ли, для связи с сервисом usbmuxd и передачей «картинки» на дисплей iPhone. После того, как все было проверено, Ли запустил систему в первый раз, причем успешно.




Конечно, два телефона рядом это хорошо, но автор проекта решил сделать систему более компактной. А в этом случае второй телефон в качестве Android-донора уже не подходит, нужно что-то другое. Что? Одноплатный Android-совместимый компьютер (некоторые из них показаны в этой подборке, — прим. ред.).



Такой компьютер должен был соответствовать ряду критериев:
  • Производительность: устройство должно уметь захватывать, сжимать и передавать изображение на дисплее в режиме реального времени с высоким fps;
  • Совместимость: устройство должно работать с последней версией Android (6.0.1 Marshmallow на момент реализации проекта);
  • Размер: плата должна быть небольшой и тонкой, равной по размеру кредитной карте;
  • Связь: устройство должно иметь модули Wi-Fi и Bluetooth. Также должен быть порт USB 2.0 для передачи данных на iPhone.


Кастомная версия Android, доработанная Ли, была успешно запущена на одноплатном ПК Lemaker HiKey с 8-ядерным 64-х битным процессором ARM Cortex-A53. HiKey и был выбран для проекта.

В распечатанном на 3D-принтере чехле для iPhone разместился этот компьютер, аккумулятор на 650 мАч и встроенной защитой, повышающий преобразователь и резистор. Последний понадобился для того, чтобы не давать iPhone потреблять слишком большой ток, что блокировало обмен данными между HiKey и телефоном.



После добавления резистора все заработало. Компоненты были размещены в распечатанном на 3D-принтере чехле.



Результат получился довольно габаритным — iPhone с чехлом стали похожи на сотовые телефоны, бывшие в ходу лет 15 назад.





Финальный этап



После доработки чехла и рабочей схемы для запуска Android на iPhone габариты системы значительно уменьшились. Ли добавил и новые элементы — порты HDMI и USB, которые были выведены на левую сторону отпечатанного на 3D принтере нового чехла. Поместился здесь и и слот для карт памяти типа SD. Перед тем, как надеть чехол на iPhone, автор проекта защитил электронные компоненты чехла тонким пластиковым листом.



После того, как плата с Android была подключена к iPhone, на дисплее смартфона появился стандартный интерфейс ОС от Google. Для запуска Android использовалось кастомное приложение, разработанное студией Tendigi. Именно оно обеспечило взаимодействия смартфона с одноплатным компьютером, заключенным в чехол.

Процесс разработки всей системы, по словам Ли, занял много дней. Практической пользы здесь немного, работа велась ради собственного удовольствия умельца. Тем не менее, теперь автор проекта может всем говорить, что смог запустить Android на iPhone — а это многого стоит.
Поделиться с друзьями
-->

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


  1. TimsTims
    08.06.2016 13:57
    +2

    Опоздали на 35 минут: https://geektimes.ru/post/276994/

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


    1. marks
      08.06.2016 13:58

      Этот материал — технические подробности проекта, о чем указано в заголовке :) Предыдущий материал — просто новость с видео.


  1. CyberKot
    08.06.2016 14:21
    +22

    Так можно и Рэн-ТВ запустить на айфоне. Просто включить камеру и направить на телевизор.

    Мне кажется этот «запуск андроида на айфоне» мало чем отличается от простого включения камеры… Разве что «кино» не камера транслирует, а другое устройство (при помощи костылей).


  1. tmin10
    08.06.2016 14:37
    +2

    Проще было не одноплатный компьютер с отдельным АКБ, а просто изолентой примотать андроид-смартфон сзади и проводом их соединить. Вышло бы компактнее.


    1. Kanut79
      08.06.2016 14:40
      +5

      А если из этой конструкции исключить айфон, то ещё и дешевле :)


      1. tmin10
        08.06.2016 14:41

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


    1. sumanai
      08.06.2016 21:29

      А если изолента синяя, то ещё и прочнее, долговечнее и производительнее!


  1. mixaly4
    08.06.2016 14:50
    +2

    Картинки про троллейбус еще не было?


    1. marks
      08.06.2016 15:05

      Проект just-for-fun, о чем автор сразу говорит


      1. 25080205
        09.06.2016 01:48
        +2

        Но так я могу врубить TeamViewer и объявить, что я запустил на iPhone Windows Server…


    1. formatbce
      08.06.2016 16:03

      Была, моя, в предыдущей публикации, которая сейчас недоступна…


  1. alltiptop
    08.06.2016 15:09
    +21

    Но он же не запускает андроид на айфоне. Зачем эта ложь?


  1. Akdmeh
    08.06.2016 15:38
    +1

    Вспоминая прошлое (ну и частично наше время), подумал, что забавно выглядело бы антимонопольное решение о запрете предустановки iOS на iPhone и с производителя потребовали бы возможности покапать телефон без операционной системы, чтобы поставить на него альтернативный дистрибутив (а именно — на iPhone — Android).
    В принципе, производители ноутбуков ведь тоже апеллировали к: «наше устройство разрабатывалось и тестировалось специально для совместимости с определенной операционной системой».
    Не холивара ради, подскажите, в чем отличие ситуации между ноутбуками и телефонами? Почему никто до сих пор не требует установки альтернативных операционок на телефоны? Или это потому, что они — не монополисты?


    1. Meider1
      08.06.2016 16:21
      +1

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


  1. DenimTornado
    08.06.2016 15:44
    +5

    это ж просто трансляция на экран айфона, да?


  1. PlayTime
    08.06.2016 15:58
    +2

    а я надеялся что будет установлен андроид на железо айфона…


    1. vikarti
      08.06.2016 16:53

      а как бы уже. и давно https://www.iphones.ru/iNotes/97213 например или чуть более подробно на http://4pda.ru/forum/index.php?showtopic=159164
      правда айфон придется покупать на avito. но зато «чехол» не нужен


  1. c01nd01r
    08.06.2016 16:05

    В какой-то момент подумал, что там аналог Linux Deploy, а оказалось…


  1. shokedjobana
    08.06.2016 16:18
    +2

    Зашел только ради троллейбуса


  1. eta4ever
    08.06.2016 17:31

    Я так фотошоп на первом айпаде запускал, народ потроллить. По RDP.


    1. Am0ralist
      08.06.2016 23:47

      фотошоп на айпаде… я так на андроидопланшете запускал конструкторскую 3D программу с юсб-ключом защиты еще до того, как появились первые планшеты с виндой)))


      1. AleVaKa
        09.06.2016 14:00

        Первые планшеты с виндой появились всё-таки раньше, чем создали андроид. Вроде в 2002 году.


  1. Bokhan
    08.06.2016 23:25

    Что-то вся статья похожа на «как оно всё вместе держится», а не на «как оно всё вместе работает».
    Я правильно понимаю — айфон здесь в роли устройства ввода-вывода? Если неправильно, то суть не раскрыта


    1. jonic
      10.06.2016 11:45

      Абсолютно правильно. Видимо такая хрень только ему в голову пришла.