avatar_Игорь

Весовой калькулятор

Автор Игорь, 02-08-2018, 07:45:11

Попередня тема - Наступна тема

0 Користувачі і 1 Гість дивляться цю тему.

ivan_fd

Доброго дня.

По матеріалах даної гілки форуму зробив калькулятор для телефону на Андроїд.
Може комусь стане в нагоді.

Файл на google диску.

ИгорьTopic starter

Дякую за роботу.
Маю питання на аналогічну тему.   
Чи можна зробити додаток, що буде раз у три хвилини стукатись на сервер, засилаючи йому РОST або GET запрос, та в залежності від відповіді сервера (цифра), давати звукове та текстове повідомлення користувачеві?
У запросі має бути номер пристрою та код доступу.
Ідеально було б мати можливість задати додатку декілька пар Номер пристрою - Код.
Вважаю, такий додаток має бути платним. Передбачаю у першій хвилі декілька десятків потенційних користувачів, з часом - більше.
Два питання.
Це тобі по силах?
Вартість ?
Віриш ти в Бога чи ні, йому байдуже.
Важливо, щоб Бог в тебе вірив, а не навпаки.

ИгорьTopic starter

Для конкретики.. 
Додаток стукається по такому url...
http://labspirt.club/forum/warning/index.php?id=mup36&pw=1234&lang=ua
Тут іd - це ідентифікатор пристрою,
pw - пароль,
lang - мова.
У відповідь отримає або "ОК", що означає, що повідомлень немає, або строку (текст), що починається зі знаку оклику, або текст без знаку оклику.
Знак оклику на початку тексту означає, що повідомлення термінове та потребує негайного сповіщення користувача.
Відсутність знаку оклику означає, що повідомлення звичайне, інформаційне, необхідності у голосному сповіщенні нема. 
Бажано, щоб відкриваючи вікно додатку, користувач бачив останні 5-10 сповіщень з часом їх надходження для кожного окремого іd окремо 
І на останок... Якщо користувач зреагував на термінове повідомлення, (відкрив вікно після повідомлення), додаток має постукатісь на сервер на ту саму адресу, та дати запрос, що скасує наступні відправки з сервера того самого термінового сповіщення.
Зрозуміло, додаток має працювати у фоновому режимі доки користувач цього забажає.


Ось, вже й задачу поставив :)
Віриш ти в Бога чи ні, йому байдуже.
Важливо, щоб Бог в тебе вірив, а не навпаки.

ivan_fd

Цитата: Игорь від 23-11-2021, 09:47:26Це тобі по силах?

Так, щоб одразу сказати, що по силах, то ні. Ще не бавився з запитами на серевера.
Але навіть не в запитах діло.
Сама більша проблема, для мене, це -

Цитата: Игорь від 23-11-2021, 10:11:13додаток має працювати у фоновому режимі доки користувач цього забажає.

Спробувати, звичайно, можна. Для тестів потрібен реально працюючий сервер, чи якась його емуляція.

ИгорьTopic starter

Сервер завтра запрацює. Бався.
Віриш ти в Бога чи ні, йому байдуже.
Важливо, щоб Бог в тебе вірив, а не навпаки.

ИгорьTopic starter

#50
Для чого це треба.
Мої пристрої, що можуть під'єднуватися до роутеру, можуть періодично (нехай раз у три хвилини) надсилати серверові свою інформацію - поточну, чи важливу.
Якщо пристрій буде стукатися до сервера.
Якщо у користувача буде на телефоні застосунок, який я прошу, він зможе не тільки в будь-яку мить подивитись що там робиться, але й своєчасно отримати якісь термінові сповіщення.
Для "тільки подивитись", додаток не потрібен, я можу просто зробити сторінку, на яку треба зайти через браузер. Цікаве та цінне саме сповіщення, в ідеалі - що зпрацює навіть у фоновому режимі, або навіть якщо телефон "спить", бо через брузер я такого не зроблю.
Щоб отримувати інформацію саме від свого пристрою, я планую користуватися сесіями. Якщо в двух словах та викривлено, привтрий, коли зкидує строку, каже що "це для Петі". Коли на сервер постукається застосунок, він скаже: "привіт, я Петя. Що для мене є?", і сервер передасть йому те, що треба.
Зрозуміло, що якщо одночасно будуть два Петі, буде конфлікт... ци радше плутанина.
Тому перший параметр і наступному повідомленні треба буде ускладнити, але це потім.


Зрозуміло, наразі на сервер не стукається жоден петя :) , тобто жоден пристрій не надвилає інформації.
Тому я зробив таке. Строка формується сама тоді, коли хтось звертається на сервер. Зміст залежить від часу (секунд) надходження запиту, який можна дати з браузера або зх застосунка - байдуже. Автоматично формуються обо нейтральні повідомлення, або термінові. З ними я трохи пошуткував. Побавтесь - побачите. При кожному запиті будуть інші строки.
Останні 10 повідомлень зберігаються для кожного "петі" окремо.


Можна один раз клікнути на посілання, а потім тиснути F5 на компі для оновлення сторінки.
Віриш ти в Бога чи ні, йому байдуже.
Важливо, щоб Бог в тебе вірив, а не навпаки.

ИгорьTopic starter

#51
Закинув скрипт на сервер.
трохи змінив структура запиту.
Лінк має бути таким ...
http://labspirt.club/warning/?PHPSESSID=F1234

чи таким
http://labspirt.club/warning/?PHPSESSID=Y3250&lang=en

обо таким
http://labspirt.club/warning/?PHPSESSID=Z005&lang=en&mode=all

Посилання працюють, можна клікати.

Розкладаю по складниках найдовший варіант...
http://labspirt.club/warning/?PHPSESSID=W1122&lang=en&mode=all
Запит складаеться з адреси (синій колір) та трьох параметрів, кожен з которих починається з червоного символу.
Перед першим - знак питання, перед кожним наступним - амперсанд.
Строка не має мати жодного пробілу. Принаймні, в звичайному вигляді.
Поїхали по параметрах.
Кожен з них - це ім'я, знак "=", та значення.
В нашому випадку перший - обов`язковий, інші - ні.
Перший - це ідентифікатор. Нехай для конкретики це буде літера латиною та 3 цифри. Регістр літери важливий.
Другий - мова. Маленькі литери ua, ru, або en.
ua можна не писати. По замовчуванню чи при помилці буде українська мова.
Третій - це спосіб відображення. Якщо цей параметер не писати, або вiн буде не "all", сервер на такий запит надішле лише одну - останню строку, отриману від пристрою.
У випадку "mode=all", сервер надішле всі сбережені строки. Зараз він буде зберігати 10 строк, але це не догма.
Віриш ти в Бога чи ні, йому байдуже.
Важливо, щоб Бог в тебе вірив, а не навпаки.

ivan_fd

Доброго дня.
"Я забув опустити кришку унітазу...." мушу негайно повертатися :-)

О, з цим вже можна працювати. Вчора трішки почитав про фонові процеси. Розбираюся.

Питання - подаємо запит без параметра all, формуєтьмя строка (інформаційне повідомлення - неважливе), тут проблем нема.
А якщо термінове, а ми запитувати будемо раз у три хвилини, воно не перекриється на сервері іншим повідомленням?

ИгорьTopic starter

#53
Перекриє чи ні - це вирішить сервер. Він може лишати першим термінове повідомлення (воно починається зі знаку оклику) доки воно не буде передано користувачеві.
Але факт передачі термінового повідомлення не означає, що користувач побачив його.
Тоді нам треба буде налаготити фідбек. Користувач повинен мати можливість повідомити сервер про те, що певне термінове повідомлення отримано. Це може робити додаток якщо користувач відкрив вікно термінового повідомлення. Тоді сервер припинить досилати користувачеві термінові повідомлення.
Це вже деталі.
Віриш ти в Бога чи ні, йому байдуже.
Важливо, щоб Бог в тебе вірив, а не навпаки.

ivan_fd

Доброго вечора.

Скажіть, як довго будуть працювати ваші посилання, тестові?
Бо часу не вистачає, голова вже квадратна.

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

ИгорьTopic starter

Тестовi посилання будут працювати доки не скажеш, до більше не треба.
Або ні. Саме ті посилання будуть працювати й потім, вже у справжній роботі
Віриш ти в Бога чи ні, йому байдуже.
Важливо, щоб Бог в тебе вірив, а не навпаки.

ИгорьTopic starter

С сьомого кажеш? А то, у когось зараз є нижчій андроід?
Віриш ти в Бога чи ні, йому байдуже.
Важливо, щоб Бог в тебе вірив, а не навпаки.

ИгорьTopic starter

В кого нижче, не отримуватимуть сповіщення.
Віриш ти в Бога чи ні, йому байдуже.
Важливо, щоб Бог в тебе вірив, а не навпаки.

ivan_fd

Цитата: Игорь від 25-11-2021, 20:01:34у когось зараз є нижчій андроід?

У мене ще 5.1 і 6.0, на моїх не можу запустити.
У сина 11, то там щось накльовується. Вивчаю, в силу своїх знань :-)


Цитата: Игорь від 25-11-2021, 20:02:02В кого нижче, не отримуватимуть сповіщення.

Ні, в кого нижче, взагалі не запрацює прога. При наймі на сьогодні. Там для використання фонових задач потрібно використовувати
стороннє розширення. (воно написане на Java 8, і деякі функції не доступні на Андроїдах нижче 7.0) Я писав індійцю, який його розробляє, він обіцяв виправити для нижчих версій, але коли......???
Тут і ще одне є, багато телефонів мають режим енергозбереження. Тобто, поки ви користуєтесь програмою все в нормі, але якщо її залишити і дати телефону заснути,то через  деякий час він її вигружає з пам'яті і всі фонові процеси. Це є в Samsung і Xiaomi з MIUI. Може і ще в якихось є? В даному випадку потрібно в телефоні знімати обмеження з конкретної проги. А це не кожен знає як зробити. Але це не дуже страшно, якщо захотіти, то все можна вимкнути.



ivan_fd

Доброго вечора.

Експерементую з програмою. Питання: коли відправляю строку з браузера, при обновленні періодично видає повідомлення
зі знаком оклику, все нормально. Але коли я відправляю GET запит з Андроїд, і періодичність ставлю 5 секунд і більше(тут точно не скажу), то постійно відповідає
тільки звичайне повідомлення. А, як тільки поставити період в 3сек, то починають приходити і важливі, зі знаком !. Але йдуть якось пачками, пару підряд важливих, потім
пару простих.
В даному випадку не зручно тестувати.

SMF spam blocked by CleanTalk