Является ли идея переливать лопатой из лужи, которая возле твоего входа, в лужу, которая по среди дороги уже похожая на общую, спецификой здешних мест, или это общепризнанное решение для неровной дороги, лужайки или асфальта? Технологию рыть рвы на дороге чтобы туда сливалась вода из протекающего водопровода и водостока пока оставим на потом:-) Иногда весело понаблюдать за подобными процессами, как берут лопатой набирают воду и несут 10 метров с очень серьезным и важным видом, подобным я спасаю человечество, но яму возле входа не заделывают в течении нескольких лет.
Идеи приходящие в голову. Надеюсь они кому-то помогут. Заранее благодарен за комментарии.
Thursday, February 26, 2015
Wednesday, February 25, 2015
Выбор без вариантов
Попытки пользователей купивших телефон создающих петиции производителю относительно выпуска обновления или открытия исходников с большой вероятностью ни к чему не приведут. Компания уже продала телефон и у нее как таковой нет причин обновлять устройство на новую версию android, максимум обновить текущую прошивку с исправлением ошибок или закрыть какую-то прореху в безопасности позволяющую получить повышенные права и установить или заменить часть прошивки.
По сути открытие кода ядра как единственной части системы которая требует открытия по лицензии никоим образом не гарантирует возможность изменений в прошивке. Так как загрузчик может быть заблокирован и скорее всего он не будет загружать не подписанные особым образом ядра или иметь не стандартные протоколы для загрузки элементов прошивки.
Как побочный эффект есть неоднозначность, или иметь прошивку без проблем безопасности или иметь проблемы с безопасностью, но благодаря таким обходным путям иметь возможность заменить прошивку.
И получается, что иногда производители позиционируют телефон как не флагманский через установку не последней версии android, установки не самого мощного в линейке процессора или экрана меньшей диагонали или забыть установить какой-то датчик. Что не так страшно по пользовательским ожиданиям, иногда даже в значительно степени повышает пользовательскую ценность и если есть возможность установки обновленной прошивки последней версии, то пользователь получает почти идеальное устройство, так как нивелирует ограничения установленные производителем.
Friday, January 2, 2015
Поддержка многоканального звука
По умолчанию pulseaudio не поддерживает многоканального звука если это не стерео звук и даже если alsa смогла правильно сконфигурировать и обнаружить многоканальный звук - выводит звук только на фронтальные колонки звук. Для того чтобы это исправить нужно принудительно указать что нужно создавать многоканальный звук изменив значение в /etc/pulse/daemon.conf на default-sample-channels = 6 или на то значение сколько есть каналов в наличии и перегрузить pulseaudio.
Sunday, December 14, 2014
Пиринговый браузер
Bittorent планирует выпустить браузер базирующийся на использовании пиринга для получения данных с сайтов, возможно такая идея имеет некоторые затруднения:
- популярность, нужно получить достаточный процент использования, чтобы выйти на уровень эффективности технологии и как следствие требуются плагины для основных браузеров или модуль проксирования для поддержки остальных браузеров;
- при кажущейся приватности: сайт и провайдер теряют к какой-то степени возможность контроля за трафиком, переходя в ранг трекеров, но в тоже время все соседи с которых идет скачивание контента начинают видеть хоть и частично весь трафик. И появляются проблемы с https/http 2.0 - загнать такой трафик в пиринговую сеть сложно так как каждый пакет шифруется ключом зависящим от сессии и как следствие его не расшариш без сессии нужны надежные обходные пути.
Анонимность номера
Счастье всем даром
и пусть никто не уйдет обиженным.
Стругацкие.
Маленькая идея решения проблемы мультисимочников и для людей вынужденных носить множество телефонов, когда забываешь зарядить телефон или он неожиданно сел из-за двойной нагрузки работающих двух приемников.
Решение достаточно простое и повторяет решения мобильных операторов, когда за дополнительную плату предоставляется дополнительный телефонный номер у этого же оператора. Достоинство его в получении неограниченного количества псевдо анонимных номеров телефона не привязанных к конкретному мобильному оператору.
Технически логика такова: получение по запросу с мобильного приложения или другого легкодоступного метод новый номер телефона, который можно сразу использовать для регистрации в магазинах или для других любителей рассылок, что позволяет не дать привязку к одному телефону и деанимизировать пользователя и узнать его личные предпочтения. Реализации возможна в таком виде, нужно выделить несколько номеров стандартной длины с добавлением суффикса неограниченной длины и проксировать звонок на реальный номер и с него, для этого можно арендовать номерную емкость и постепенно расширять при увеличении количества клиентов.
Sunday, October 19, 2014
Добавление логотопчика при загрузке
Для пояснения, где эта картинка будет показываться рассмотрим последовательность загрузки телефона:
- uboot или другой загрузчик, показывает логотип кампании производителя статическая картинка поменять в теории можно, но нужно понимать как загрузка происходит на низком уровне и иметь возможность изменить radio и hboot разделы.
- загрузка ядра и инициализация устройств, можно добавить лого именно сюда и оно продержится пару секунд до момента старта инита и замены на анимацию загрузки
- загрузка инита и монтирования разделов и запуск сервисов показывается обычная анимация из файла подобного /system/customize/resource/hTC_bootup.zip.
Для того чтобы заменить или добавить логотипчик на 2 шаг нужно сделать такие шаги:
- Преобразовать картинку с размером экрана(480x800) в raw формат: convert -depth 8 -size 480x800 ~/Downloads/Tux.png rgb:tux.raw
- Собрать програмку конвертор в формат который понимимает ядро: gcc to565.c -o to565
- И с конвертировать в нужный формат ./to565 -rle < tux.raw > msmlogo.rle
- Положить этот файл в корень ramdisk и проверить включен ли CONFIG_FB_MSM_LOGO. По умолчанию картинка должна имень название initlogo.rle, но в моем случае инит скрипт пытался чтото сделать с этой картинкой, что приводило к ребуту телефона и для избежания конфликта я ее переименовал.
Sunday, October 12, 2014
Пересборка boot раздела для android
Собираем утилиты для распаковки образов:
git clone git://github.com/CyanogenMod/android_system_core
cd android_system_core
gcc -o ../mkbootimg libmincrypt/*.c mkbootimg/mkbootimg.c -Iinclude
gcc -o ../unpackbootimg libmincrypt/*.c mkbootimg/unpackbootimg.c -Iinclude
Распаковываем старый образ полученный с обновления или иным путем:
./unpackbootimg -i boot.img
mkdir ramdisk
cd ramdisk/
gunzip -c ../boot.img-ramdisk.gz | cpio -id
В папке с ramdisk меняем части которые нам нужно, разрешаем отладку и отключаем проверки безопасности (при входе под adb сразу root) меняем:
--- default.prop 2014-08-07 22:35:02.481322985 +0300
+++ default.prop 2014-08-07 22:35:18.293601299 +0300
@@ -1,8 +1,8 @@
#
# ADDITIONAL_DEFAULT_PROPERTIES
#
-ro.secure=1
+ro.secure=0
ro.allow.mock.location=0
-ro.debuggable=0
+ro.debuggable=1
persist.service.adb.enable=0
ro.metropcs.ui=0
Соберем ramdisk обратно:
cd ramdisk/
find . | cpio -o -H newc | gzip > ../newramdisk.cpio.gz
cd ..
Упаковываем в новый boot:
cp ../z4u-kernel/arch/arm/boot/zImage .
./mkbootimg --kernel zImage --ramdisk newramdisk.cpio.gz --base 0x3b00000 --cmdline 'no_console_suspend=1 console=null' -o new_boot.img, где 0x3b00000 значение из boot.img-base, no_console_suspend=1 console=null значение из boot.img-cmdline
Subscribe to:
Posts (Atom)