Есть ли способ запустить стеклянную посуду в эмуляторе?

Сегодня Google только что выпустила GDK Sneak Peak для Google Glass. Я безуспешно пытался запустить образцы, которые они разместили на GitHub:

Я ориентируюсь на Android 4.0.3 Glass Development Kit Sneaky Preview и пытаюсь запустить его в AVD, который также нацелен на него со следующими другими характеристиками:

  • 640x360 hdpi
  • Для процессора я пробовал как ARM, так и Intel Atom.

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

введите здесь описание изображения

Если я пропущу его и попытаюсь запустить, я увижу следующий вывод ошибки:

Installing com.google.android.glass.sample.compass
DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/com.google.android.glass.sample.compass"
pkg: /data/local/tmp/com.google.android.glass.sample.compass
Failure [INSTALL_FAILED_MISSING_SHARED_LIBRARY]

Я попытался заставить не требовать стеклянную библиотеку (установив требование false) в AndroidManifest.xml:

<uses-library
    android:name="com.google.android.glass"
    android:required="false" />

... но, очевидно, не работает должным образом, он отображается в виде наложения:

введите здесь описание изображения

Я также пытался использовать Genymotion, но он тоже не работает.

Есть ли способ успешно запустить стеклянную посуду в эмуляторе?

ИЗМЕНИТЬ:

Добавление gdk.jar в качестве библиотеки не работает.


person atxe    schedule 19.11.2013    source источник
comment
Хороший вопрос. Если вам это удалось, оставьте комментарий/ответ и здесь - stackoverflow.com/questions/20112673/   -  person JustCause    schedule 21.11.2013


Ответы (1)


Похоже, что только небольшой процент кода примера использует библиотеки GDK. Например, в примере Compass есть CompassService, который отвечает за присоединение CompassRenderer к Glass Live Card. У него также есть CompassMenuActivity, которая в основном имеет вызовы стандартного рендеринга меню Android. Их можно назвать «клеем», который объединяет функциональность компаса в опыт работы со Glass. Основные части кода компаса — это просто стандартные библиотеки Android.

Предполагая, что в эмуляторе в настоящее время нет возможности запускать библиотеки Glass (и еще никто не взломал их), и если вы хотите запустить пример Compass без реального оборудования Glass, вам нужно реализовать Service & MenuActivity в свой собственный "стандартный Android" способ. По сути, создайте действие, которое реализует CompassRenderer в представлении поверхности.

Взгляните на эти коммиты в качестве примера (проверено на Galaxy S4, представления визуализируются, а пункты меню работают):

https://github.com/blaind/gdk-stopwatch-sample/commit/26e9801af983b9fc931d6dfe5ce1fcb80766fd10 https://github.com/blaind/gdk-compass-sample/commit/0d89e922a167c0fac6890684c514b9028e7bfea8

person Mika Vatanen    schedule 21.11.2013
comment
Хорошее замечание :-) Я бы добавил, что живые карты очень похожи на виджеты. Интересно, сколько времени потребуется, чтобы создать что-то с внедрением зависимостей, чтобы полагаться на нестеклянные классы ^^ Поскольку кажется, что на данный момент взломанного эмулятора нет, я принимаю ответ ;) Спасибо! - person atxe; 25.11.2013