пятница, 5 февраля 2010 г.

Motorola Milestone - ещё одно устройство в моей сети.

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

И вот, на тебе. Все делают Android.

Microsoft "предостерегает", потому что Android уже сейчас мощный конкурент еще не вышедшего WinMobile7.

Microsoft "любит", потому что Android со своей нестандартной Java подрывает позиции Java ME и Java SE, как конкурента .NET.

Microsoft "ненавидит", потому что "харизма" от MS перетекла сначала в Apple, а теперь направляется в Google Android.

И "думает" как вести войну на два фронта. Есть предположения, что по стратегическим планам Microsoft WinMobile 6,5 должна убить Android, а "Семерка" разберется с iPhone. Если это так, то в MS действительно все малохольные.

Это ж сколько денег мимо кассы проплывает.

А имя Google действительно стоит денег, раз в него поверило столько производителей.

Кстати говоря, в начале года Microsoft и Apple объединились и начали военную команию против Google. Пока на самого Большого Брата впрямую не нападают, а лупят его саттелитов в лице HTC за нарушение патентов.

Не питаю никакой любви ни к кому из этой троицы. Чем больше они будут лупить друг друга, тем лучше нам будет.

Обзоры про android и про Motorola Milestone можно посмотреть здесь:





Все недоделки связаны в основном с реализацией поддержки русского языка.
Дело в том, что ее почти нет в телефоне.
  1. Русификация аппаратной клавиатуры.

    Телефон русифицируется программой ruKeyboard
    Телефон можно русифицировать "по транслиту" или "ЙЦУКЕН".
    При русификации "транслитом" что клавише С соответсвует буква "Ц", а клавише F - соответсвенно буква "Ф". И так далее.
    Буквы, не уместившиеся на клавиатуру, набираются последовательным нажатием клавиш:
    "Ч" - C, H
    "Ь" - Q, Q
    "Я" - Y, A
    "Э" - J, E
    И так далее...

    В общем, такого изврата я еще не видел. Но работает. И даже удобно, когда привыкаешь.
    Не ясно, правда как набирать буквосочетания "ую" (например в словах "кую красную маракую").
    Традиционно надписи русских букв "ЙЦУКЕН" сделаны синим цветом. В темноте их не видно, потому, что не "просвечиваются". Потому что "всю контабанду делают в Одессе, на Малой Арнаутской".

  2. Телефонная книга.
    Можно настроить на автоматическую синхронизацию с Google контакты. Работает эта функция хорошо и быстро.
    Последнее время Google добавляет новые поля в контакт. Правда не все они синхронизируются с Android. Будем надеятся, что эта функциональность в ближайшее время будет развита.
    Минусы:
    • Отсутствует группировка контактов по первой букве в соответствии с русским алфавитом.
    • Отсутствует изменение способа сортировки - фамилия, имя, компания и т.п.
    • Мало полей в странице контакта.
      Вообще, полей в карточке контакта великое множество. Посмотреть их можно сделав импорт контактов из web gmail. Но большинство их не доступно для изменения через web интерфейс или через интерфес Android
    • Не все поля контакта синхронизируются.

  3. SMS
    На русском до адресата не доходят. Точнее доходят, но без текста.
    Есть сторонняя программа: Handcent SMS, которая решает эту проблему. Заодно красивостей прибавляет.

  4. USB разъем - проприетарный.
    Такой же как у нокий.
    Если бы свой сделали, еще можно понять. Но зачем нокиевский копировать?! Поди еще и роялти за использование отчисляют. Я тут тень на плетень навел.
    Всем миром договорились, что это будет единый стандартный разъем для мобильных телефонов для синхронизации и зарядки. Чем старый mini-USB не устраивал? Судя по всему там, на диком западе, тоже коррупция и сплошная бездуховность.

  5. Экран, тачскрин.
    Экран большой контрастный, высокого разрешения.
    Минусы:
    • на ярком солнце не видно ничего (пробовал пользовать на Эльбрусе);
    • если не заблокировать экран и начать вертеть аппарат в руках, он сам будет набирать телефоны из адресной книги.
      Мой совет: держа в руках телефон, прячте свои эмоции, забудьте слова "идиот", "пидорас", вводите в лексикон: "классный", "молодец" и т.п.;
    • Если руки влажные, сенсорная чувствительность экрана снижается
  6. Микрофон
    Очень направленный. Если повернуть телефон даже немного в сторону от рта, собеседник ничего не слышит.
  7. Браузер
    Браузер используется свой. Он работоспособный, но мне не понравился. Жду Mozila Firefox.

  8. Камера
    Область применения - фотографии для блогов, фотокопии документов. Как замена фотоаппарату - вариант сомнительный. Я снимал на Эльбрусе, где много солнца. Все равно снимки никакие. Вот пример.



    Много шума, резкость плохая.

Ощущения от реализации andriod такие. Взяли весь современный список функций смартфона, кинули в банку, тщательно перемешали, засыпали в квадратную форму и очень хорошо утрамбовали. Но:
  • То что сделано - сделано очень неплохо.
  • Гуглу верят - поэтому будет поддержка разработчиков.
  • Открытая платформа. Хочешь - пиши сам, что хочешь.
  • Баги, надеюсь, исправят.
В самом деле это убийца iPhone? На мой взгляд - нет. У них пока разные ниши. iPhone - это телефон для метросексуалов, блондинок и людей у которых есть более важное занятие, чем настраивать телефон.

Android - более технократический гаджет. Его будут покупать в первую очередь те, кому интересно копаться в программах. Кроме того в Android встроен GPS. Владельцы автомашин могут тоже подтянуться.

А вообще-то, пока Google не знает в чем преимущество Android перед iPhone, кроме технологического. Я бы на их месте сделал бы шаблоны с предустановленным софтом для разных категорий покупателей: для девушек, для автомобилистов, для домохозяек, для комерсантов. И выпустил приложение по примеру Firefox, позволяющее собирать коллекции из софта. Это было бы дело.

По состоянию на 8 марта 2010 года телефона в официальной продаже нет. Но можно оформить заказ на сайте www.kupimoto.com
Список наиболее полезных ресурсов сети, посвященных android.

Секретные Коды

КодФункция
*#06#IMEI
*#*#4636#*#*Информация и статистика
*#*#8350#*#*Voice Dialer Logging Disabled
*#*#8351#*#*Voice Dialer Logging Enabled
*#*#7262626#*#*FieldTest
**05*<puk Code>*<enter a new pin>*<confirm the new pin>#PUK Unlock (from emergency dial screen)
*#*#2846579#*#*TestingSettingsBroadcastReceiver defined in AndroidManifest.mk (Settings.apk)
*#*#8255#*#*GTalkDiagnosticsBroadcastReceiver defined in AndroidManifest.mk (Talk.apk)

Кроме того в сети много книг по разработке на платформе Android

Вот некоторые из тех, что можно найти на сайте 4PDA и некоторых других.

Внимание! Вы не можете скачивать эти книги, если у Вас нет на них прав!
Если нет подходящей темы, открывайте новую.

четверг, 4 февраля 2010 г.

Ссылки по Android









Upd 09/10/10 - Сделана ревизия ссылок первого блока

среда, 3 февраля 2010 г.

Как маркетологи воруют идеи.

 
Помните мультфильм про оперу?

-Некоторые говорят плагиат, я говорю заимствовано.

Я слышал байку, как японцы, которые, якобы, не могут ничего нового изобрести, а могут только хорошо реализовать, в поисках идей читали раздел "Полезные советы" журнала "Наука и жизнь".

Всегда относился к этому, как к интересной байке и не более.

Но некоторые события заставили меня задуматься: а байка ли это?

Года 4-5 назад я в форуме palmz.in написал короткую реплику о бестолковости дизайнеров и ущербности смартфонов с сенсорным дисплеем.

Я утверждал, и до сих пор в этом уверен, что сенсорный экран очень хорош для игр, серфинга и прочего, но очень плох как средство ввода для телефона.

Для того, чтобы набрать номер на сенсорном дисплее, нужно периодически смотреть на экран, поскольку тактильной обратной связи нет. Это затруднително делать в некоторых ситуациях. Например за рулем автомобиля.

Очень простая идея - на другой стороне смартфона сделать телефонную клавиатуру и маленький дисплей. Перевернул клавиатурой к себе - набрал номер и поговорил.
Перевернул большим дисплеем к себе - почитал книжку, полазил по интренету.

Недавно увидел, что Apple запатентовал такое устройство ввода для телефона.

Мало того, какая то контора (вроде Samsung, но могу ошибаться) сделала такой телефон. Видел недавно в MediaMarkt. Увиденное еще больше укрепило меня в мысли, что маркетологи в большинстве своем идиоты. Знают,как муравьи, только дорожки, обильно политые ферромонами дешевых курсов как продать очередной "хочешь похудеть". Ни на какие нестандартные действия они не способны.

Нужно задать себе один вопрос и обновить одно правило:
  1. А оно тебе нужно?

  2. Не ленись!

Вот так.

Если нет подходящей темы, открывайте новую.

Работа над ошибками.

Статья Ubuntu Karmic. Устранение бага wifi power management не актуальна. В ядре 2.6.32.7 (2.6.32-02063207-generic) устранено много багов. В том числе включена поддержка powersave для iwlagn (intel 5100). После установки нового ядра нужно проверить фунциональность, как указано в конце статьи.

воскресенье, 31 января 2010 г.

ReadyNAS Duo. How to compile Midnight Commader 4.7.0.1

Хочу сказать спасибо разработчикам mc из конференции mc-dev@conference.jabber.ru
il.smind, slavazanko, andrew_b, repolainen за терпение и позитивный настрой.
Без их помощи я потратил бы, наверняка, значительно больше времени с неизвестным результатом.

В репозитории ReadyNas Duo есть сбранный midnight commander. И проще всего установить именно из репозитериев. Но в нем отсутствует поддержка utf-8, что затрудняет работу с файлами в русской кодировке. Поэтому я решил собрать из исходников последнюю версию.

Итак.
  1. Должны быть установлены add-on: EnableRootSSH_1.0.bin, APT_1.0.bin

  2. Установить компилятор

    # apt-get update # apt-get install libc6-dev gcc gdb libtag1-dev uuid-dev pkg-config gettext bzip2

  3. Полезно установить какой нибудь редактор. Например nano
    # apt-get install nano

  4. Компилировать все пакеты будем в директории staff. В моем случае полный путь к staff будет /homes/akhromov/staff.

    # cd /homes/akhromov # mkdir staff # cd staff

  5. Установить checkinstall (чтобы было можно создавать установочные пакеты)

    # wget http://asic-linux.com.mx/~izto/checkinstall/files/source/checkinstall-1.6.2.tar.gz # tar xvfz checkinstall-1.6.2.tar.gz # cd checkinstall-1.6.2 # make # make install # checkinstall ... ... The package documentation directory ./doc-pak does not exist. Should I create a default set of package docs? [y]: n ... Please choose the packaging method you want to use. Slackware [S], RPM [R] or Debian [D]? D ... This package will be built according to these values: 0 - Maintainer: [ root@rnd ] 1 - Summary: [ CheckInstall installations tracker, version 1.6.2 ] 2 - Name: [ checkinstall ] 3 - Version: [ 1.6.2 ] 4 - Release: [ 1 ] 5 - License: [ GPL ] 6 - Group: [ checkinstall ] 7 - Architecture: [ sparc ] 8 - Source location: [ checkinstall-1.6.2 ] 9 - Alternate source location: [ ] 10 - Requires: [ ] 11 - Provides: [ ] 12 - Conflicts: [ ] 13 - Replaces: [ ] ... ... # dpkg -i checkinstall_1.6.2-1_sparc.deb # cd ..

    Курсивом показаны вопросы, которые задает checknstall. Жирным - ответы. Аналогично ответить нужно будет и дальше при создании дистрибутивов slang, glib и mc.

  6. Компиляция glib-2.14.6 (~20 минут)

    # wget http://ftp.gnome.org/pub/gnome/sources/glib/2.14/glib-2.14.6.tar.bz2 # tar xjf glib-2.14.6.tar.bz2 # cd glib-2.14.6 # ./configure --build='sparc-linux' # make # chechinstall # dpkg -i glib_2.14.6-1_sparc.deb # cd ..


  7. Компилируем slang-2.2 (~15 минут)

    # wget ftp://space.mit.edu/pub/davis/slang/v2.2/slang-2.2.0.tar.bz2 # tar xjf slang-2.2.0.tar.bz2

    В модуле slang-2.2.0/modules/fork-module.c (line 273) добавить
    #ifndef WCONTINUED
    #  define WCONTINUED 0                /* not available on ReadyNas Duo */
    #endif
    
    # cd slang-2.2.0 # ./configure --build='sparc-linux' # make # checkinstall # dpkg -i slang_2.2.0-1_sparc.deb # cd ..


  8. компилируем mc (~ 20 минут)

    # wget http://www.midnight-commander.org/downloads/22 -O mc-4.7.0.1.tar.bz2 # tar xjf mc-4.7.0.1.tar.bz2 # cd mc-4.7.0.1 # ./configure --disable-vfs --build='sparc-linux' # make # checkinstall # dpkg -i mc_4.7.0.1-1_sparc.deb


Ну и вот что из этого получилось:



Кому лениво все это проделывать, тот может установить из собранных мной пакетов # cd /tmp # wget http://www.opendrive.com/files/8633064_sal1L_8351/glib_2.16.6-1_sparc.deb # wget http://www.opendrive.com/files/8633061_FyV1y_b1e9/slang_2.2.0-1_sparc.deb # wget http://www.opendrive.com/files/8633065_WMLjj_84b1/mc_4.7.4-1_sparc.deb # dpkg -i glib_2.16.6-1_sparc.deb slang_2.2.0-1_sparc.deb mc_4.7.4-1_sparc.deb

Подводные камни.

Я нарвался на такой фокус. Установил из репозитория предыдущую версию mc и старый glib. Компилируя новый glib, старый я не удалал. Из-за этого в библиотеках получалась мешанина и линкер не мог правильно собрать mc.


Если нет подходящей темы, открывайте новую.