Отправляет email-рассылки с помощью сервиса Sendsay

[prg] Youtube в андроид

Здравствуйте, industry.
Ситуация следующая:
Пишу андроид-приложение для проигрывания роликов с ютюб, использую библиотеки youtubeExtractor
для извлечения ссылки, а так же exoplayer2.
Но получается воспроизвести только некоторые ссылки, поскольку в библиотеке youtubeExtractor
есть ограничение на частные ссылки, возврастные ограничения и редкие ссылки.
Знаю официальной библиотеке от ютюба, но там используется стандартный плеер, а если он не установлен на устройстве, тогда ничего не будет проигрываться.
Что кто может предложить, спасибо.--
С уважением,
Владислав mailto:kvs***@u*****.net
сайт одесской школы для слепых:
http://school93.od.ua
Мой сайт:
http://kvs.inf.ua

   2022-05-27 17:03:53 (#3687470)

[prg] Re[2]: среда Visual Studio 2022

добрый день.
"И еще вопрос, вам принципиально использовать студию 2022?"
спасибо за ответы. не принципиально 2022 года версия. когда принёс ноут,
тут же установили версию которую скачали. то учреждение где я учусь не
когда ни работало со слепыми слушателями. в данной среде преподаватель
нас обучает.
если можно, скиньте версию по старее, более удобную для использования
спасибо

   2022-05-24 10:51:59 (#3687343)

[prg] Re: среда Visual Studio 2022

From: Евгений Жаданов
как можно и с помощью чего настроить nvda или jaws чтобы информация об
ошибках
озвучивалась?

Здравствуйте!
Она озвучивается при компиляции. Компилируете и если есть ошибки, то они
выводятся списком. Переходите в самый вверх по Control+Home.
Далее спускаетесь стрелкой вниз и услышите примерно такое
CS0103. Имя "k" не существует в текущем контексте.
На этой строке говорится, что найдена неизвестная переменная. Жмете тут
ентер и сразу попадаете на данную строку в редакторе кода.
Может и отсутствие скобки подсказать и многое другое.
Иногда, если проект слишком замудренный, то с ошибками может тупить и
выдавать неправильную информацию о ошибках в ассинхронных методах и
неиспользованных переменных, которых на самом деле нет, в смысле ошибок, а
всего-то забыл поставить фигурную скобку. Ошибка эта так же будет в списке,
но найти ее долго и нудно.
Удачи

   2022-05-24 10:51:13 (#3687342)

[prg] Re: среда Visual Studio 2022

Здравствуйте, Евгений.

Вы писали 23 мая 2022 г., 16:34:58:

> подскажите, какие есть горячие клавиши в данной среде? как можно и с
> помощью чего настроить nvda или jaws чтобы информация об ошибках
> озвучивалась?
> и прошу, поделитесь какой либо доступной информации для начинающего, по
> использованию данной среды. изучаем c#

список горячих клавиш можно увидеть в настройках студии.
И еще вопрос, вам принципиально использовать студию 2022?
Возможен вариант, что jaws не очень адаптирован под новую версию и
какие то вещи может читать плохо. По крайней мере ранее мне с таким
сталкиваться приходилось.
Я бы предложил использовать чуть постарее.
Вам же для начинающих вообще непринципиально какого года студия, лиш
бы проект собирался.
Для простейшего учебного курса можно писать в блокноте и собирать
через командные файлы и обойтись без студии. Потому, что сначала
придется освоить саму студию.
Все зависит от
глубины курса. Если это типа "основы программирования"
и будут изучаться самые основы, то и со студией не стоит парится,
можно основить компиляцию простеньких учебных консольных
програмулинок.
Если же курс посерьёзнее, то конечно да надо ставить студию, потому,
что, н
а мой взгляд очень удобны подсказки по классам и метоам, когда
набираешь код, да и она достаточно прилично доступная.
Я так вообще использую 2015, а до этого долго использовал 2008. Для
собственного развлечения вполне достаточно.
Многие клавиши можно
посмотреть на пунктах
меню типаCtrl+alt+l -
обозреватель решения ,
ctrl+alt+x - панель с
элементами, которые
можно добавить на окно
При ошибках компиляции
ctrl+alt+o
Примерно так.
Разбирайтесь :)

   2022-05-24 04:37:27 (#3687330)

[prg] Re: среда Visual Studio 2022

привет, на предыдущих версиях ошибки джоз читал нормально.
горячие клавиши:
F7 и SHIFT+F7, переключатся между кодом и конструктором форм.
F4, открывать свойства элементов формы.
F5, выполнить код на исполнение.
Enter на элементе формы, создать обработчик событий по умолчанию
это в WindowsForms
если выбрать Wpf, там мне показалось что с доступностью все гораздо хуже.
это было на предыдущих версиях _Visual Studio.
как обстоят дела сейчас не знаю, давно ничего не смотрел.

   2022-05-23 18:29:05 (#3687310)

[prg] среда Visual Studio 2022

добрый день.
подскажите, какие есть горячие клавиши в данной среде? как можно и с
помощью чего настроить nvda или jaws чтобы информация об ошибках
озвучивалась?
и прошу, поделитесь какой либо доступной информации для начинающего, по
использованию данной среды. изучаем c#

начал обучаться программированию, но в учреждении не имели опыта со
слепыми слушателями.

спасибо

   2022-05-23 14:57:15 (#3687303)

[prg] среда Си Шарп

добрый день.
подскажите, какие есть горячие клавиши в данной среде? как можно и с
помощью чего настроить nvda или jaws чтобы информация об ошибках
озвучивалась?
и прошу, поделитесь какой либо доступной информации для начинающего, по
использованию данной среды. изучаем c#

начал обучаться программированию, но в учреждении не имели опыта со
слепыми слушателями.

спасибо

   2022-05-22 23:24:38 (#3687278)

[prg] Аудиокнига "Настольная книга тимлида разработки ПО"

Приветствую всех!

Редкий случай -- аудиокнига по организационным принципам разработки
программного обеспечения.
Название: Настольная книга тимлида разработки ПО
Автор: Большаков Виктор
Читает: Татаринцев Александр
Год: 2021
Длительность: 03:35:45
Книга начинается с карты компетенций, и каждая
компетенция раскрывается в соответствующей главе. Эти зоны
ответственности совершенно по разному реализуются в организациях. Но
важно понимать, какие стоят
задачи, какие бывают подходы и способы решения.
Тимлид -- руководитель и должен управлять людьми, обеспечить уважение к
себе, тёплую и продуктивную атмосферу в коллективе. Раскрывается
характеристика
самого тимлида, его личные качества.

Торрент:
https://cloud.mail.ru/public/CGpw/ny3ZRaKDU

Или ищите по названию.

   i_chay 2022-05-22 00:02:52 (#3687264)

[prg] Доступность направлений Data Science, аналитик данных и подобное.

Приветствую!
Если кто в теме, Подскажите, доступны ли такие направления деятельности как, "Data Science", "Big Data" и подобное, для полноценной невизуальной работы?
Благодарю.

   2022-05-12 11:44:15 (#3687036)

[prg] Re: Написание графических приложений на python.

Mai omentaina, Антон Егоркин!

АЕ> Посоветуйте, пожалуйста, фреймворк или что-то, на чем можно писать
АЕ> графические приложения на python, которые будут нормально озвучиваться
АЕ> скринридером.

wxPython плюс опционально wxGlade для более быстрого создания
интерфейсов.

   2022-05-02 01:33:11 (#3686814)

[prg] Написание графических приложений на python.

Здравствуйте, уважаемые участники.

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

Опытным путем вроде выяснил, что PyQT и WX Python позволяют создавать
озвучивающийся графический интерфейс, но хотел бы узнать ваше мнение,
где фатальных проблем с доступностью не будет, потому что планирую
писать большой проект и не хочу где-нибудь посередине столкнуться с
неприятными сюрпризами. Буду очень благодарен.

   2022-04-26 17:25:00 (#3686698)

[prg] Re: Исходные данные для lkf-библиотеки

Здравствуйте.

На сколько я понимаю задачу, вам нужно реализовать DAISY Online Delivery
Protocol: https://daisy.org/activities/standards/dodp/.

Вроде бы, существуют готовые реализации.

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

С уважением, Константин.

   2022-03-14 12:40:50 (#3685599)

[prg] Исходные данные для lkf-библиотеки

1. Есть сервер, на котором хранятся lkf-книги - нумерованные папки с
lkf-файлами.

например: папка 694, в которой три файла: 0001.lkf, 0002.lkf и 0003.lkf

2. Эта база создана и пополняется с помощью приложения Talking Book Library.

3. Имеется веб-сервер, на котором реализован интерфейс произвольного
доступа к любой книге, находящейся вне корневого каталога веб-сервера.

   2022-03-14 12:26:31 (#3685598)

[prg] Как предоставить удалённый доступ к lkf-библиотеке через тифлофлэшплеер?

Уважаемые программисты!

Руководство Самарской библиотеки для слепых поставило передо мной задачу:
подготовить план реорганизации имеющейся библиотеки lkf-книг для доступа
к ней посредством тифлофлэшплеера, какого конкретно пока не важно.

В настоящее время я совсем не в теме и для погружения в неё, мне
понадобится не мало времени, а руководство ставит срок - вчера или сегодня!.

План, разумеется, за меня составлять не требуется, но вот обозначить
необходимые шаги и необходимые технологии, я бы вас настоятельно попросил!

За ранее благодарен за любую помощь,
Грызунов Александр. Самара.

   2022-03-14 12:06:21 (#3685597)

[prg] Re[3]: Программирование под андроид.

Здравствуйте, Arsenal <sited***@y*****.ru>.

* Исходное сообщение * A> У каждого свои проблемы.
A>
A> Вы писали в 13.02.2022, 6:11:
A> i> Приветствую всех!
<...>
A> i> Успехов! Анатолий.

Коллеги, чуть внимательнее, пожалуйста.

   2022-02-13 16:01:24 (#3684561)

[prg] Re[3]: Программирование под андроид.

Приветствую всех!

> Можно компилировать из коммандной строки.
> Это как, это куда?
> Ведь при компиляции надо указывать какое именно приложение будет компилировать.

Не совсем понятен вопрос. Почему у вас возникли сомнения, что компиляция
для Android происходит как-то иначе?
Все то же самое -- в командной строке компилятора Java указываются
исходные файлы и прочие параметры компиляции.
Однако для проектов на Java (как, впрочем, и для других языков
программирования)существуют системы автоматизированной сборки, которые
не только выполняют компиляцию, но и собирают итоговое приложение в
соответствующем формате.
В Android Studio используется система сборки gradle, конфигурационные
скрипты которой обычно пишутся на языке groovy (но можно и на java и
других языках, исполняемых на Java-машине).
Была надежда, что вы найдёте материал в сети, двигаясь от одного
непонятного слова к другому и ища объяснения этих слов в той же сети.
Ладно, пойдём другим путём...
Конфигурационный скрипт gradle называется build.gradle.
Изучать groovy в полном объёме вам на данном этапе не требуется, но со
структурой build.gradle лучше познакомиться поближе.
При запуске системы сборки используется тот скрипт, который
присутствует в текущем каталоге.
Можете в студии создать новый проект, чтобы изучить систему каталогов
проекта, создаваемую студией по умолчанию, и содержимое файла build.gradle.
Можете скачать этот архив
https://cloud.mail.ru/public/TFXy/ThCtmGnUC
распаковать его и собрать приложение, запустив файл make_debug.cmd.
Обратите внимание структура каталогов в этом архиве отличается от той,
которую создаёт студия, но поскольку в файле build.gradle описана
структура каталогов, то проект можно собрать и в студии.
Просмотрите файл make_debug.cmd и исправьте пути к Android_*.
Также изучите файлы AndroidManifest.xml и build.gradle. Предполагается,
что все вопросы, касающиеся содержания этих файлов, вы решите через
поисковик. Не стесняйтесь пользоваться он-лайн переводчиком, если
документацию будет на английском. Сейчас компьютерную литературу он-лайн
переводчики переводят вполне корректно.
Реально я готов отвечать только на вопросы, связанные с особенностью
работы незрячих программистов, но не разъяснять создание приложений под
Android с нуля.
После сборки в каталоге появятся подкаталоги
gradle -- служебный каталог, gradle (не перепутайте его с каталогом
gradle),
build -- каталог с результатами сборки,
build\outputs\apk\debug\ru.sitedia.hello-1.0-debug.apk -- готовый
установочный пакет с тестовым приложением.
Каталог build можно удалять целиком, если надо пересобрать весь проект с
нуля.
Но всё это лишь для того, чтобы поддержать ваш энтузиазм, а начинать всё
равно надо с настройки эмулятора, как было изложено ранее.

Успехов. Анатолий.

   i_chay 2022-02-13 13:33:18 (#3684551)

[prg] Re[2]: Программирование под андроид.

Привет логичному сообществу и "industry.comp.tiflocomp.programming"!

Вот чесное слово, ничего не понял.
Видать правда современные технологии не для моего интеллекта.

Можно компилировать из коммандной строки.
Это как, это куда?
Ведь при компиляции надо указывать какое именно приложение будет компилировать.
Например:
builder -c test.cpp
А здесь как?

Повторюсь, я в самом начале.
Слабо вообще понимаю что и как.
А вы высоким штилем.
*СМЕХ*

Мне бы для начала пошагово для с носиком.
Что бы хоть начать понимать.
Дальше уже проще будет.

Причём, в интернете такие же статьи.
Огромная масса непонятных слов, ничего не объясняющих начинающему.
Либо водная статья, где утонуть можно.

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

Не, я не настаеваю, если всем лень, то я пошёл.
У каждого свои проблемы.

Вы писали в 13.02.2022, 6:11:

i> Приветствую всех!

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

i> Студия озвучивается далеко не идеально, но работать можно -- требуется
i> время и упорство. Сам редактор кода в студии доступен и во многих
i> ситуациях удобнее блокнота (даже если это Notepad++). Есть специфика в
i> программировании на Java, например, указание всех импортируемых классов,
i> что весьма нудное занятие, а для автоматизации этого процесса
i> интеллектуальный редактор кода ничем не заменить. То же самое касается
i> автоматического переименования переменных, классов и тому подобное, плюс
i> автоматическая генерация кода по шаблонам для типовых задач.

>> Компилировать в студии.

i> Это тоже можно делать без студии. Все средства для сборки являются
i> утилитами командной строки. Студия -- это лишь интегрирующая оболочка
i> над ними.

i> Система сборки - gradle - тоже консольная, конфигурационные файлы можно
i> редактировать в блокноте, а можно и в студии.

>> Тестировать на телефоне, так как имулятор тоже мёртвый для джоз.

i> На эмулятор нужно установить TalkBack при помощи консольной утилиты
i> adb (android device bridge), входит в SDK. В сети много статей, как
i> пользоваться adb и что с её помощью можно делать на эмуляторе (и
i> реальном аппарате).
i> При создании виртуального устройства в его конфигурации надо
i> предусмотреть наличие клавиатуры, вывод звука, ввод звука (если нужно),
i> D-Pad (другие параметры уже зависят от ваших задач, а эти критически
i> важны для работы незрячего с эмулятором).
i> TalkBack ищите либо на сайтах, который позволяют скачивать apk, либо его
i> клоны в виде готовых apk (apk -- это установочные пакеты для Android).
i> Современный вариант Accessibility Suite вы на эмулятор не установите,
i> поскольку готовые apk, которые можно найти в сети, собраны под
i> архитектуру ARM, а начиная с Android api level 25 Google перестал
i> публиковать образы для эмулятора под ARM, публикуются только под x86,
i> x86-64.
i> Вам "старого" TalkBack будет вполне достаточно для тестирования
i> приложений на эмуляторе.
i> Также надо будет установить на эмулятор русский голос (советую Капитана,
i> как нетребовательного к ресурсам, но в некоторых моментах Капитан
i> устарел, хотя у меня под Android 8.1 работает на эмуляторе).
i> Можно взять образ системы со встроенными сервисами Google, тогда при
i> смене языка интерфейса заговорит русский голос от Google. Но эти образы
i> закрыты от записи и их файловая система доступна лишь частично, так что
i> если захотите поковырять систему, то с этими образами ничего не выйдет
i> (разумеется, не всё так категорично, но это не для начинающих).
i> С другой стороны, на таких образах доступен Play Маркет (разумеется, вам
i> нужна будет учётная запись Google для доступа к нему) и другие сервисы
i> Google.
i> Вам также потребуется сменить язык интерфейса Android на эмуляторе.
i> Установить все вы сможете самостоятельно без помощи зрячего.
i> Однако, чтобы активировать TalkBack, сменить синтезатор на русскоязычный
i> и сменить язык интерфейса, вам понадобится зрячий помощник.
i> В принципе, достаточно лишь активировать TalkBack, а остальное можно
i> сделать самому, но для этого требуется понимание на слух английского
i> голоса и ряд нетривиальных действий.
i> Вполне реальная задача -- написать приложение, которое будет выполнять
i> все эти манипуляции самостоятельно, но это требует времени и серьёзной
i> мотивации... :-(
i> Когда настроите эмулятор, то сможете работать с ним, как с реальным
i> аппаратом, на котором запущен tTalkBack, за одним исключением -- на
i> эмуляторе устройством ввода будет клавиатура, а на реальном аппарате,
i> скорее всего, сенсорный экран.
i> Если ваши приложения будут использовать стандартные элементы
i> пользовательского интерфейса (кнопки, флажки, списки и т.п.), то никакой
i> серьёзной разницы не будет в поведении вашего приложения на эмуляторе и
i> на телефоне.
i> В любом случае эмулятор не заменяет полностью реальное устройство,
i> поэтому окончательную проверку приложения всё равно надо делать на
i> реальном устройстве.
i> Короче, сначала настройте эмулятор и изучите команды adb.
i> На телефоне активируйте скрытое меню для разработчиков, затем разрешите
i> отладку по USB. Так вы сможете использовать adb для установки пакетов на
i> телефон, получение логов и т.п.
i> Когда получите говорящий эмулятор, то можно переходить к разработки
i> приложений в студии или при помощи консольных команд.

i> Успехов! Анатолий.

   2022-02-13 06:20:23 (#3684544)

[prg] Re[2]: Программирование под андроид.

Приветствую всех!
Владислав,
> так и до сих пор пишу и компилирую в Eclipse, там и озвучивается всё хорошо

Это интересно, расскажите подробнее. Особенно если это касается
поддержки актуальных версии Android SDK.

Успехов. Анатолий.

   i_chay 2022-02-13 00:20:12 (#3684537)

[prg] Re[3]: Программирование под андроид.

Приветствую всех!
Константин,
> А о каком эмуляторе вы говорите? Как он называется?

О том, что входит в состав официального Android SDK.

Успехов. Анатолий.

   i_chay 2022-02-13 00:11:05 (#3684536)

[prg] Re: Программирование под андроид.

Здравствуйте, Arsenal.

Вы писали пятница 11 февраля 2022 год, 12:07:26:

A> Здравствуйте, industry!

A> Программисты, выручайте.
A> Толи возраст, толи технологии не совместимы с моим интеллектом, толи бесы шалят.
A> Хочу писать программы под андроид, но никак не пойму как это делать.
A> Установил андроид студию, установил sdk.
Тут писали о студии, какая она хорошая, а я так и до сих пор пишу и компилирую в Eclipse, там и озвучивается всё хорошо как Jaws так и NVDA.
Если интересует, могу поделиться материалами и чем смогу, тем и помогу.--
С уважением,
Владислав mailto:kvs***@u*****.net
сайт одесской школы для слепых:
http://school93.od.ua

   2022-02-11 23:39:12 (#3684482)

[prg] Re[2]: Программирование под андроид.

Анатолий, здравствуйте. А о каком эмуляторе вы говорите? Как он называется? Nox?

   2022-02-11 18:12:19 (#3684465)

[prg] Re: Программирование под андроид.

Приветствую всех!

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

Студия озвучивается далеко не идеально, но работать можно -- требуется
время и упорство. Сам редактор кода в студии доступен и во многих
ситуациях удобнее блокнота (даже если это Notepad++). Есть специфика в
программировании на Java, например, указание всех импортируемых классов,
что весьма нудное занятие, а для автоматизации этого процесса
интеллектуальный редактор кода ничем не заменить. То же самое касается
автоматического переименования переменных, классов и тому подобное, плюс
автоматическая генерация кода по шаблонам для типовых задач.

> Компилировать в студии.

Это тоже можно делать без студии. Все средства для сборки являются
утилитами командной строки. Студия -- это лишь интегрирующая оболочка
над ними.

Система сборки - gradle - тоже консольная, конфигурационные файлы можно
редактировать в блокноте, а можно и в студии.

> Тестировать на телефоне, так как имулятор тоже мёртвый для джоз.

На эмулятор нужно установить TalkBack при помощи консольной утилиты
adb (android device bridge), входит в SDK. В сети много статей, как
пользоваться adb и что с её помощью можно делать на эмуляторе (и
реальном аппарате).
При создании виртуального устройства в его конфигурации надо
предусмотреть наличие клавиатуры, вывод звука, ввод звука (если нужно),
D-Pad (другие параметры уже зависят от ваших задач, а эти критически
важны для работы незрячего с эмулятором).
TalkBack ищите либо на сайтах, который позволяют скачивать apk, либо его
клоны в виде готовых apk (apk -- это установочные пакеты для Android).
Современный вариант Accessibility Suite вы на эмулятор не установите,
поскольку готовые apk, которые можно найти в сети, собраны под
архитектуру ARM, а начиная с Android api level 25 Google перестал
публиковать образы для эмулятора под ARM, публикуются только под x86,
x86-64.
Вам "старого" TalkBack будет вполне достаточно для тестирования
приложений на эмуляторе.
Также надо будет установить на эмулятор русский голос (советую Капитана,
как нетребовательного к ресурсам, но в некоторых моментах Капитан
устарел, хотя у меня под Android 8.1 работает на эмуляторе).
Можно взять образ системы со встроенными сервисами Google, тогда при
смене языка интерфейса заговорит русский голос от Google. Но эти образы
закрыты от записи и их файловая система доступна лишь частично, так что
если захотите поковырять систему, то с этими образами ничего не выйдет
(разумеется, не всё так категорично, но это не для начинающих).
С другой стороны, на таких образах доступен Play Маркет (разумеется, вам
нужна будет учётная запись Google для доступа к нему) и другие сервисы
Google.
Вам также потребуется сменить язык интерфейса Android на эмуляторе.
Установить все вы сможете самостоятельно без помощи зрячего.
Однако, чтобы активировать TalkBack, сменить синтезатор на русскоязычный
и сменить язык интерфейса, вам понадобится зрячий помощник.
В принципе, достаточно лишь активировать TalkBack, а остальное можно
сделать самому, но для этого требуется понимание на слух английского
голоса и ряд нетривиальных действий.
Вполне реальная задача -- написать приложение, которое будет выполнять
все эти манипуляции самостоятельно, но это требует времени и серьёзной
мотивации... :-(
Когда настроите эмулятор, то сможете работать с ним, как с реальным
аппаратом, на котором запущен tTalkBack, за одним исключением -- на
эмуляторе устройством ввода будет клавиатура, а на реальном аппарате,
скорее всего, сенсорный экран.
Если ваши приложения будут использовать стандартные элементы
пользовательского интерфейса (кнопки, флажки, списки и т.п.), то никакой
серьёзной разницы не будет в поведении вашего приложения на эмуляторе и
на телефоне.
В любом случае эмулятор не заменяет полностью реальное устройство,
поэтому окончательную проверку приложения всё равно надо делать на
реальном устройстве.
Короче, сначала настройте эмулятор и изучите команды adb.
На телефоне активируйте скрытое меню для разработчиков, затем разрешите
отладку по USB. Так вы сможете использовать adb для установки пакетов на
телефон, получение логов и т.п.
Когда получите говорящий эмулятор, то можно переходить к разработки
приложений в студии или при помощи консольных команд.

Успехов! Анатолий.

   i_chay 2022-02-11 17:12:05 (#3684462)

[prg] Программирование под андроид.

Здравствуйте, industry!

Программисты, выручайте.
Толи возраст, толи технологии не совместимы с моим интеллектом, толи бесы шалят.
Хочу писать программы под андроид, но никак не пойму как это делать.
Установил андроид студию, установил sdk.
В интернете при описании тыкни туда, тыкни сюда.
Вот честно, судавольствием ы тыкнул, но не вижу куда именно, а на ощупь...

В рассылке - эта тема поднималась неоднократно, и письма у меня есть все на компе.
Неделю сижу читаю, но картинка не складывается.

Кто прошёл весь путь, и готов поделиться опытом, пожалуйста помогиите!

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

Короче, руководство для чайника.
Даже если вам что-то не нравится, всё равно давайте.

Например, в одном из писем человек писал:
мне приходилось интерфейс набирать в xml, неудобно.
А мне так напротив удобно.

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

Если ошибаюсь, поправьте.

Главное, что бы было внятное описание апи и что вообще с этим делать?
Что написать, куда положить и так далее.
Полный доступ к пользовательским апи андроид.
Работа с камерой, доступ к микрофону, проигрывание звуков, вывод в реч, показать на экран, работа с файлами, работа с сенсором.
Программирование в консоль, вэб вью и так далее.
Многое не перечислел, но кто в курсе, поймёт.

Не, вы не пугайтесь.
Опыт в программировании у меня есть.
Вот мои игры.
http://sitedia.narod.ru/games.htm
Нет, это не рекламма, это что бы понимали уровень.

Новые технологии с годами труднее осваеваются, вот и торможу.
Поэтому и прошу помощи у кого уже получается, и готов делиться знаниями.

   2022-02-11 13:08:26 (#3684451)

[prg] android java доступ к сьемной карте памяти

Здравствуйте, industry.
В моём проекте нужно работать с внешней СД-картой есть разрешения на запись к памяти.
Выбераю внешнюю карту памяти через интерфейс приложения и пытаюсь удалить обект например или папку или файл.
В памяти телефона метод отлично работает.

Вот метод которым я пользуюсь для удаления обьектов.
Перерыл кучу форумов как русских так и буржуйских, пока результат нулевой.
private void deleteFileDir(File fileOrDirectory)
{
if (fileOrDirectory.isDirectory())
for (File child : fileOrDirectory.listFiles())
deleteFileDir(child);
fileOrDirectory.delete();
}

   2022-02-03 22:16:10 (#3684111)

[prg] Re: дистрибутив VC++

Приветствую всех!

Попробуйте официальную VS 2022 Community:
https://visualstudio.microsoft.com/ru/thank-you-downloading-visual-studio/?sku=community&rel=17

После открытия страницы должна начаться загрузка, если не начнётся, то
ориентируйтесь по содержимому страницы.
Озвучивается IDE приемлемым образом, отклик в большинстве случаев
адекватный (особенно на современном железе).

> - предлагает скачать какие-то компоненты и на этом дело останавливается
> наглухо.

Возможно, компоненты долго загружаются (тем более, что последнее время в
ru-net чаще возникают разные проблемы. Также, возможно, наглухо виснет
скринридер, а не загрузка.

> Чего может быть не так? и главное, как исправить

Без подробностей трудно посоветовать что-либо конкретное. Попробуйте
разные установщики -- он-лайн или iso-образ.

Успехов. Анатолий.

   i_chay 2022-02-02 23:24:34 (#3684073)

[prg] дистрибутив VC++

Доброго времени суток, уважаемые!

Пытался на новый комп поставить дистрибутив vc++ 2008 - ничего не вышло
- предлагает скачать какие-то компоненты и на этом дело останавливается
наглухо.

Нашёл в интернете какой-то дистрибутив 2019 - история повторяется.

Чего может быть не так? и главное, как исправить

Грызунов Александр. Самара.

   2022-01-29 16:10:24 (#3683885)

[prg] Не читаются ползунки в talkback при использовании костомного view.

Всех приветствую. Есть один баг андроидного фреймворка,или talkback с
jieshuo,который хотелось бы исправить. В общем у нас есть нода
(accessibilityNodeInfo) с классом seekbar. Внутри неё есть дочерняя
нода. Когда мы делаем свайп влево,talkback не читает не
contentDescription родительской ноды,не её класс,хотя действия с
ползунком мы совершать можем. Этот баг проявляется только тогда,когда
родительская нода является ползунком,т.е классом android.widget.SeekBar.
Я даже репортил issue в гугл,но они вообще ничего не ответили. Вы можете
посмотреть её на https://issuetracker.google.com/issues/186135740,а сам
тестовый пример на https://github.com/AlexandrKozlovskiy/test. В данном
примере не реализована обработка exploreByTouch,т.е между view можно
перемещаться только свайпами. Заранее всем огромное спасибо за помощь.

   2021-12-28 21:34:07 (#3682497)

[prg] Re: python. Где писать, редактировать и как услышать вывод в консоли

Mai omentaina, Грызунов Александр!

ГА> Пробовал по материалам из интернета писать код прямо в оболочке idle

Не надо этого делать. А ещё не надо писать GUI на Tkinter, хотя в
Инете полно туториалов. То есть вы можете, но ничего хорошего для вас
из этого не выйдет, если у вас нет достаточного остатка зрения.
Я всегда советую VS Code, конечно же. Что до консоли, это дело вкуса:
я открываю внешний PowerShell или WSL-терминал, в зависимости от того,
что мне надо, и запускаю всё там.

   2021-11-28 02:51:44 (#3680771)

[prg] Re: python. Где писать, редактировать и как услышать вывод в консоли

Здравствуйте, Грызунов Александр.

> Пробовал по материалам из интернета писать код прямо в оболочке idle
> python, создав новый файл, но читается только набираемые клавиши, а
> текста на экране не вижу.

IDLE толком недоступна. Лучше не мучайтесь.
Если хочется условно интеллектуальную среду разработки на Python, то смотрите в сторону редактора VS Code.
В курсах часто будут советовать PyCharm, но там ряд нюансов с доступностью, поэтому на начальном этапе освоения языка на них отвлекаться вряд ли продуктивно.

> Также пробовал писать в текстовом файле и затем через командную строку
> запустить код, но к сожалению, примеров в интернете нашёл один и то там
> всё показывают визуально.

Не очень понятно, в чём трудность запуска файла на исполнение через командную строку?
Вы просто вызываете интерпретатор Python и в качестве аргумента передаёте ему путь к py-файлу.
Или вы находитесь на этапе освоения командной строки как таковой и вам непонятны общие принципы работы с ней?

> Как писать и редактировать код, чтобы он читался nvda?

Есть два основных подхода: построчно в интерактивном интерпретаторе и в текстовом файле через любой редактор или IDE с последующим запуском этого файла на исполнение.
Дальше подразумевается, что вы уже скачали интерпретатор Python с python.org и установили, а во время установки отметили флаг "Add python 3.10 to PATH".
Теперь нажимаете Windows+R, там вводите "python" (без кавычек) и нажимаете Enter.
Так вы попадаете в интерактивную консоль интерпретатора Python.
Дальше просто вводите строки команд и нажимаете Enter, получая выдачу по каждой отдельно введённой команде. Если команда не подразумевает выдачу, то ничего и не будет. Если выдача есть, то программа экранного доступа её прочитает.
Например, можете ввести следующие несколько строк команд:

a = 3
b = 5
c = a + b
print(c)
abc

У первых трёх строк никакой выдачи не будет, у четвёртой будет выдача 8, а у пятой выдача текста ошибки.
При работе именно в интерактивной консоли четвёртую строку можно заменить просто на
c
В этом режиме ввод переменных приводит к показу их значения, но при прикладном программировании это уже не актуально.
В конце нажмите CTRL+Z, а потом Enter, чтобы закрыть консоль Python.

Это мы поработали через интерактивную консоль Python.
Теперь создаём файл test.py, куда записываем следующие строки:

name = input("What is your name?")
print("Hello "+name)

После этого в командной строке вызываем файл на исполнение:
python D:\study\test.py
У вас в окне командной строки сначала запросят ввод функцией input(), а потом покажут персональное приветствие.

Это мы запустили скрипт Python на исполнение с чтением консольной выдачи.

Вам может захотеться сопоставить py-файлы с интерпретатором Python, чтобы прямо в Проводнике нажимать на py-файлах и запускать их на исполнение.
Так сделать можно, но вышеприведённый test.py у вас работать не будет.
Точнее работать-то он будет, но после второй строки он сразу будет завершаться, так что выдачи вы не увидите.
На этот случай надо писать вот так:

name = input("What is your name?")
print("Hello "+name)
input()

Функция в третьей строке блокирует исполнение, ожидая ввода. Это позволит задержать окно и увидеть выдачу со строки 2.

Вот и вся наука для начала изучения синтаксиса языка. Дальше, надеюсь, сориентируетесь.

> Текстовый редактор Akelpad 4.9.8

Если используете AkelPad, то в меню "Настройки" активируйте пункт "Параметры".
Там на вкладке "Общее" в группе "Выполнить" для параметра "Команда" пропишите строку
rundll32.exe shell32,ShellExec_RunDLL "%f"
и для параметра "Рабочий каталог" строку
%d
Ну и сохраните клавишей "ОК".

После этого открытый в AkelPad файл можно будет открыть сопоставленной программой по команде CTRL+F5.
Соответственно сопоставляете py-файлы с интерпретатором Python, а потом пишите их в AkelPad, а когда надо выполнить код, то просто нажимаете в окне редактора CTRL+F5, и файл запускается на исполнение.
Это в принципе будет работать с любыми интерпретируемыми языками.

> Кстати, в NVDA есть консоль python (Ctrl+NVDA+Z)

Ну это просто проброшенный в интерфейс NVDA интерактивный консольный интерпретатор Python с некоторыми особенностями, характерными для окружения NVDA.
Учить язык как таковой я бы по нему всё-таки не советовал.
Он предназначен для исследования состояния NVDA и воспринимаемого ею системного окружения, а также каких-то быстрых тестов на эту тему.
Успехов. Никита.

   2021-11-25 22:08:43 (#3680628)

[prg] python. Где писать, редактировать и как услышать вывод в консоли

Здравствуйте!

Пробовал по материалам из интернета писать код прямо в оболочке idle
python, создав новый файл, но читается только набираемые клавиши, а
текста на экране не вижу.

Также пробовал писать в текстовом файле и затем через командную строку
запустить код, но к сожалению, примеров в интернете нашёл один и то там
всё показывают визуально.

Из всего выше изложенного вытекают вопросы:

1. Как писать и редактировать код, чтобы он читался nvda?

2. Как тестировать код, чтобы я слышал вывод в консоли?

3. Очень хочется выводить текст ошибок в читаемом формате, скажем,
перенаправлять в текстовый файл.

У меня установлен python-3.10.0-amd64

Текстовый редактор Akelpad 4.9.8

nvda 2021.2 установочная копия.

Windows 10 (64-разрядная)

домашняя версия

p.s. Кстати, в NVDA есть консоль python (Ctrl+NVDA+Z) и там можно
некоторый код писать и слышать вывод, но функцию ввода input она не
принимает, пишет:

Traceback (most recent call last):
File "<console>", line 1, in <module>
RuntimeError: input(): lost sys.stdin

в остальном можно копаться как в песочнице!

   2021-11-23 09:08:26 (#3680466)

[prg] moderatorial Re: pascal. nvda не читает текст в консоли

14 окт. 2021 г., в 23:08, markom***@y*****.ru написал:
> Sensei <rolexand***@y*****.ru> 13 октября 2021 г. 08:37:54 написал:
>> Здравствуйте, Грызунов Александр.

Здравствуйте, markom87!
+ - избыточное цитирование.
С уважением, комодератор Александр Зеленов
TC-Mode***@g*****.io

[prg] Re[2]: pascal. nvda не читает текст в консоли

А еще лучше вариант просто перейти на Линукс.

Sensei <rolexand***@y*****.ru> 13 октября 2021 г. 08:37:54 написал:

> Здравствуйте, Грызунов Александр.
>
> Вы писали 13 октября 2021 г., 11:15:28:
>> Подскажите, пожалуйста, в какую сторону копать, чтобы исправить
>> читаемость выводимого текста, в первую очередь в консольных приложениях.
>
> 1. nvda запускается от имени администратора? Если нет, то отметье нужный
> флаг в свойствах исполняемого файла.
> 2. Можно еще попробовать поставить consoleToolkit-1.0.nvda-addon.
> --
> web- разработка на ощупь
> http://b-g-group.ru
> С уважением, Рожков Александр
>
> Дискуссионный лист: "Особое программирование: лист для незрячих программистов"
> Мод.группа: Владимир Довыденков, Александр Зеленов.
> Сайт листа: http://www.tiflocomp.ru/
> Правила листа:
> https://subscribe.ru/catalog/industry.comp.tiflocomp.programming/rules
> Заказать правила по почте:
> industry.comp.tiflocomp.programming-rules@subscribe.ru
> Написать в лист: industry.comp.tiflocomp.programming-list@subscribe.ru
> Общий модераторский адрес: TC-Mode***@g*****.io
> Количество подписчиков: 184 Всего писем: 1528
> Адрес этого сообщения в архиве:
> https://subscribe.ru/archive/industry.comp.tiflocomp.programming/msg/3677990
> Подписаться: industry.comp.tiflocomp.programming-sub@subscribe.ru
> Отписаться: industry.comp.tiflocomp.programming-unsub@subscribe.ru
>
> https://subscribe.ru/ https://subscribe.ru/feedback

   2021-10-14 18:09:30 (#3678058)

[prg] Re: pascal. nvda не читает текст в консоли

Здравствуйте, Грызунов Александр.

Вы писали 13 октября 2021 г., 11:15:28:
> Подскажите, пожалуйста, в какую сторону копать, чтобы исправить
> читаемость выводимого текста, в первую очередь в консольных приложениях.

1. nvda запускается от имени администратора? Если нет, то отметье нужный флаг в свойствах исполняемого файла.
2. Можно еще попробовать поставить consoleToolkit-1.0.nvda-addon.

   2021-10-13 09:37:36 (#3677990)

[prg] pascal. nvda не читает текст в консоли

Здравствуйте!

На двух моих компьютерах простое консольное приложение выводит на
дисплей текст

по английски: hello world! и по-русски: Привет Мир!

При этом nvda его читает.

У меня Windows 10 64-разрядная, nvda - 2021.2

У другого пользователя консольное приложение запускается, но nvda ничего
не читает.

1. Предположение первое, но проверить пока не могу: он использует
портабельную версию nvda.

Эту программу Nvda я ему отправлял летом, поэтому версия не слишком старая.

2. Какая версия Windows пока выяснить не удалось, может это тоже влияет?

3. При установке FreePascal на мой компьютер все диалоговые окна у меня
читались, а у этого пользователя - nvda ничего не читал, а запущенный
jaws18 читал какие-то цифры вместо названий кнопок и флажков. Может
какие-то настройки дисплея влияют на это явление?

В остальном его компьютер работает штатно - во всяком случае через
удалённый доступ я ничего такого подозрительного не заметил.

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

С уважением

Грызунов Александр. Самара.

   2021-10-13 09:16:07 (#3677988)

[prg] moderatorial Re: Не со всем по теме

15 сент. 2021 г., в 20:22, <markom***@y*****.ru> <markom***@y*****.ru> написал(а):
> Привесть какая-либо русской_язычнная рассылка, занимающаяся проблемами
> связанными с использованием Линукс?

Здравствуйте, markom87!
+ - несоответствие тематике рассылки.
С уважением, комодератор Александр Зеленов
TC-Mode***@g*****.io

[prg] Не со всем по теме

Привесть какая-либо русской_язычнная рассылка, занимающаяся проблемами
связанными с использованием Линукс?

   2021-09-15 17:58:04 (#3676723)

[prg] Re: turbo Pascal как писать и компилировать

Здравствуйте, Грызунов.

Вы писали понедельник, 13 сентября 2021 г., 12:45:38:
ГА> Задача: писать простые консольные приложения на pascal в заявленной среде.
Почитайте ещё вот тут, может подойдёт:
http://tiflocomp.ru/docs/programming/fpc.php

   2021-09-13 21:19:37 (#3676633)

[prg] Re: turbo Pascal как писать и компилировать

Здравствуйте, Александр. Для освоения паскаля я бы порекомендовал PascalABC.NET. https://ru.wikipedia.org/wiki/PascalABC.NET
Эта бесплатная хорошо озвучивающаяся среда программирования для паскаля и делфи. Поддерживается классический паскаль - я сам на нем запускал программы, написанные в лохматом веке в других средах.

   2021-09-13 19:54:51 (#3676630)

[prg] turbo Pascal как писать и компилировать

Доброго времени суток!

Задача: писать простые консольные приложения на pascal в заявленной среде.

После установки пакета SchoolPak и запуска TurboPascal нечитаемое окно и
меню тоже.

Плагин cloudVision для nvda прочитал, что там и меню и даже горячие
клавиши на экране присутствуют.

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

Сложных программ писать не требуется - инструмент нужен в первичном
освоении

языка pascal.

Если turbo этого не позволяет, тогда какой инструмент подойдёт?

p.s. В институте мы работали с turbo pascal и без особых проблем
компилировали исходники, но, блин, совершенно не помню как это мы делали.

Осталось уйма исходников и даже несколько исполняемых exe-файлов,, но
процесс начисто стёрся из памяти.

Кстати, turbo pascal в портабельном виде тоже имеется, но под windows 10
он не запускается.

Ещё мы работали с седьмым delphi, но это было значительно позднее, там и
лазарус где-то мелькал на непрофильных лабораторных работах.

p.s. Одним словом, накидайте пожалуйста идеи, ну, а уж если будут
конкретные ссылки или ресурсы, буду очень признателен.

   2021-09-13 12:46:28 (#3676614)

[prg] Re[10]: Проблема с ru_tts на андроид

Здравствуйте, Владислав.

Вы писали 21 июля 2021 г., 13:14:29:
А вот если поставить вконце метода
return false;
Тогда вроде читает фразу полностью, но всё равно его нельзя
остановить.

   2021-07-21 13:30:09 (#3673919)

[prg] Re[9]: Проблема с ru_tts на андроид

Здравствуйте, gozaltech.

Вы писали 20 июля 2021 г., 9:52:40:

g> попробуйте в цикле забрать все данные до тех пор пока размер данных не достигнет нуля.
Вот переписал метод, максимум чего я достиг, это улучшилось качество
звучания, а фразу не дочитывает.
Вот моя реализация:
boolean speechCallback(final byte[] audioBuffer)
{
for (int i = 0; i < audioBuffer.length; i++)
{
audioBuffer[i] = (byte) (audioBuffer[i] +128);
}
if (audio == null || audio.getState()!= AudioTrack.STATE_INITIALIZED || audioBuffer == null) return false;
{
audio.write(audioBuffer, 0, audioBuffer.length);
}
return true;
}

   2021-07-21 13:14:54 (#3673918)

[prg] Re[8]: Проблема с ru_tts на андроид

Приветствую всех!
Не забывайте вызывать flush(). Например:
speack.speak("Привет, это мой тестовый голос!");

audio.flush();

Успехов. Анатолий.

   i_chay 2021-07-20 12:25:24 (#3673876)

[prg] Re[8]: Проблема с ru_tts на андроид

Доброе утро.

Вообще странно, возможно он не успевает записать в track весь буффер, который у него есть, или может в этот собственно момент больше данных и нет.

попробуйте в цикле забрать все данные до тех пор пока размер данных не достигнет нуля.

   2021-07-20 09:53:22 (#3673870)

[prg] Re[7]: Проблема с ru_tts на андроид

Здравствуйте, gozaltech.

Вы писали 17 июля 2021 г., 18:04:02:
g> Так вы не реализовали проигрывание полученных семплов, по этому у
g> вас синтезатор и не разговаривает.
Как-то получилось реализовать, но звучит только кусочек первого слова.
Вот моя реализация в конструкторе:
Есть глобальная переменная
private audio AudioTrack;
audio = new AudioTrack(AudioManager.STREAM_MUSIC, 10000, AudioFormat.CHANNEL_OUT_MONO, AudioFormat.ENCODING_PCM_8BIT, audioBufferSize, AudioTrack.MODE_STREAM);
if (audio.getState() == AudioTrack.STATE_INITIALIZED)
audio.play();
И вот метод:
boolean speechCallback(final byte[] audioBuffer)
{
if (audio == null || audio.getState()!= AudioTrack.STATE_INITIALIZED || audioBuffer == null) return false;
audio.write(audioBuffer, 0, audioBuffer.length);
return true;
}

   2021-07-19 15:37:02 (#3673831)

[prg] мелкая go библиотека для работы с электронным брайлем

здравствуйте.

написал для внутреннего использования мелкую go-библиотеку для работы с
цифровым брайлем.

сейчас вот выкладываю зачем-то.

на текущий момент она может писать и читать в brf и брайлевском юникоде,
а значит, конвертировать между ними, а также осуществлять простейшую
трансляцию/бэктрансляцию по таблице.

https://github.com/ilyapashuk/go-braille

   2021-07-19 12:00:26 (#3673822)

[prg] Re[6]: Проблема с ru_tts на андроид

Добрый вечер.

Так вы не реализовали проигрывание полученных семплов, по этому у вас синтезатор и не разговаривает.

вам нужно проиграть семплы, которые приходят в колбек в параметр audioBuffer.
10000 килогерц, 8бит, моно аудио.
можете наверно использовать AudioTrack для этого.

   2021-07-17 18:04:49 (#3673752)

[prg] Re[5]: Проблема с ru_tts на андроид

Здравствуйте, Владислав.

Вы писали 16 июля 2021 г., 23:03:10:

Короче вроде перестало выбивать приложение, но всё равно не говорит со мною.
Вот что я написал:
boolean speechCallback(byte[] audioBuffer) {
return applyIntonation;
// Sound stream playback implementation
}
А в главной активности написал так:
speack = new RussianVoiceEngine();
speack.speak("Привет, это мой тестовый голос!");
Но при запуске приложения голос молчит.
Может в главной активности ещё что-то нужно дописать, чтоб фонемофон заговорил?
Всем большое спасибо!

   2021-07-17 16:44:11 (#3673751)

[prg] moderatorial Re: Проблема с ru_tts на андроид

17 июля 2021 г., в 01:28, gozaltech <be***@l*****.ru> написал:
>> Здравствуйте, gozaltech.
>> Вы писали 15 июля 2021 г., 18:07:09:
>> g> ДДа, все правильно,. именно по такому пакету не т implementation....
>> Всем спасибо.
>> С уважением,
>> Владислав mailto:kvs***@u*****.net
>> сайт одесской школы для слепых:
>> http://school93.od.ua
>> Дискуссионный лист: "Особое программирование: ...

Здравствуйте, gozaltech!
Предупреждение за избыточное цитирование.
С уважением, комодератор Александр Зеленов
TC-Mode***@g*****.io

[prg] Re[4]: Проблема с ru_tts на андроид

Здравствуйте, gozaltech.

Вы писали 16 июля 2021 г., 20:28:26:
g> Что пишет отладчик когда вылетает программа?
Вот что выдаёт лог:
F libc : Fatal signal 6 (SIGABRT), code -6 (SI_TKILL) in tid 10352 (tts.synth), pid 10352 (tts.synth)
F DEBUG : pid: 10352, tid: 10352, name: tts.synth >>> tts.synth <<<
F DEBUG : Abort message: 'java_vm_ext.cc:542] JNI DETECTED ERROR IN APPLICATION: JNI GetStringLength called with pending exception java.lang.NoSuchMethodError: no non-static method "Ltts/synth/RussianVoiceEngine;.speechCallback([B)Z"'
F DEBUG : Abort message: 'java_vm_ext.cc:542] JNI DETECTED ERROR IN APPLICATION: JNI GetStringLength called with pending exception java.lang.NoSuchMethodError: no non-static method "Ltts/synth/RussianVoiceEngine;.speechCallback([B)Z"'
F DEBUG : #09 pc 0000146d /data/app/tts.synth-M212p5Lu2vyten21xXT_5Q==/lib/arm/libruvoicesynth.so (Java_tts_synth_RussianVoiceEngine_speak+56)
F DEBUG : #18 pc 00000690 /dev/ashmem/dalvik-classes.dex extracted in memory from /data/app/tts.synth-M212p5Lu2vyten21xXT_5Q==/base.apk (deleted) (tts.synth.MainActivity$1.onClick+16)
F libc : Fatal signal 6 (SIGABRT), code -6 (SI_TKILL) in tid 10448 (tts.synth), pid 10448 (tts.synth)

   2021-07-16 23:04:06 (#3673718)

[prg] Re[3]: Проблема с ru_tts на андроид

Добрый вечер.

Что пишет отладчик когда вылетает программа?

> Здравствуйте, gozaltech.
>
> Вы писали 15 июля 2021 г., 18:07:09:
> g> ДДа, все правильно,. именно по такому пакету не т implementation.
> g> там по уумолчанию используется пакет tts.synth.
> Название пакета поменял, но всё равно вылетает программа.
> на вот этом куске кода тоже ошибка
> speechCallback(byte[] audioBuffer)
> {
> // Sound stream playback implementation
> }
> либо просится return во внутрь, либо передвпереди поставить void но всё равно вылетает.
> и я в главной активности не использую
> speechCallback
> А если его использовать тогда как?
> Всем спасибо.
>
> --
> С уважением,
> Владислав mailto:kvs***@u*****.net
> сайт одесской школы для слепых:
> http://school93.od.ua
>
> Дискуссионный лист: "Особое программирование: лист для незрячих программистов"
> Мод.группа: Владимир Довыденков, Александр Зеленов.
> Сайт листа: http://www.tiflocomp.ru/
> Правила листа: https://subscribe.ru/catalog/industry.comp.tiflocomp.programming/rules
> Заказать правила по почте: industry.comp.tiflocomp.programming-rules@subscribe.ru
> Написать в лист: industry.comp.tiflocomp.programming-list@subscribe.ru
> Общий модераторский адрес: TC-Mode***@g*****.io
> Количество подписчиков: 185 Всего писем: 1510
> Адрес этого сообщения в архиве: https://subscribe.ru/archive/industry.comp.tiflocomp.programming/msg/3673694
> Подписаться: industry.comp.tiflocomp.programming-sub@subscribe.ru
> Отписаться: industry.comp.tiflocomp.programming-unsub@subscribe.ru
>
> https://subscribe.ru/ https://subscribe.ru/feedback

   2021-07-16 20:29:25 (#3673705)

[prg] Re[2]: Проблема с ru_tts на андроид

Здравствуйте, gozaltech.

Вы писали 15 июля 2021 г., 18:07:09:
g> ДДа, все правильно,. именно по такому пакету не т implementation.
g> там по уумолчанию используется пакет tts.synth.
Название пакета поменял, но всё равно вылетает программа.
на вот этом куске кода тоже ошибка
speechCallback(byte[] audioBuffer)
{
// Sound stream playback implementation
}
либо просится return во внутрь, либо передвпереди поставить void но всё равно вылетает.
и я в главной активности не использую
speechCallback
А если его использовать тогда как?
Всем спасибо.

   2021-07-16 17:09:12 (#3673694)

[prg] Re: Проблема с ru_tts на андроид

Добрый вечер.

ДДа, все правильно,. именно по такому пакету не т implementation.
там по уумолчанию используется пакет tts.synth.

если вы хотите изменить поведение, вам нужно будет поменять имя пакета, и по желанию класса в коде jni.

   2021-07-15 18:08:13 (#3673646)

[prg] Проблема с ru_tts на андроид

Здравствуйте, industry.
Собрал из ранее выложеных исходников ru_tts сошную библиотеку, и занялся её тестированием,
работаю в eclipse, всё вроде откомпилировалось, только после запуска на телефоне, программа вылетает, в логах получаю такую ошибку:
E AndroidRuntime: java.lang.UnsatisfiedLinkError: No implementation found for void com.newfon.ttstest.RussianVoiceEngine.speak(java.lang.String) (tried Java_com_newfon_ttstest_RussianVoiceEngine_speak and Java_com_newfon_ttstest_RussianVoiceEngine_speak__Ljava_lang_String_2).
что было сделано:
создан класс "RussianVoiceEngine.java",
вкотором вызываю библиотеку:
System.loadLibrary("ruvoicesynth");
в данном классе есть такая строка:
native void speak(String text);
Дальше переходим в главную активность и пишем, создаём переменную:
private RussianVoiceEngine speack;
и в onCreate вызываем:
speack = new RussianVoiceEngine();
speack.speak("privet");
Вот и всё, программа вылетает.
Всем зарание огромное спасибо.

   2021-07-15 17:47:28 (#3673645)

[prg] Re[9]: Координаты для виртуального view was: Исходники к книге Android Acc

Здравствуйте Анатолий. Огромное Вам спасибо за ссылку. Я даже зарепортил
issue,что там не всё задокументировано как следует
https://issuetracker.google.com/issues/193263961. И всё же вопрос
упирается в одну тему: Как получить координаты виртуального view для
каждой ссылки. У меня толком ничего не вышло,т.е по отладке вроде rect
родительского accessibilityNodeInfo содержит rect каждой ссылки,но при
этом если я добавляю его на экран (info.setBoundsInScreen),то talkback
фокусируется только на одной ссылке (не считая родительской ноды). Также
без координат,как я понимаю не будет происходить прокрутки,а значит при
изучении касанием не получится попасть на все ссылки. Я даже копался в
исходниках talkback,но особо ничего не понял,хотя talkback,судя по
исходникам,очень активно работает с координатами нод. Я пытался считать
координаты так:

int start =builder.getSpanStart(spans[virtualViewId]);
int end=builder.getSpanEnd(spans[virtualViewId]);
CharSequence content=builder.subSequence(start,end);
int startLine=layout.getLineForOffset(start);
int endLine=layout.getLineForOffset(end);
float startClick=layout.getPrimaryHorizontal(start);
float endClick=layout.getPrimaryHorizontal(end);
Rect r=new Rect((int)endClick,layout.getLineTop(startLine),(int)startClick,layout.getLineBottom(endLine));
int[]location=new int[2];
getLocationOnScreen(location);
location[0]-=getScrollX();
location[1]-=getScrollY();
r.offset(location[0],location[1]);
Rect r1=new Rect();
info.getBoundsInScreen(r1);
announceForAccessibility(r1.contains(r)+" "+content);
info.setBoundsInScreen(r);

Я считал координаты,используя примеры из интернета. В документации не очень понятно написано,что даёт метод класса View getLocationOnScreen,но я догадываюсь,что это верхний левый угол View. Теперь вопрос,какие должны быть координаты у виртуального View,Чтобы их принял talkback?
P.s Огромное Вам спасибо за книгу. Я даже оставил комментарии для улучшения книги https://forums.raywenderlich.com/t/errata-for-android-accessibility-by-tutorials-1st-ed/127243/3.`

   2021-07-13 21:41:41 (#3673550)

[prg] Re[8]: ACTION_CLICK для виртуального View was: Исходники к книге Android A

Приветствую всех!

> что значит вместо onClick использовать
> интенты? Если Вы про action_VIEW ...

Верно, речь об ACTION_VIEW, то есть вместо
> spans[virtualViewId].onClick(MyView.this);

использовать что-то типа (создайте нужный вам интент;здесь просто запуск
браузера с указанной uri):
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(spans[virtualViewId].getText().toString()));
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getContext().startActivity(i);

> 2. метод performAccessibilityAction не вызывается для action_click.

Возможно, вас заинтересует подраздел "Handle custom touch events" (ну и
остальной материал на странице тоже):
https://developer.android.com/guide/topics/ui/accessibility/custom-views

Успехов. Анатолий.

   i_chay 2021-07-11 11:45:49 (#3673387)

[prg] Re[7]: ACTION_CLICK для виртуального View was: Исходники к книге Android A

Здравствуйте Анатолий. Вы писали
> Во-вторых, речь шла о том, чтобы вместо .onClick() использовать интенты.
Я просто Вас не совсем понимаю,что значит вместо onClick использовать
интенты? Если Вы про action_VIEW в моей activity,т.е тот случай с quest
player,где Вы мне здорово помогли,за что Вам огромное спасибо,так у меня
этот код работает и на четвёртом андроиде. Если Вы про другое,тогда
поясните пожалуйста,что Вы имеете ввиду. Ещё Вы пишете
> вы хотите мне доказать,
> что ваш код правильный и потому ничего из предложенного вы делать не
> будите?

Нет,я просто хочу показать,что часть из предложенного Вами я делаю и у
меня есть результаты:

1. Talkback корректно фокусируется на нужном узле.

2. метод performAccessibilityAction не вызывается для action_click.

3. Метод performClick не всегда вызывается.

4. При касании ссылки и клике на неё клик отрабатывает,но actionClick
вроде тоже не вызывается.

Поэтому я делаю то,что Вы мне советуете. Только ещё вопрос как
определить неявную рекурсию?

Кстати когда очень много ссылок,хотя у меня все виртуальные view имеют
один и тот же rect в качестве boundsInScreen,на 11-м андроиде перед
фокусировкой на одно из виртуальных view у меня происходит задержка
перед тем,как на него попадёт фокус. Благодаря отладке я проверил,что у
меня,хоть я и удалил этот action,вызывается action

AccessibilityNodeInfo.AccessibilityAction.ACTION_SHOW_ON_SCREEN перед action accessibility_focus. Правда я не
понимаю,какой алгоритм мне использовать для этого action. Возможно нужно
послать событие прокрутки,только какие значения полей нужно вписывать в
это событие.

   2021-07-11 03:32:53 (#3673383)

[prg] Re[6]: ACTION_CLICK для виртуального View was: Исходники к книге Android A

Приветствую всех!
Ну Вы же видели в моём коде,что никакой рекурсии нету.

Ну вы же видели в моём сообщении, что я говорю о _неявной _ рекурсии, то
есть о той, что может возникнуть по причине ошибки без явного намерения
с вашей стороны.
Неявную рекурсию нельзя обнаружить, только читая исходник.

> Так я и анализирую в методе performClick номер узла и работаю со
> ссылкой. см. массив spans. Фокус получает нужный узел. Просто я перед
> коммитом удаляю отладочный код.

Во-первых, не надо удалять отладочный код, потому что каждое удаление /
добавление чревато новыми ошибками.
Во-вторых, речь шла о том, чтобы вместо .onClick() использовать интенты.
В общем случае, ваша позиция не совсем понятна: вы хотите мне доказать,
что ваш код правильный и потому ничего из предложенного вы делать не
будите?

Успехов. Анатолий.

   i_chay 2021-07-10 23:50:21 (#3673380)

[prg] Re[5]: ACTION_CLICK для виртуального View was: Исходники к книге Android A

Здравствуйте Анатолий. Вы писали
> Когда же вы поймёте, что после написания исходника начинается этап
> работы с отладчиком или хотя бы с подробным выводом в лог-файл, чтобы
> проанализировать реальную работу вашего кода, а не то, что вам кажется.
Ну я делал announceForAccessibility,эмулировал креш,типа так: int
a=1/0,но у меня это не отрабатывало. Сейчас даже невсегда вызывается
performClick и это я говорю опять же не наугад. Сейчас,к примеру при
клике по первой ссылке может кликнутся n-ная и не один из методов не
вызовется. Ещё Вы пишете
> (например какой-нибудь неявный
> рекурсивный вызов метода) и Android 11 лучше справляется с ней, чем
> 4.4.2.
Ну Вы же видели в моём коде,что никакой рекурсии нету. Ещё Вы пишете
> например, если
> основной View получает вызов onClick(), то может проанализировать, в
> какой accessibility-узел содержит accessibility-фокус и отправить интент
> с ссылкой из этого узла (разумеется, если TalkBack не перемещает
> accessibility-фокус на элемент, получивший click как событие ввода).
Так я и анализирую в методе performClick номер узла и работаю со
ссылкой. см. массив spans. Фокус получает нужный узел. Просто я перед
коммитом удаляю отладочный код.

   2021-07-10 22:21:23 (#3673378)

[prg] Re[4]: ACTION_CLICK для виртуального View was: Исходники к книге Android A

Приветствую всех!

> я закоментил некоторый код,т.к это мне ничего
> не дало.

А что это должно было дать конкретно? Какой эффект вы ожидали получить,
раскомментировав или закомментировав эти actions у своего
AccessibilityNodeInfo&
Но почему же на 11-м android всё отрабатывает идиально,а на
> android 4.4 есть проблемы?

Наблюдение внешних проявлений, тем более нами (незрячими людьми), не
является основанием для таких однозначных выводах о работе программного
кода.
Когда же вы поймёте, что после написания исходника начинается этап
работы с отладчиком или хотя бы с подробным выводом в лог-файл, чтобы
проанализировать реальную работу вашего кода, а не то, что вам кажется.
До тех пор, пока вы не получите объективной картины происходящего, можно
гадать сколько угодно и даже можно случайно угадать, в чём проблема, но
это не имеет к профессиональному программированию никакого отношения.
Если проблему не удаётся понять под отладчиком или при подробном выводе
в лог-файл, то идут на такие меры, как написание простых фрагментов
кода, которые позволяют прояснить отдельные моменты, потому что большой
код не обладает такой прозрачностью и очевидностью.
Возможно, в Android 11 основной View по умолчанию распространяет
действие на виртуальные, а в 4.4.2 не делает этого, полагаясь на
программиста. Возможно, у вас есть ошибка (например какой-нибудь неявный
рекурсивный вызов метода) и Android 11 лучше справляется с ней, чем
4.4.2. Предположений может быть сколько угодно...

> А вот если изучением касанием найти эту
> ссылку,всё работает нормально даже на android 4.4.2. А

Это опять всего лишь слова. "Нормально" означает лишь то, что ссылка
активируется, но как при этом работает ваш код, остаётся неизвестным.
Если в указанном случае ссылка активируется, то означает ли это, что ваш
AccessibilityNodeInfo получает ACTION_CLICK, так? Вы это видели в лог-файле?

> на четвёртом android
> action_click не приходит,а на 11-й приходит.

Тогда сравните то, что происходит при перемещении accessibility-фокуса
по ссылкам при свайпах и последующего щелчка по выбранной ссылке; и что
происходит при выборе ссылки изучении касанием и последующем щелчке по ней.

И почему бы не использовать интенты и startActivity, например, если
основной View получает вызов onClick(), то может проанализировать, в
какой accessibility-узел содержит accessibility-фокус и отправить интент
с ссылкой из этого узла (разумеется, если TalkBack не перемещает
accessibility-фокус на элемент, получивший click как событие ввода).

Успехов. Анатолий.

   i_chay 2021-07-09 07:05:46 (#3673310)