четверг, 31 октября 2013 г.

Xamarin

Решил попробовать сделать приложение под Андроид в Xamarin.
Открыл AndroidManifest.xml, поменял Target android Version
и не получается сохранить
Проверил ProcMon'ом - никто не держит файл, никаких отлупов.
Но сохранить не может :-)

Upd. Что-то где-то переключил - увидел ругань на несовпадение переводов строк  (исходно были МАКовские).
Разрешил поменять на виндовые - сохранил :)

вторник, 29 октября 2013 г.

Прототип

Делать прототип я начал с Mobile App под платформу Win32, т.к. по сути на планшет будет то же самое - никаких платформо-зависимых вызовов, только дергать сервер получать/отправлять данные.

Сервер пришлось помучать, чтобы заставить обычное VCL-приложение заработать в неосновном потоке (благо всякие окошки удалось отключить)
Заработало.

Начал собирать под Андроид - пришлось довыпиливать из интерфейсных модулей использование VCL-контролов, а также IBX.
Потом долго пытался бороться с 

[DCC Hint] H2596 C:\Users\Public\Documents\RAD Studio\12.0\PlatformSDKs\android-ndk-r8e\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\bin\arm-linux-androideabi-ld.exe: warning: cannot scan executable section 29 of c:\\program files (x86)\\embarcadero\\rad studio\\12.0\\lib\\Android\\Release/libmidas.a(alchemy.o) for Cortex-A8 erratum because it has no mapping symbols.
пока наконец не понял, что это "всего лишь" Hint а не Error.

Сделал прототип, стал показывать.
Оказалось, что мой wi-fi dongle неустойчиво держит связь,
Т.к. сервер у меня Stateful, помогла смена для серверных объектов LifeCycle на 'Session' (прототип сервера на большее и не допилен).

Теперь остается ждать согласования проекта, написания обоснования, наполнения его требованиями, изыскательские работы по ограничениям.

Ну и обратные вызовы я так и не попробовал.

О стиле

FireMonkey - это реализация идеи Model-View-Controller
Контрол  - это Model
Стиль - это View
Поэтому использование FireMonkey требует стилей.
Без них выглядит неважно.
И даже нельзя задать некоторые свойства (например, высоту TEdit, или TabHeight для TabControl'а) если нет стиля. Эти свойства, как правило, влияют на отображение контрола, а не на поведение (ReadOnly, Visible)

воскресенье, 27 октября 2013 г.

Delphi XE5, Android & Datasnap

В последнее время вижу много статей про Datasnap
Это вполне объяснимо ставшей доступной возможностью создавать приложения для Андроида в Дельфи.

В моей компании я предложил портировать приложение (кассовая программа) на Андроид.
Как это можно сделать: на Андроиде тонкий клиент, на сервере существующая программа, допиленная до возможности управления не с клавиатуры/мышки, а с удаленного устройства.
Проще всего это сделать при помощи DataSnap.
Можно передавать наборы данных, можно вызывать функции сервера.
Что еще надо?
Только нарисовать "мордочку" под планшет, да переделать сервер, чем я сейчас и занимаюсь.
На следующей неделе планирую показать руководству действующий прототип с созданием документа, добавлением позиций, оплатой и закрытием.
После чего инициатива перейдет к продакт-менеджерам для формулирования хотелок и планированию релиза.

Что удобно - в таком варианте изменение функционала будет добавляться/меняться прозрачно как для стационарной, так и для мобильной версии, ибо кодовая база едина.

В моем случае, правда, на мобильном клиенте из базы будут использоваться разве что типы данных и константы (посмотрим, что там с новой архитектурой FM)

пятница, 18 октября 2013 г.

Обжалование решения "судьи" Блинова

Смотрю запись трансляции. Суд начал читать какую-то бумагу (?) в 10:30
12:23 трансляции:
"Навальный и его пособник Офицеров в начале 2009 года решили похитить имущество Кировлеса. В начале 2009г Н. и О. изучили деятельность Кировлеса и поставили его в известность о том. что его продукция будет реализовываться через посредника. получив согласие(!) Опалева (директор Кировлеса), О. для создания видимости гражданско-правовых обязательств зарегистрировал ООО, подготовил и подписал договор поставки, не имеющий экономического смысла(!!!)" (13:30)

Все.
За одну минуту Кировский областной суд заявил, что перепродажа для него является экономической бессмыслицей, и посредническая наценка - не более чем фикция.

четверг, 17 октября 2013 г.

Как сделать из Wi-FI "Свистка" точку доступа

Купил сегодня D-Link DWA-125. При помощи данного совета настроил себе точку доступа:
http://4pda.ru/forum/index.php?showtopic=175743&st=2120#entry10287735
с правами администратора и выполняем в ней следующую команду:

- netsh wlan set hostednetwork mode=allow ssid="MS Virtual Wi-Fi" key="Pass for virtual wifi" keyUsage=persistent

В данном примере "MS Virtual Wi-Fi" – имя беспроводной сети, "Pass for virtual
wifi
"-пароль для доступа к этой сети. Вы можете задать данные значения по
своему усмотрению.

После выполнения данной команды, система найдет новое оборудование и в
диспетчере устройств появится новый сетевой адаптер,
а точнее виртуальный – Адаптер мини-порта виртуального WiFi Microsoft
(Microsoft Virtual WiFi miniport adapter). Но опять же, данный виртуальный
адаптер появится только в том случаи, если у нас драйвер беспроводного адаптера
имеет поддержку Virtual WiFi.
Перейдя в Панель управления – Центр управления сетями и общим доступом –
изменение параметров адаптера, увидим новое соединение
Wireless Network Connection 2, которое будет показывать статус – нет подключения.
Поэтому следующим этапом будет запуск сети. Для этого необходимо в командной
сроке, запущенной с правами администратора, выполнить команду:
- netsh wlan start hostednetwork.

После этого сеть запустится и заработает программная точка доступа (SoftAP).
В этом можно убедиться перейдя в Панель управления – Центр управления сетями и
общим доступом. Так как у нас используется подключение к интернету по Wi-Fi, мы
обнаружили, что Windows 7 подключена одновременно к нескольким беспроводным
сетям. Теперь другие беспроводные устройства могут подключаться к нашей точке
доступа.

примечание: Сам DWA-125 не очень удобный, так как слишком громоздкий, и соседние порты будут заблокированы его тушкой.
И еще - очень нестабильная связь у меня получилась (проверял на Samsung Galaxy S4)

P.S. кажется победил отваливание доступа - надо убрать с настроек адаптера все лишние протоколы , например TCP/IP v6, Microsoft Network, файлы и принтеры и всякие прочие антивирусы и файерволы.
Правда пока поставил себе Connectify, попробую на работе без неё, будет ли держаться связь.