Skip to content

Instantly share code, notes, and snippets.

Created August 28, 2017 17:40
Show Gist options
  • Save anonymous/803c609780b88be9ee3acef65d7db8ea to your computer and use it in GitHub Desktop.
Save anonymous/803c609780b88be9ee3acef65d7db8ea to your computer and use it in GitHub Desktop.
История развития андроид

История развития андроид



Операционная система Андроид Android основана на ядре Linux. Придумана она в Пало Альто, Калифорния, в году. Ее создатели — Энди Рубин, Рич Майнер, Ник Сеарс, Крис Уайт и много других людей. Изначально система Андроид предназначалась для цифровых камер. Однако Энди Рубин понял, что рынок цифровых камер не такой уж и большой. Поэтому компания Android, Inc, решила переориентировать свою систему на смартфоны. ОС очень понравилась Ларри Пейджу, одному из основателей компании Google. Android, Inc, была приобретена Google 17 августа Таким образом, Энди Рубин со своей командой, стали сотрудниками Google. Она работала только с физической клавиатурой экранную не поддерживала и помимо нее, требовала еще штук 5 кнопок управления. Кроме того, лицензия не разрешала ставить ее на устройства без трекбола многие сегодня и не знают, что это такое. Функций вроде автоповорота экрана в ней тоже не было. Все приложения Google были встроены прямо в операционную систему. Так что если нужно было обновить, скажем, приложение Gmail, для этого требовалось обновление всей операционной системы. Привычного Андроид маркета который позже перезвали в Google Play также не было. По какой-то прихоти разработчиков, все версии называют в честь различных десертов пирожные, мороженое, шоколад и т. Кстати, названия идут по алфавиту. Система теперь умела работать с виртуальной экранной клавиатурой. Также, были добавлены Google Maps, буфер обмена, и многие улучшения интерфейса. В ней было много изменений: Также, добавилась поддержка Андроид маркет, быстрый поиск, группировка приложений, отчет об использовании батареи, распознавание жестов. В ней было наибольшее количество изменений и улучшений, по сравнению с предыдущими версиями. Наиболее существенные изменения коснулись SDK — разрабатывать приложения под Андроид стало намного проще и удобнее. Теперь можно добавлять несколько аккаунтов Google, добавилась навигация, быстрые контакты, новый экран блокировки. Встроенный браузер был обновлен, стал поддерживать HTML5. Наибольшее количество изменений, влияющих на скорость работы и отзывчивость интерфейса. Была добавлена JIT компиляция приложений, в результате чего скорость их работы значительно повысилась. Теперь все смартфоны на Андроид могли работать как USB модем и точка доступа, используя мобильное подключение к интернету. Была добавлена поддержка Adobe Flash 10, возможность совершать звонки через Bluetooth гарнитуру, синхронизация календаря, радио, новое ядро Linux. Клавиатура стала поддерживать переключение языков, приложения можно перемещать на SD карту, чтобы освободить внутреннюю память. Очень много изменений интерфейса. Добавилась поддержка фронтальной камеры, улучшено управление электропитанием, значительно улучшена клавиатура. Была добавлена возможность совершать интернет-звонки в саму систему, переработаны и улучшены функции работы с буфером обмена. Главным нововведением стала поддержка больших разрешений на планшетах. Поддержка аппаратных кнопок была окончательно убрана. С этой версией поставлялся дюймовый планшет Motorola XOOM. Интерфейс был оптимизирован под большие экраны. Переработан домашний экран, улучшена поддержка многозадачности. Добавлен музыкальный плеер от Google, Bluetooth-модем, удобная синхронизация между мобильным устройством и компьютером, управление уведомлениями и многое другое. По сути, первое существенное улучшение для телефонов с версии Gungerbread. До выхода этого обновления, усилия разработчиков были направлены в основном на то, чтобы заставить версию 3. Добавлена поддержка NFC, захват экрана создание скриншотов теперь стало функцией самой ОС. Теперь можно создавать папки на домашнем экране, появился список избранного. Панель уведомлений была модернизирована. Управление передачей данных по сети, добавление фильтров и эффектов к видео, браузер Chrome, улучшена работа с почтой, Wi-Fi, p2p и добавлена поддержка Health Device Profile HDP — используется в медицинских устройствах на Android. Теперь стало возможным разблокировать телефон при помощи камеры, наведя ее на свое лицо. Добавлено много других, более мелких функций. Основные изменения коснулись улучшения уведомлений. В уведомлениях стало возможным показывать большие объемы информации и изображения. Была добавлена возможность определять местоположение устройства по Wi-Fi ранее — только по GPS. Можно создавать профили с ограничениями. Виджеты можно добавлять на экран блокировки. Набор номера с предугадыванием. В уведомления можно встраивать ссылки и кнопки например, кнопка Ретвит в уведомлениях с Твиттера. Новый скринсейвер Daydream, распознавание жестов на клавиатуре. Названием КитКат система обязана компании Нестле. Первым устройством, получившим новую ОС, был Google Nexus 5. Статусная строка и кнопки навигации теперь прячутся, когда вы смотрите видео или играете в полноэкранные игры. Ускорена многозадачность, улучшено определение номера звонящего абонента, поддержка смайлов Emoji на клавиатуре. Вы можете печатать на любом принтере, подключенном к Google Cloud Print, или любом другом, поддерживающем Андроид. В контактах на первых позициях показывает людей, с которыми вы общаетесь чаще всего. Когда вы слушаете музыку, экран блокировки показывает обложку альбома на полный экран. Первыми устройствами, получившими эту версию ОС, стали Nexus 5 и Nexus 6. В основном, это улучшенная версия 5. Значительно улучшены разрешения для приложений. Встроено распознавание отпечатка пальца. Улучшены Google Now, Android Pay. Теперь у вас есть возможность расплатиться своим смартфоном на Android в магазинах, кассах, общественном транспорте и так далее. Ажиотаж который поднялся вокруг этой функции возник не просто так — слишком много упреков звучало в адрес плавности отрисовки 2D-элементов в Android в сравнении с другими мобильными ОС. Безусловно, аппаратное ускорение в Android это позитивная вещь, но есть много неправильных представлений о том что на самом деле представляет из себя эта возможность. Во-первых, Android уже много лет поддерживает аппаратное ускорение для задач отрисовки множества окон речь идет о композиции окон — панель задач, оповещения, панель меню, появление и скрытие элементов интерфейса. Это означает что вся анимация элементов интерфейса в Android всегда использовала аппаратное ускорение. В отличии от отрисовки композиции окон, рендеринг изображения внутри окна традиционно осуществлялся при помощи процессора в Android 2. Однако, в Android 3. Единственное отличие Android 4. На самом деле это не совсем так. Вроде бы не так много? Не тут-то было, ведь такое активное потребление оперативной памяти сразу множеством процессов значительно повышает потребление памяти в целом, что сразу сказывается на скорости мультизадачности — вплоть до значительного ее замедления. В итоге, команда разработчиков Google сейчас тратит значительные усилия на тонкую настройку того, какие именно части пользовательского интерфейса действительно нуждаются в аппаратном ускорении на Nexus S. Почему Android тормозит, в то время как iOS, Windows Phone 7, QNX и WebOS столь плавны в работе? Однако, прежде чем перейти к сути, несколько оговорок. Я интернирован в команде Android, и Romain Guy который был ответственен за большую часть работы аппаратного ускорения в Honeycomb, рассмотрел некоторые участки и моего кода, но я не был в команде разрабатывающей сам framework, и я никогда не читал исходники кода отрисовки в Android. Во-вторых, я на стажировке в команде Windows Phone, начиная с января, так что вполне возможно, что эта должность могла бы подсознательно настроить меня против Android, но если вы спросите любого из моих друзей, это действительно трудно, попросить меня не болтать об Android. У меня больше Android футболок, чем дней в неделю, и я предпочел бы отдать мой Macbook, чем мой Nexus S. Googlplex это как второй дом. Во всяком случае, мои интересы, пожалуй, смещены в пользу Android. Итак приступим к анализу предыдущей статьи о мифах речь идет о полной версии поста Дианы Hackborn. Это во многом зависит от количества пикселей в дисплее и скорости вашего процессора. Например, у Nexus S нет проблем с 60 кадрами в секунду для всех нормальных вещей которые вы видите в Android UI, как например прокрутка списков на своем x экране. Как такое может быть? Любой, кто использовал Nexus S знает, что он замедляется при всем, кроме разве что простого ListViews. И забудьте про любое подобие достойной производительности, если в фоновом режиме, что-то происходит, например установка приложения или обновления пользовательского интерфейса с внутреннего накопителя. Но мы знаем, Диана не врет о потенциальной производительности центрального процессора, так что же происходит? Это не паузы из-за сборщика мусора. Это потому, что в iOS рендеринг всего интерфейса происходит в отдельном потоке пользовательского интерфейса в режиме приоритета реального времени. С другой стороны, Android следует традиционной для ПК модели, в которой основной рендеринг происходит с нормальным приоритетом. Это не абстрактная или академическая разницы. Вы можете увидеть это самостоятельно. Хватайте ближайший iPad или iPhone и открывайте Safari. Начните загрузку сложной веб-страницы, такой как Facebook. На середине загрузки, приложите палец к экрану и подвигайте им вокруг. Вся отрисовка мгновенно останавливается. Сайт просто не будет загружаться, пока вы не уберете палец. Это потому, что поток пользовательского интерфейса перехватывает все события и рендеринг пользовательского интерфейса осуществляется в режиме реального времени. Для Android, это тот случай, когда эффективный двухъядерный процессор действительно помогает, поэтому Galaxy S II и славится своей плавностью. На iOS, когда приложение устанавливается из App Store, а вы приложите палец к экрану, установка мгновенно поставится на паузу, пока рендеринг не будет завершен. Android старается сделать и то и то с одинаковым приоритетом, поэтому частота кадров страдает. Как только вы заметите как это происходит, вы увидите что это повсюду на телефоне Android. Поскольку эскизы фильмов динамически добавляются к списку фильмов, когда вы прокручиваете вниз, а вот на iOS они спокойно добавляются только в момент остановки прокрутки. Несколько людей взялись объяснить ошибки, допущенные мною в упрощенном описании процесса отрисовки в iOS. Это то же поток в котором происходит отрисовка пользовательского интерфейса. Тем не менее, Apple предлагает очень простой API Grand Central Dispatch и NSOperation , чтобы переместить эти вещи в управляемые системой фоновые потоки. В iOS 5 можно даже заявить что Core Data объектно-реляционные базы данных контекст не может быть использован непосредственно в основном потоке. Что же мы замечаем? Изображение не отрисовывается пока вы не закончите прокрутку списка, рендеринг страницы в WebKit останавливается, когда система отслеживает прикосновение к экрану, это изначально встроенный механизм, который ставит на паузу весь мир, пока палец на экране. На самом деле это не совсем верно: Тем не менее, многие другие вещи, например, загрузка с диска или сетевая активность хранятся полностью в фоновом потоке, не останавливаясь, ничто из этого автоматически не приостанавливается в момент прокрутки. Разработчик должен указать явно задержки для этих вещей. Это преднамеренное поведение тщательно реализовано разработчиком каждого отдельного приложения. Это не техническое различие, это культурные различия. Хорошие разработчики под iOS не выпускают программное обеспечение, пока не работает на что-то около 60 кадров в секунду при прокрутке и отслеживает прикосновения практически идеально, как впрочем это делают и хорошие разработчики под Android. Основная причина по которой Android тормозит это структура потоков UI и их приоритетность, но это не единственная причина. Во-первых, аппаратное ускорение, несмотря на оговорки Дианы, все-таки помогает. Мой Nexus S прежде никогда не работал так плавно с момента обновления до ICS [прим. Аппаратное ускорение дает огромную разницу в приложениях, таких как домашний экран и Android Market. Помощь оказанная GPU также увеличивает время автономной работы, потому что графические процессоры — это оборудование с фиксированными функциями, так что они работают с меньшим энергопотреблением. Во-вторых, вопреки тому что я утверждал ранее, сбор мусора по-прежнему проблема, даже при работе по совместительству с GC в Dalvik. Например, если вы когда-либо использовали приложение фотогалерея в Honeycomb или ICS вы можете удивиться, почему частота кадров такая низкая. В-третьих, есть проблемы с оборудованием, что также упоминается Дианой. Tegra 2, несмотря на грандиозные претензии от отдела маркетинга Nvidia, наносит ущерб низкой пропускной способности памяти и не имеет поддержки набора инструкций NEON NEON инструкции в ARM это эквивалент SSE от компании Intel, которые позволяют быстрее рассчитывать матрицы на CPU. Honeycomb таблетки были бы лучше с различными GPU, даже если они были бы теоретически менее мощные в некоторых отношениях, нежели Tegra 2. Например, Samsung Hummingbird в Nexus S или Apple A4. Это говорит нам, что самый быстрый выпущенная Honeycomb планшет, Tab Galaxy 7. В-четвертых, Android имеет способ перейти на более эффективный композитинг пользовательского интерфейса. Графические процессоры очень хороши в этом. К сожалению, на Android, иерархия пользовательского интерфейса уплощена до рендеринга, поэтому анимация требует перерисовки каждого сектора экрана в которой она происходит. В-пятых, Dalvik VM не так развита, как десктопная JVM. Java печально известна ужасной производительностью GUI на десктопах. Тем не менее, многие вопросы, не переносятся на реализацию Dalvik. Swing был ужасен, потому что являлся кросс-платформенным слоем на вершине родной API. Интересно отметить, что Windows Phone 7 в основной пользовательский интерфейс построен на нативном коде, хотя первоначальный план был — базироваться полностью на Silverlight. В Microsoft в конце концов решили, что для придания интерфейсу необходимой производительности, код должен быть родным. Это легко увидеть разницу между родным и байт-кодом на Windows Phone 7, поскольку сторонние приложения написанных на Silverlight уступает в производительности Nodo и Mango смягчили эту проблему и Silverlight интерфейсы, как правило, сейчас очень плавные. К счастью, каждый из пяти вопросов, перечисленных выше, разрешим без радикальных изменений в Android. Аппаратное ускорение будет на всех телефонах под управлением Android ICS, Dalvik продолжает совершенствовать эффективность своего сборщик мусора, Tegra 2, наконец, устареет, есть обходные пути для существующих проблем композиции интерфейса, и Dalvik VM становится быстрее с каждым выпуском. Недавно я спросил Джейсона Кинкейда с TechCrunch, насколько плавной была работа Galaxy Nexus и он ответил:. Тем не менее, я считаю, что iPhone 4S также подтормаживал больше, чем я ожидал, особенно, когда я переходил на доступ к общему поиску приложений где вы проводите пальцем влево от главного экрана. Android UI никогда не будет совершенно плавным из-за конструктивных ограничений, которые мы обсуждали в самом начале:. Даже с Galaxy Nexus, или четырехъядерным процессором EeePad Transformer Prime, нет никакого способа, чтобы гарантировать гладкость и приемлемую частоту кадров, если эти два конструктивных ограничения остаются в силе. Это говорит, что мощности Galaxy Nexus хватит чтобы сравнится по плавности работы с первым iPhone трехлетней давности. Так почему же команда Android использовала именно такую структуру рендеринга? Работа над Android началась еще до выхода iPhone, и на тот момент система Android была разработана, чтобы быть конкурентом Blackberry. В оригинальном прототип Android не было сенсорного экрана. Компромиссы Android имеют смысл устройств с аппаратной клавиатурой и трекболом. И когда вышел iPhone, команда Android бросилась к выпуску конкурента этому продукту, но, к сожалению, было уже слишком поздно, чтобы переписать весь пользовательский интерфейс системы. Это же самая причина, почему Windows Mobile 6. После выпуска iPhone, в RIM, Microsoft, и Nokia отказались от своих мобильных ОС и начали разработку с нуля. Так почему же команда Android не изменила существующее положение дел? Я позволю Romain Guy объяснить:. Мы работаем над другими решениями, чтобы попытаться улучшить её возможность использования отдельный поток рендеринга, и т. Простое решение, конечно, это создание нового графического инструментария но есть много минусов в этом подходе. Как начинающий менеджер, я считаю, медлительность Android абсолютно неприемлемой. Когда тема Android поднимается как технически подкованными, так и не-технически образованными друзьями, я слышу снова и снова, что Android тормозит и работает медленно. Реальность такова, что Android может открывать приложения и отображать веб-страницы так же быстро или даже быстрее, чем iOS, но восприятие — это всё. Исправление тормозящего UI это будет начало долгого пути, чтобы восстановить репутацию и образ Android. Восприятие проблемы, тормоза — это нарушение философии компании Google. Google считает, что все должно быть быстрым. Вот ведущая философия Google Search, Gmail, и Chrome. Именно поэтому Google создал SPDY — для улучшения HTTP. Именно поэтому Google создает инструменты, помогающие оптимизировать ваш сайт. Именно поэтому Google запускает свой собственный CDN. Именно поэтому Google Maps отображается при помощи WebGL. Именно поэтому буферизации на Youtube что-то то что большинство из нас хорошо помнит, но видят все реже. Но, пожалуй, одна наиболее важных причин отставания в интерфейсе Android неприемлемо исходит из области человеко-машинного взаимодействия HCI. Именно поэтому эффект перепрокрутки в iOS эластичная резинка это так здорово, весело, и интуитивно понятно. И именно поэтому сенсорные экраны авиакомпании Virgin America Flights так расстраивают: Тормоза пользовательского интерфейса прерывают связь человека и сенсорного экрана. Общение с устройством перестает быть естественным. Пользователь исключается из взаимодействия с ними и должен безоговорочно признать, что они используют несовершенное компьютерное моделирование. И я знаю, они получат это в конечном счете. Команда Android является одной из самых преданных и талантливых команд разработчиков в мире. При таких звезд, как Диана Hackborn и Romain Guy Android находится в хороших руках. Я надеюсь, что эта публикация сократит путаницу вокруг тормозов Android. Немного удачи, и Android 5. В то же время, я буду в Редмонде работать над красивой и плавной мобильной ОС, и пытаться дать ей некоторое признание, которого она заслуживает. Некоторые производители смартфонов умудряются так покоцать оригинальны Android что на нем перестают работать многие приложения. Да нормальная у него скорость, просто не надо тыкать пальцами в экран, пока что-то грузится. Сколько пользуюсь — никогда проблем не было. Почему-то ни слова не было сказано про переход со среды Davlik на Art. Хотя разработчики утверждают, что последняя решит все проблемы "тормозов". И еще одна "большая разница" между ай-ос и андроид. Приложения для яблочных продуктов работают на языке Object C, а "зеленый робот" на Java-библиотеках, коих развелось бесчисленное множество — они фрагментируются и начинают тормозить в устройстве. Приложения не работают на Object C. А работают приложения либо в родном нативном коде, либо на Java VM. Приэтом под андроид можешь писать приложения хоть на C, хоть на java, хоть на питоне. Жаль, что нет скринов чистых версий, без оболочек. И ни слова о седьмой версии, которая сейчас находится в стадии бета-тестирования и можно загрузить на любое Nexus устройство Тем не менее, спасибо за труды! Там нет опции "создать папку". А папки, созданные через комп, букридер просто не видит. А заменить всроенную программу-букридер на alreader, fb2reader или ещё какую-нибудь — не реально разве? То есть сейчас все уже не так? Ой вечно обиженные прошивальщики едра. Наверное последние проценты батареи на минуса потратили: Sony Xperia Z3 Compact, 6 андроид — все работает без лагов, быстро и приятно глазу, так что уже все не так, но зависит это во многом от устройства. Единственное что не очень нравится в 5 и 6 андроиде, это как они шторку переделали, раньше было удобнее. За одну минуту рассчитайте средний вес разработчика Андроид, исходя из названий версий системы. Marshmallow — растение алтей аптечный, высокий розовый цветок, Европейское растение, которое произрастает в солоноватых болотах. Корни были ранее использованы , чтобы делать зефир , и его иногда культивируют для применения в медицине. Применяется также как наружное средство при лечении угрей, ожогов, фурункулезе, зубных абсцессов, воспалений ротовой полости: Marshmallow — это не только аптечное растение, но и зефир. Тема назвния версий — сладости и десерты, а не лечебные травы. Тормоза с отрисовкой часто прячутся за тормозами сети, соединения-то по-любому имеют приоритет выше, что там, что там, это очень заметно в случае с браузером. ИМХО чтоб заметить хвалёную иподную плавность нужны идеальные условия, а их обычно нет. Да и вобще, я то же не сильно программист, но вот интересный вопрос, а наскоко чаще рендеринг выполняется чаще чем генерация контекста как таковая? Имею устройство на платформе Lollipop. Все работает все устраивает. До этого было устройство на платформе Jelly Bean. Все работало как надо. Скорости интерфейса считаю хватает. До этого были устройства Финской компании. За кнопочными устройствами конешно Android не успеывет. Но считаю с плюсами Android минусы по скорости интерфейса не так важны. Я считаю что скорости интерфейса Android вполне хватает для повседневного использования. PutinGuten Много Ходов Очка 3 мая , Jeyko Иной 1 мая , Интересно, а за kitkat они платили что-либо? ОС Андроид лучшая из существующих. Psyhead 30 апреля , Работают либо в двоичном коде либо на языке Ява. Psyhead 1 мая , X-Hunter Ника 30 апреля , В букридере оникс стоит андроид — нет папок, все файлы одним списком. А что мешает понаделать папок если операционная система стоИт? А файловый менеджер программу поставить нельзя? XAMMAX 30 апреля , Тормознутая она может быть от железа. Надо тестировать на лучшем возможном железе. Могу вес среды разработки рассчитать: А еще говорят что Эпл для пидорасов. Желейная конфета, Леденец, очень мужественно звучит. Вы бы больше доверяли Андроиду если названиями были спиртные напитки? А лучше 3 гигабайта оперативной памяти и никаких тормозов. Много батарейки жрать будут. Zarokoff 30 апреля , Диана — это ваше всё…. Правила пользования сайтом Для правообладателей Реклама.


Презентация контекстная реклама
Можно ли мастурбировать раз в день
Нет месячных 2 месяца тест
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment