А вот с камерой поясните..Почему вы не используете ТСД (Терминалы сбора данных)...Специально обученное устройство для складов ,чтения (мгновенного) QR кодов различного типа и штрих кодов различного типа...Это устройство в котором есть сканер штрихкодов(с аппаратным декодированием ) и специальная камера с SDK для декодирования этикеты как у Вас на фото(Типа отделить тект от цены от штрихкода)...(Отказ от ТСД ведь не из-за экономии?) В этом случае всё делаеться нативным sdk производителя,а вам отправляется broadcust ,который легко плагином отлавить во flutter.И если чтение штрихкода (разбор этикетки)является камнем преткновения,то в этом случае(ТСД) и проблемы то нет.
Мне кажеться полпулярность снизилась с момента перехода на новый спецификацию расширений...тогда очень много пелезных расширений отвалилось и их не переделали под новую спецификацию для FF...а те что переделали работали некачественно.
Не там надо с бубном потанцевать...ниже ответ написал (возможно в другой ветке)
Цитирую,что ответил
После поиска решения невхода, что домен не внесен(Текс ошибки не соответствует причине ) выяснилось что надо отключить "Использовать строгий режим для URI перенаправления " Я его отключить не мог почему-то...просто добавил uri .. Всё одно при входе (см видео) пишет красный треугольник предупреждения(как его убрать ? кто знает?)...а дальше возвращает токен в прогу
Ещё раз благодарю за ссылку ngrock...Без него сложно оттестировать вход в соц сети...жаль что после перезапуска сервиса ngrock ссылка новая.
После поиска решения невхода что домен не внесен(Текс ошибки не соответствует причине ) выяснилось что надо отключить "Использовать строгий режим для URI перенаправления " Я его отключить не мог почему-то...просто добавил uri .. Всё одно при входе (см видео) пишет красный треугольник предупреждения(как его убрать ? кто знает?)...а дальше возвращает токен в прогу
Поправил код...подправил личный квбинет facebook приложения...и тут совсем странно пишет что домен не внесен в приложение,..хотя он точно внесен..я вот даже видно набросал ниже по ссылке
Завел на Facebook приложение получил client-id ,клиент секрет увидел ,-вставил...запустил ...в браузере,- одна ссылка на странице login facebook / давим / Первое что facebook не нравится надо добавить домены(я ну как бы со страрта ...имею только localhost...)Добавляю localhost в настройки приложения на сайте developer.facebook...Теперь ему(facebook) не нравится...что не https :-)
Теперь ему не нравится самоподписанный сертификат...(Да и calback куда оно сделает?(Не на localhost же)..но до calbback еще далеко)....
Т.е чтоб это оттестировать мне надо...реальный IP(или арендовать VPS) купить домен к нему ,организовать ключ и сертификат к этому домену...и лишь потом скормить это facebook,убедившись что авторизация через сеть работает?
Да многое можно решить...просто зачем решать...когда можно взять ту же стандартную технологию такую, же простую...и при этом достигнуть результата и побочных проблем не решать.
Тут такие темы уже обсуждались...я там писал свое решение(работаем через браузер со всем POS оборудованием через rs-232 причем в соновном в линуксе...Надо сделать прогу которая запускается на компе и прослушивает WebSocket и перекидывает пакеты в драйвер нативный для данной ОСИ(У нас драйвере на java поэтому нет разницы) ...Почему имеенно websoket? Потому что вы можете обратится из него к localhost
В бразузере в JS
var socket = new WebSocket("ws://localhost:7081");
socket.send(Ваши команды и ваш пакет);Прога шлюз прослушивает порт websoket 7081 и выполняет задачу.
Если ваша система загружена c url типа mycrm.com,то к localhost проблемно обычным REST обратится из-за CORS ,Same Origin Policy...а WebSocketом можно ходить на любой URL...
Всё... когда мы получили уже задачу и данные от браузера,то нативными решениями или по низкоуровневому протоколу rs-232 (я его предпочитаю ибо ИС кроссплатформенная) либо используюя решение производителя(обычно оно только под винду по технологии ActiveX объекта) выполняем задачу и по websoket "кричим" в браузер о стадии выполнения.
Это то,что будет работать(и работает)во всез браузерах во всех ОСях.
То, что Вы расказываете не соответствует моему опыту...Я нача "щупать" php с 7.4 Тогда в репозитории Centos 7(я работаю с Centos-redhat направлением) его не было...я сбилдил из исходников...становился в аккурат в хардкодную папку...можно юыло сбилдить(указав в конфиге ) в другую...но расширения не цеплялись к нему.
Мне не нравится хардкодный путь...я бы хотел его запускать откуда хочу... типа /home/shop/php и запускать его низкоприоритетным пользователем.(который вообще не видит /usr /bin и т.д )
ещё бы я хотел иметь кучу версий для экспериментов /home/shop/php8 /home/shop/php7.2 /home/shop/php7.4 и т.д
Задать этот путь можно только скомпилировав из исходников в файле config...и я так делал...но все расширения типа mysqli пытаютя стать в /usr/local/php и т.д ...а я бы хотел чтоб они ложились в home/shop/phpX или туда куда мне нужно(может это и можно дикими усилиями как-то добится...но овчинка думаю не стоит выделки...ибо есть докер)
C java и node таких проблем нет....И можно например постепенно переползать на новые версии java(имея их сколько угодно в домашней папке) и изучать новые фичи
Можно на лету сгененрировать PHP файл по некотрым правилам(Ну например что он поддерживает некий интерфейс.
сделать include и тут же выполнить на лету.
$newmodule_php =genereate_and_save(...arg)
require_once('./connect/Idbcommon.php');//Интерфейс что должен поддерживать newmodule_php
include_once(SYS_BASE_PATH . "некий путь/" . $newmodule_php . ".php");
$t = new $newmodule_php(...arg);
if ($t instanceof Idbcommon)...Выполняем только что на лету сделанную логику и это классно
Это дает возможность типа саморазвиваться платформе ,что Вы пишите...на других языках так же сделать ещё тот головняк.
Но мне в нем не нравится жесткая привязка к пути VM php типа /usr/local/php
Даже если я компилирую его с другим путем /home/shop/php (во первых это тоже хардкодно) во вторый все расширения и дополнения всё равно ищут путь /usr/local/php
если в java /home/user/java8/bin/java код запустить /home/user/java17/bin/java код /home/user/java6/bin/java код
Так же в node
для php экспериментов и т.д надо поднимать докер ..ибо основную среду PHP разработки можно испорить.
Да, согласен с комментарием выше, что может сработать вариант >отбирать 1-2 балла
Благодарю,что поддержали идею...мне за нею нормально так "накидали" в карму(Уж не знаю ,что в головах у этих людей было)
Я обращусь тут к Вам,- наминусовавшие мне (именно в карму) за идею,- Отбирать два балла за понижение...
Потрудитесь объяснить,какие именно отритцательные эмоции у Вас вызвало это предложени?(ведь карма это эмоциональная, а не техническая составляющая(Может Вы не знали об этом?)) (Да... и не ждите быстрого моего ответа на Ваше объяснение...благодаря Вам, я теперь отвечаю раз в час)
Я вот не знаю...насчет о что право голоса имеет меньшая часть аудитории.
Но это якобы меньшая часть всю бочку меда и портит...вот Вы читали мой комментарий на который ответили..сейчас у меня по нему -2 по голосованию(тут можно понять кто-то не согласен с моей логикоймоим предложением)...а плевки в карму за этот коммент (-4) по какой логике?...
(Давайте сверим позиции ...по-моему мнение карма это эмоциональная состовляющая...я там кого-то обидел? Вел себя грубо? Задел чьи то религиозные (политические)чувства?(Разве, что тех безпредельщиков которые плюют в карму направо и налево,-Может они просто не понимают ,что это такое?) Я Просто высказал мнение..и получил кучу минусов в карму..и Вот на этом примере суть кармы хабра )
Да всё просто...если кому-то хочется снять карму...у снимающего снимается 2 бала кармы..В этом случае если кто-то ведет себя действительно плохо, тому сообщество так или иначе карму опустят. А просто мнение ппротивоположное твоему,десять раз подумают.
Нет проблем с grub . Когда Вы дублируете dd байт в байт диски UUID(Это ж не аппаратная состовляющая) также дублируется и становится такой же на всех разделах соотвтственно первоначальной системе.Вы получаете полностью копию первоначального диска(При этом размер второго может быть больше). в ядре втором могли быть проблемы если два диска копии поставить на систему(У них одинаковый UUID)...но уже с 3 kernel оно разруливалось(Приоритет монтирования был диска с которго грузится ОС).
Я делаю это с 2007 года и уже наверное более 1000 копий было сделано(мной и командой)...Этот способ реально удобен...а вот когда уже этот "монстр" поднялся...уже скриптами настроечными можно его кастомизировать.(мы так и делам)...А для виртуалки тоже есть соотвтествующий образ...
Не понимаю про какой загрузчик вы говорите...в случае того метода..загрузочная запись MBR GPT UEFI всё попадает..сетевые устройства настроить всё же прозе чем...посмотрите ,что у меня в образе(200gb файл)
Centos7 x64 Субд Oracle 11.2.01(ещё тот квест её поднять) Всё для Pos систем.Драйвера сканеров весов фискальнх регистраторов.Прога для работы с егаисом програ для работы с меркурием сервисы для алкогольных деклараций..Linux окружение для работы с Рутокеном .Окружение для работы с Терминалами сбора данных Программный фискальный регистратор(Это для Украины),Сама ИС.Докер с образом IBM DB2 Express. edition.Desctop окружение Desktop Viber telegram Chrome Mozila.Virtual box c образом винды для росийского егаиса. Всякие утилиты для диагностики...ВЫ это полмесяца вручную ставить будите и не представляю скрипты чтоб это все установить махом.Всё это не используется еа рабочем месте в один момент..но образ единый и подстаивается уже под рабочее место.А так пока всё это час ставится...я занимаюсь своими делами.Linux если знает оборудование в ядре (естественно оно ставится на разное железо) ,то поднимается...можно запустить в режиме rescue и доставить драйвера
С готовой Linux системы где есть всё всё всё,-Подготовьте образ утилитой dd if=/dev/sda of=/mnt/linux_whereFullmycomponents.img
Потом на чистый комп ...грузимся с диска и dd if=/mnt/linux_whereFullmycomponents.img of=/dev/sda
Это(набрать команду) сделает даже эникейщик...Пьете кофе ...возвращаетесь ..система полностью готова к использованию.(возможно потребуется набрать dracut -fv (если совсем железо чуждое))
Нет не писал... :-) Да и ИС с 2007 года стартовала(с дельфей ушли и с винды слава богу ,ушли как следствие) с JDK 6 тогда java неоракловая была :-)
Потом JDK8 ещё тоже неоракловая. (Новые jdk тестируем, но не переходим)
Я даже не представляю как этот случай описать в поддержке.Есть главная форма ...внутри неё JInternalFrame ...GUI естественно строится не прямым кодом а читает xml спецификацию(столбец базы- как называется в заголовке ,какой цвет,js скрипт (rhino) поведение столбца (Типа подсвечивать какое-то значение) )из базы , читает metadata jdbc,- связывает с CRUID диалогом(тоже xml спецификация) .
Чтобы обрубить все эти зависимости и дать чистое решение в котором проблема ,-ещё та работа.
Вообще в java с GUI довольно часто встречаемся с утечками..но всё время лечили(за исключением вот этого случая)
При этом java без GUI или с почти не меняющимся GUI утечек никогда не наблюдал.
А как коммерческая ИС без этого?...Это десктоп ИС ,-наибольшая проблема это касса где много чеков(около 1000 в день) там мы заложили больший задел типа -Xmx800m НА этот рост
$JAVA_HOME/bin/java -Xmx800m -jar cis.jar
Ну я потом в конце смены надо выйти из ИС...если будет другой оператор продолжать вторые или третьи сутки то начнуться тормоза и останов.
А вот с камерой поясните..Почему вы не используете ТСД (Терминалы сбора данных)...Специально обученное устройство для складов ,чтения (мгновенного) QR кодов различного типа и штрих кодов различного типа...Это устройство в котором есть сканер штрихкодов(с аппаратным декодированием ) и специальная камера с SDK для декодирования этикеты как у Вас на фото(Типа отделить тект от цены от штрихкода)...(Отказ от ТСД ведь не из-за экономии?) В этом случае всё делаеться нативным sdk производителя,а вам отправляется broadcust ,который легко плагином отлавить во flutter.И если чтение штрихкода (разбор этикетки)является камнем преткновения,то в этом случае(ТСД) и проблемы то нет.
У меня на ноуте linux и как же тут без FF...
Мне кажеться полпулярность снизилась с момента перехода на новый спецификацию расширений...тогда очень много пелезных расширений отвалилось и их не переделали под новую спецификацию для FF...а те что переделали работали некачественно.
Не там надо с бубном потанцевать...ниже ответ написал (возможно в другой ветке)
Цитирую,что ответил
После поиска решения невхода, что домен не внесен(Текс ошибки не соответствует причине ) выяснилось что надо отключить "Использовать строгий режим для URI перенаправления " Я его отключить не мог почему-то...просто добавил uri .. Всё одно при входе (см видео) пишет красный треугольник предупреждения(как его убрать ? кто знает?)...а дальше возвращает токен в прогу
https://youtu.be/0nvUsTp2wkU
Ещё раз благодарю за ссылку ngrock...Без него сложно оттестировать вход в соц сети...жаль что после перезапуска сервиса ngrock ссылка новая.
После поиска решения невхода что домен не внесен(Текс ошибки не соответствует причине ) выяснилось что надо отключить "Использовать строгий режим для URI перенаправления " Я его отключить не мог почему-то...просто добавил uri .. Всё одно при входе (см видео) пишет красный треугольник предупреждения(как его убрать ? кто знает?)...а дальше возвращает токен в прогу
https://youtu.be/0nvUsTp2wkU
Благодарю...прикольный сервис...Попробовал с ним..и больше вопросов чем ответов...:-)
Он создал ссылку https://cd1c-194-187-149-96.ngrok.io
Поправил код...подправил личный квбинет facebook приложения...и тут совсем странно пишет что домен не внесен в приложение,..хотя он точно внесен..я вот даже видно набросал ниже по ссылке
https://youtu.be/jTSmaLiH730
Согласен что авторизация через сети головняк.
Вот попробовал oauth2 на go с примера
https://stackoverflow.com/questions/27368973/golang-facebook-authentication-using-golang-org-x-oauth2/36672164
(см правилый ответ)
Завел на Facebook приложение получил client-id ,клиент секрет увидел ,-вставил...запустил ...в браузере,- одна ссылка на странице login facebook / давим / Первое что facebook не нравится надо добавить домены(я ну как бы со страрта ...имею только localhost...)Добавляю localhost в настройки приложения на сайте developer.facebook...Теперь ему(facebook) не нравится...что не https :-)
Дорабатываем типа https://github.com/denji/golang-tls
Запускаем
Теперь ему не нравится самоподписанный сертификат...(Да и calback куда оно сделает?(Не на localhost же)..но до calbback еще далеко)....
Т.е чтоб это оттестировать мне надо...реальный IP(или арендовать VPS) купить домен к нему ,организовать ключ и сертификат к этому домену...и лишь потом скормить это facebook,убедившись что авторизация через сеть работает?
Есть ли проще путь?
А если есть аллергия ...поможет ли прием преднизалона(дексаметозона) перед (за полчаса) анастезии?
Да многое можно решить...просто зачем решать...когда можно взять ту же стандартную технологию такую, же простую...и при этом достигнуть результата и побочных проблем не решать.
Тут такие темы уже обсуждались...я там писал свое решение(работаем через браузер со всем POS оборудованием через rs-232 причем в соновном в линуксе...Надо сделать прогу которая запускается на компе и прослушивает WebSocket и перекидывает пакеты в драйвер нативный для данной ОСИ(У нас драйвере на java поэтому нет разницы) ...Почему имеенно websoket? Потому что вы можете обратится из него к localhost
В бразузере в JS
var socket = new WebSocket("ws://localhost:7081");
socket.send(Ваши команды и ваш пакет);Прога шлюз прослушивает порт websoket 7081 и выполняет задачу.
Если ваша система загружена c url типа mycrm.com,то к localhost проблемно обычным REST обратится из-за CORS ,Same Origin Policy...а WebSocketом можно ходить на любой URL...
Всё... когда мы получили уже задачу и данные от браузера,то нативными решениями или по низкоуровневому протоколу rs-232 (я его предпочитаю ибо ИС кроссплатформенная) либо используюя решение производителя(обычно оно только под винду по технологии ActiveX объекта) выполняем задачу и по websoket "кричим" в браузер о стадии выполнения.
Это то,что будет работать(и работает)во всез браузерах во всех ОСях.
То, что Вы расказываете не соответствует моему опыту...Я нача "щупать" php с 7.4 Тогда в репозитории Centos 7(я работаю с Centos-redhat направлением) его не было...я сбилдил из исходников...становился в аккурат в хардкодную папку...можно юыло сбилдить(указав в конфиге ) в другую...но расширения не цеплялись к нему.
Такая же фигня с php 8
Вообще не понял к чему Вы это...
Мне не нравится хардкодный путь...я бы хотел его запускать откуда хочу... типа /home/shop/php и запускать его низкоприоритетным пользователем.(который вообще не видит /usr /bin и т.д )
ещё бы я хотел иметь кучу версий для экспериментов /home/shop/php8 /home/shop/php7.2 /home/shop/php7.4 и т.д
Задать этот путь можно только скомпилировав из исходников в файле config...и я так делал...но все расширения типа mysqli пытаютя стать в /usr/local/php и т.д ...а я бы хотел чтоб они ложились в home/shop/phpX или туда куда мне нужно(может это и можно дикими усилиями как-то добится...но овчинка думаю не стоит выделки...ибо есть докер)
C java и node таких проблем нет....И можно например постепенно переползать на новые версии java(имея их сколько угодно в домашней папке) и изучать новые фичи
Я PHP люблю за вот это
Можно на лету сгененрировать PHP файл по некотрым правилам(Ну например что он поддерживает некий интерфейс.
сделать include и тут же выполнить на лету.
Это дает возможность типа саморазвиваться платформе ,что Вы пишите...на других языках так же сделать ещё тот головняк.
Но мне в нем не нравится жесткая привязка к пути VM php типа /usr/local/php
Даже если я компилирую его с другим путем /home/shop/php (во первых это тоже хардкодно) во вторый все расширения и дополнения всё равно ищут путь /usr/local/php
если в java /home/user/java8/bin/java код запустить /home/user/java17/bin/java код /home/user/java6/bin/java код
Так же в node
для php экспериментов и т.д надо поднимать докер ..ибо основную среду PHP разработки можно испорить.
Благодарю,что поддержали идею...мне за нею нормально так "накидали" в карму(Уж не знаю ,что в головах у этих людей было)
Я обращусь тут к Вам,- наминусовавшие мне (именно в карму) за идею,- Отбирать два балла за понижение...
Потрудитесь объяснить,какие именно отритцательные эмоции у Вас вызвало это предложени?(ведь карма это эмоциональная, а не техническая составляющая(Может Вы не знали об этом?)) (Да... и не ждите быстрого моего ответа на Ваше объяснение...благодаря Вам, я теперь отвечаю раз в час)
Я вот не знаю...насчет о что право голоса имеет меньшая часть аудитории.
Но это якобы меньшая часть всю бочку меда и портит...вот Вы читали мой комментарий на который ответили..сейчас у меня по нему -2 по голосованию(тут можно понять кто-то не согласен с моей логикоймоим предложением)...а плевки в карму за этот коммент (-4) по какой логике?...
(Давайте сверим позиции ...по-моему мнение карма это эмоциональная состовляющая...я там кого-то обидел? Вел себя грубо? Задел чьи то религиозные (политические)чувства?(Разве, что тех безпредельщиков которые плюют в карму направо и налево,-Может они просто не понимают ,что это такое?) Я Просто высказал мнение..и получил кучу минусов в карму..и Вот на этом примере суть кармы хабра )
Да всё просто...если кому-то хочется снять карму...у снимающего снимается 2 бала кармы..В этом случае если кто-то ведет себя действительно плохо, тому сообщество так или иначе карму опустят. А просто мнение ппротивоположное твоему,десять раз подумают.
Нет проблем с grub . Когда Вы дублируете dd байт в байт диски UUID(Это ж не аппаратная состовляющая) также дублируется и становится такой же на всех разделах соотвтственно первоначальной системе.Вы получаете полностью копию первоначального диска(При этом размер второго может быть больше). в ядре втором могли быть проблемы если два диска копии поставить на систему(У них одинаковый UUID)...но уже с 3 kernel оно разруливалось(Приоритет монтирования был диска с которго грузится ОС).
Я делаю это с 2007 года и уже наверное более 1000 копий было сделано(мной и командой)...Этот способ реально удобен...а вот когда уже этот "монстр" поднялся...уже скриптами настроечными можно его кастомизировать.(мы так и делам)...А для виртуалки тоже есть соотвтествующий образ...
Не понимаю про какой загрузчик вы говорите...в случае того метода..загрузочная запись MBR GPT UEFI всё попадает..сетевые устройства настроить всё же прозе чем...посмотрите ,что у меня в образе(200gb файл)
Centos7 x64 Субд Oracle 11.2.01(ещё тот квест её поднять) Всё для Pos систем.Драйвера сканеров весов фискальнх регистраторов.Прога для работы с егаисом програ для работы с меркурием сервисы для алкогольных деклараций..Linux окружение для работы с Рутокеном .Окружение для работы с Терминалами сбора данных Программный фискальный регистратор(Это для Украины),Сама ИС.Докер с образом IBM DB2 Express. edition.Desctop окружение Desktop Viber telegram Chrome Mozila.Virtual box c образом винды для росийского егаиса. Всякие утилиты для диагностики...ВЫ это полмесяца вручную ставить будите и не представляю скрипты чтоб это все установить махом.Всё это не используется еа рабочем месте в один момент..но образ единый и подстаивается уже под рабочее место.А так пока всё это час ставится...я занимаюсь своими делами.Linux если знает оборудование в ядре (естественно оно ставится на разное железо) ,то поднимается...можно запустить в режиме rescue и доставить драйвера
С готовой Linux системы где есть всё всё всё,-Подготовьте образ утилитой dd if=/dev/sda of=/mnt/linux_whereFullmycomponents.img
Потом на чистый комп ...грузимся с диска и dd if=/mnt/linux_whereFullmycomponents.img of=/dev/sda
Это(набрать команду) сделает даже эникейщик...Пьете кофе ...возвращаетесь ..система полностью готова к использованию.(возможно потребуется набрать dracut -fv (если совсем железо чуждое))
Нет не писал... :-) Да и ИС с 2007 года стартовала(с дельфей ушли и с винды слава богу ,ушли как следствие) с JDK 6 тогда java неоракловая была :-)
Потом JDK8 ещё тоже неоракловая. (Новые jdk тестируем, но не переходим)
Я даже не представляю как этот случай описать в поддержке.Есть главная форма ...внутри неё JInternalFrame ...GUI естественно строится не прямым кодом а читает xml спецификацию(столбец базы- как называется в заголовке ,какой цвет,js скрипт (rhino) поведение столбца (Типа подсвечивать какое-то значение) )из базы , читает metadata jdbc,- связывает с CRUID диалогом(тоже xml спецификация) .
Чтобы обрубить все эти зависимости и дать чистое решение в котором проблема ,-ещё та работа.
Вообще в java с GUI довольно часто встречаемся с утечками..но всё время лечили(за исключением вот этого случая)
При этом java без GUI или с почти не меняющимся GUI утечек никогда не наблюдал.
Тогда размер столбцов меняться не будет если пользователь решит раздвинуть мышкой...См.видео
https://cloud.mail.ru/public/Ekya/qtBz8s1CZ
А как коммерческая ИС без этого?...Это десктоп ИС ,-наибольшая проблема это касса где много чеков(около 1000 в день) там мы заложили больший задел типа -Xmx800m НА этот рост
$JAVA_HOME/bin/java -Xmx800m -jar cis.jar
Ну я потом в конце смены надо выйти из ИС...если будет другой оператор продолжать вторые или третьи сутки то начнуться тормоза и останов.