2012-01-25 2 views
11

Прежде всего, я не спрашиваю «это нормально, если я полностью забываю об эффективности при написании приложения для Google TV». Я никогда этого не сделаю! :)Google TV - разрабатывает для эффективности так же важно, как и с телефонами/планшетами?

Но мне все еще интересно: в чем разница между разработкой чего-то для Google TV и мобильного устройства, такого как планшет/телефон? Я нашел много информации в Интернете о различиях в дизайне пользовательского интерфейса (т. Е. Телевидение должно быть более социальным, без ориентации экрана, без сенсорного экрана и т. Д.), Но ни одна из документации не описывает аппаратные отличия между двумя устройствами , Чтобы быть более конкретным,

  1. Учитывая, что Android изначально был разработан для мобильных устройств с ограниченным объемом памяти, разрабатывает приложение для Google TV любое другое?

  2. Телефоны и планшеты не имеют роскоши пространства подкачки, и, следовательно, существуют жесткие ограничения на память ... это также в случае с Google TV?

  3. Dalvik VM оптимизирован для минимального объема памяти на телефонах/планшетах ... это Google TV, поддерживаемый той же самой VM, немного отличающейся версией, разработанной специально для Google TV (но с теми же целями дизайна), или совершенно другой виртуальной машины (с учетом различных целей дизайна)?

  4. Каковы фактические различия в оборудовании при сравнении трубки/планшета и телевизора Google? Являются ли эти различия значительными?

  5. ли Ice Cream Sandwich и Jelly Bean улучшить производительность в любом случае (т.е. он делает использование этих новых возможностей аппаратного обеспечения?)

ответ

4

Учитывая, что Android изначально была разработана для мобильных устройств с ограниченной памятью, разрабатывает приложение для Google TV любого другое?

По существу, нет. Эти устройства могут существовать в их форме, потому что они используют мобильную ОС и поэтому могут работать на менее дорогостоящем оборудовании. ЦП может быть рядом с производительностью современных телефонов среднего уровня; насколько я могу сказать, что графический процессор имеет гораздо более низкую производительность (особенно с учетом разрешения экрана, который он управляет), то в настоящее время он типичен для телефонов.

Кроме того, объявленные на Google TV устройства следующего поколения основаны на ARM, поэтому ожидайте, что они будут намного более похожими на производительность.

Мобильные телефоны и планшеты не могут позволить себе роскошь подкачки и поэтому есть жесткие ограничения на память ... это также и в случае с Google TV?

Да, это то, как Android предназначен для работы.Я не знаю, как много RAM находится в текущих устройствах GoogleTV, но я сомневаюсь, что это больше, чем то, что вы видите на текущих Android-планшетах (1 ГБ). Как всегда вы можете использовать ActivityManager.getMemoryClass() и ActivityManager.getLargeMemoryClass(), чтобы узнать ситуацию с памятью устройства, на котором вы работаете.

Dalvik VM оптимизирована для минимального объема памяти на телефонов/планшетов ... это Google TV работает на той же самой VM, в несколько иной версии, разработанной специально для Google TV (но с тем же проектные цели), или совершенно другой VM (с различными целями дизайна)?

Это точно такая же виртуальная машина, которая работает только на x86.

Каковы фактические различия в оборудовании при сравнении телефона и планшета и телевизора Google? Являются ли эти различия значительными?

Есть несколько очевидных вещей:

  • Ввод в первую очередь за счет взаимодействия DPad, так что вы хотите реализовать свое приложение так, что взаимодействие с DPad работает хорошо. Android всегда поддерживал довольно полное взаимодействие с DPAD, поэтому на самом деле это не совсем что-то новое, просто часть дизайна приложения, которую часто используют мобильные разработчики, ориентированные на мобильные устройства. (Однако полезно правильно поддерживать DPAD не только для GTV, но и для таких вещей, как Asus Transformer, когда пользователь взаимодействует с клавиатурой.)

  • Нет таких датчиков, как акселерометр и т. Д. Вы можете использовать API-интерфейсы платформы, такие как PackageManager.hasSystemFeature(), чтобы узнать, существует ли аппаратная функция или объявить требование для функции в вашем манифестах, чтобы приложение не было доступно на таких устройствах.

  • Эти устройства не могут вращаться, поэтому вам нужно будет работать на ландшафтном экране.

Конечно экран вы будете работать на больше, чем обычный экран телефона, но с поддержкой Android, для планшетов у вас есть много инструментов (например, фрагменты) доступны для настройки, чтобы воспользоваться преимуществами экрана , Особенно теперь, когда вы можете предположить, что эти устройства работают 3.x или новее, доступна вся инфраструктура, представленная на платформе для планшетов.

Существует также длинный документ по дизайну пользовательского интерфейса для GoogleTV по номеру https://developers.google.com/tv/android/docs/gtv_android_patterns, в котором есть много хорошего материала о том, как думать о вашем пользовательском интерфейсе на телевизоре. Существует множество особенностей дизайна пользовательского интерфейса GoogleTV; Я бы посоветовал вам уделять большое внимание общим точкам (пространство, доступное для пользовательского интерфейса, - это не намного больше, чем телефон, не создавайте свой пользовательский интерфейс вокруг взаимодействия с мышью и т. Д.), А затем решайте, что имеет смысл для вас сколько вы просто собираетесь представить свой телефон/планшетный интерфейс на телевизоре, вместо того, чтобы делать что-то более настроенное, чтобы следовать рекомендациям GoogleTV. До тех пор, пока вы будете следовать принципам с пользовательским интерфейсом, который хорошо работает с навигацией DPAD и т. Д., Я думаю, что вы будете хороши.

+0

, на которые вы ответили на все мои вопросы ... спасибо за то, что вы так тщательно изучили! это странно ... вы могли бы подумать, что андроид публично документирует часть этой информации в Интернете или, по крайней мере, пояснит, что ОС Android и аппаратное обеспечение, использующие телевизоры Google, очень похожи на мобильные устройства/планшеты. –

+0

Как вы думаете, Google TV будет лучше работать с оптимизированной версией Android? один, который мог бы, например, использовать больше памяти и/или swap-space? Я понимаю, что такие вещи будут противоречить целям дизайна Android ... но у меня есть Google TV, и иногда хочется, чтобы он работал немного быстрее. больше RAM и/или дискового пространства могло бы помочь ... –

+1

Я очень сомневаюсь, что использование большего количества оперативной памяти заставит его работать быстрее. Я не знаю, сколько оперативной памяти находится в текущих устройствах GoogleTV, но Android работает более чем в 1 ГБ ОЗУ, как на Galaxy Nexus. Что касается документирования Google TV, он не является частью основной платформы (например, вы не можете создавать программное обеспечение Google TV от AOSP), поэтому не задокументированы. – hackbod

7

У меня есть Logitech Revue и это, конечно, не безотлагательное устройство ; Я надеюсь, что разработчики обратят внимание на производительность при таргетинге на нее.

Согласно this forum link, эти спецификации для Revue:

  • Intel Atom CE4150 1,2 ГГц процессор, с GPU 400 МГц
  • Gigabyte GA-SBKAN2 материнской платы
  • Samsung K9F8G08U0M 1 Гб NAND Flash (одноуровневая ячейка) Спецификация Зеркало
  • Hynix H27UBG8T2ATR 4 Гб NAND Flash (Multiple Cell Level) Технический паспорт
  • Silicon Image Sil9135 HDMI 1.3 приемник Чип Informat иона Спецификация от TI
  • Nanya NT5CB128M8CN-CG 1 ГБ DDR3 SDRAM (1 Гб X 8) Datasheet
  • Realtek Semiconductor RTL8201N 10/100M PHYceiver Технический паспорт
  • Микрочип PIC24FJ64GA004-I/PT 16-битовый микроконтроллер Технический паспорт
  • Phison S2251-50 USB для флэш-контроллера (Datasheet не доступны конечным пользователям в соответствии с производства)
  • IDT ICS9LPRS525AGLF Часы для CPU Datasheet
    • Samsung K9F8G08U0M 1 Гб NAND Flash Используется для хранения загрузчика, ядро, загрузочная флеш-графика, ОС Linux и т. д. Hynix H27UBG8T2ATR
    • 4 Гб NAND Flash (долговременное хранение)

Используется для постоянного хранения, устройство/DEV/SDA - можно переопределить с помощью внешнего USB-накопителя

  • Микрочип PIC24FJ64GA004-I/PT 16-разрядный микроконтроллер

Используется для обработки ИК-входов/выходов для пультов/ИК-бластеров и возможно интерфейс с беспроводной клавиатурой

Перезагрузка системы/пониженной мощности

  • Возможно HDMI CEC
  • Silicon Image Sil9135 HDMI 1.3 Приемник

Используется для обработки видео и из портов HDMI, а также аудио через HDMI и SPDIF Поддерживает DTS, даже несмотря на то, что Revue не позволяет (возможно, обновление может включить эту функцию)

  • IDT ICS9LPRS525AGLF Часы для CPU

Обеспечивает часы для процессора Intel Atom

+0

Интересно, не знал, что есть устройство x86 под управлением Android. –

+0

Спасибо за вход! Я сейчас далеко от дома, но я знаю, что у моей семьи также есть Google TV, и это, безусловно, не переносится ... речь идет о размере DVD-плеера. Вы бы подумали, что у него будет, по крайней мере, двухъядерный процессор, но я думаю, нет. Кажется странным, что нет внутреннего жесткого диска (кроме 5 ГБ флэш-памяти) ... Интересно, почему это так. –

+0

Я бы рассмотрел «переносимый» Logitech Revue - помимо настенной бородавки, речь идет о размере книги в твердом переплете. В противном случае я не собираюсь защищать что-либо об этом; У Logitech была ужасная поддержка, а затем она оставила его без разблокировки. Таким образом, он не может быть укоренен и взломан. –

0

То, что вы заметили что-то, что было вокруг на некоторое время. Кто-то где-то решил назвать это «10 Foot UI», когда XBMC был способ сделать все это. Вообще говоря, да, пользовательский интерфейс сильно отличается на общем устройстве, которое вы не можете или не будете касаться, по сравнению с личным устройством, которое вы бы касались совсем немного. На карманном устройстве пользовательские интерфейсы, как правило, «выглядят из-за стекла». Вещи, с которыми вы можете напрямую взаимодействовать и манипулировать ими. На 10-футовом UI вещи, как правило, больше, проще и дружелюбнее, чтобы косвенно манипулировать чем-то таким же странным, как классический пульт 0-9.

+0

Да, но как насчет различий в оборудовании и как это влияет на то, как разработчики пишут свои приложения? –

+0

@AlexLockwood Как и в случае с Android, фрагментация будет стать кошмаром. Сейчас это всего лишь Revue и один телевизор Sony, но вы просто ждете. Это будет так же, как то, что произошло с телефонами. Кроме того, то, что ваше приложение должно делать для пользователя, будет отличаться для все, и какие функции нужны, будут разными, на самом деле нет никакого общего заявления, которое вы можете сделать, кроме работы с тем, что у вас есть. Я знаю, что на самом деле это отличный ответ, только мои 2 цента. – slf

+0

Один из проблемы, с которыми приходится иметь дело с GTV, - это метод ввода. У вас есть только d-pad в качестве входных данных, но у Logitech Revue есть мышь, которая имитирует события касания. – BitBank