DisTalk. Якщо ти не вмієш читати, це не означає, що ти не можеш спілкуватися

Всім привіт! Сьогодні я розповім про програму DisTalk Pro. Я повинен вибачитися за паузу в моїх постах, знову рятував світ підбивав підсумки чверті, виграв срібну медаль кубка Росії бочча в трійках, виступив на форумі Оголені серця. Але обіцянка є обіцянка, і на цьому тижні я виклав нову версію програми DisTalk Google Play та GitHub.

Для тих хто не розуміє, про що я кажу, раджу почитати цю статтю.


DisTalk Pro

Глава 0. Що власне робимо?
Є такий досить популярний і дешевий девайс GoTalk. Принцип його роботи простий. В матрицю вставляються картки. На картки з допомогою кнопки Record педагог записує аудіофрагменти. І потім при натисканні на картку GoTalk грає цю фразу. Ці пристрої широко відомі в инвасообществе і використовуються дуже давно (я пам'ятаю свій третьій клас і кнопку «В туалет»)



GoTalk

Я після свого хорошого досвіду з DisQwerty і DisType вирішив зробити додаток DisTalk з тим же функціоналом (тільки замість запису мови, використовувати tts). І…

Глава 1. Не робіть так!
Завдання дуже проста. Зробити додаток, що створює папку DisTalk докорінно пристрою. Користувач кладе туди картинки, вантажу це в GridView, при натисканні на картинку вимовляю назву файлу. Ще щоб було веселіше зробив перемикання папок. Щоб учитель дитини міг зробити різні набори… Я зробив такий додаток, завантажив в play market. І зараз я розповім про те, як не треба писати програми. (Але як треба я не знаю і не претендую на звання гуру)

Помилки і поради юного і на милицях
Читайте документацію і тестуйте на різних версіях android.

Як ми знаємо, з оновленням Android до версії Lolipop мало просто написати в маніфесті, то що хочеш писати в storage. Треба ще викликати запит на доступ до fs.



до Речі, в доках про це нічого немає. Stackoverflow наше все!

З цієї причини я не міг зрозуміти чому у половини людей все працює, а у половини багрепорты трапляються. У DisType Pro я використовую перевірку і все працює:

private void verifyStoragePermissions(Activity activity) {
// Check if we have write permission
int permission = ActivityCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE);

if (permission != PackageManager.PERMISSION_GRANTED) {
// We don't have permission so prompt the user
ActivityCompat.requestPermissions(activity, new String[] { Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE}, 0);
}
}

Поважайте користувача.

Наступна моя помилка в тому, що я дуже погано побудував інтерфейс. При першому запуску користувач бачив просто білий екран. Ніякого натяку на те, що потрібно підключити планшет до компу, завантажити картинки і взагалі. Я наївно сподівався на те, що люди шанують інструкцію в описі програми на гугл плей. Але немає.

У новій версії я зробив:

  • Стартовий набір картинок, які завантажуються відразу після першого запуску (ну роздмухав я apk до 1 мб, сподіваюся ніхто не помер) копіюються в папку DisTalk і юзер бачить не просто білих екран, а вже готове до роботи додаток
  • Функції додавання, видалення, редагування картинок з галереї і створення папок прямо з програми. Тепер не обов'язково мати комп'ютер
  • Додав підпис до кожного елементу gridview. Тепер користувач може використовувати не тільки підписані pecs піктограми, а прості фотки
  • Додав Yandex AppMetrica (ні, це не реклама) для відстеження помилок в додатку (ну ще стежу хто що сказав (: ). Юзери не охоче шлють багрепорты, а це корисно!
Не забувайте ключ.

Добре, Вань, написав новий додаток — молодець, але чому було не оновити старе?
Тому що я втратив keystore і забув пароль від нього. Так робити не треба. Зберігайте цей файл в надійне місце. Новий jks я відправив собі на пошту. Зберігаю його!

Знімайте видеогайды про продукти


Ролик про те, як користуватися новим DisTalk'ом

Розділ 2. Що далі?
TODO:

  • Придумати як ускладнити вихід з програми. Фахівці скаржаться, що люди з аутизмом звикли грати на планшеті, і постійно виходять з програми
  • Придумати як схиляти слова в потоці мови. Щоб не виходило «я хотіти яблуко», а «я хочу яблуко»
  • Зробити банк карток
  • Додати функцію запису аудіо кнопки. Фахівці кажуть, що іноді потрібно записати кнопку з інтонацією.
  • iOS, windows
Мій сайт.
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.