Форум программистов, компьютерный форум CyberForum.ru

Приложение для Android, которое отправляет USSD запросы - Android

Войти
Регистрация
Восстановить пароль
 
_bio
 Аватар для _bio
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 25
20.01.2016, 09:36     Приложение для Android, которое отправляет USSD запросы #1
Добрый день, форумчане)
Помогите пожалуйста, для работы необходимо написать простое приложение для Android, чтобы контролировать подрядные организации на наших объектах, суть приложения следующая:
У нашей компании есть более 600 объектов, подрядчик приезжает на объект №1 и отправляет USSD запрос *123*xxxx#, где xxxx- номер объекта №1. Тем самым он регистрируется у нас в системе и мы видим, кто в данный момент на объекте.
Главная цель приложения избавиться от необходимости набирать эти запросы вручную.
С созданием приложений для Android Я дело не имел, поэтому посоветуйте с чего начать, в каких классах копать и есть ли скелеты уже созданных приложений, чтобы хотя бы посмотреть как они реализованы?)
Надеюсь на ваши советы)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
androbro
313 / 273 / 51
Регистрация: 17.10.2014
Сообщений: 820
20.01.2016, 10:04     Приложение для Android, которое отправляет USSD запросы #2
_bio, День добрый!
Довольно таки интересное задание. Вот мое виденье основных моментов.
1. Объекты компании скорее всего будут меняются со временем, если да, то встает необходимость подгружать(синкать) их по ходу работы, следовательно нужен сервер который будет предоставлять актуальную информацию типа пары "Название объекта - Номер объекта". Храним данную инфу в БД.
2. UI приложения. Тут тоже могут быть варианты, либо список с индексами, либо что то типа search edittext, либо и то и другое(даем возможность пользователю либо искать листая список, либо искать по названию). Ну вообще прикольной фичей может быть возможность прикрутить GPS координаты и по ним автоматически выбирать ближайший объект.
3. Ну и собственно USSD запрос(чет посмотрел все жалуются что нет стандартного API у googla,но думаю с таким простым запросом сложностей не должно быть), пользователь тапнул на его текущий объект, получаем "номер объекта" и с ним уже отправляем запрос.
Как то так
Ну вполне возможно можно пойти более простым путем - создания "web-морды", но в таком случае у пользователя должен быть доступ в инет(да и не сказать что много выиграете от этого).
Spelcrawler
521 / 491 / 110
Регистрация: 12.03.2014
Сообщений: 1,641
Завершенные тесты: 1
20.01.2016, 10:19     Приложение для Android, которое отправляет USSD запросы #3
Цитата Сообщение от androbro Посмотреть сообщение
с таким простым запросом сложностей не должно быть
Без рута не послать, можно только номер в звонилку подставить. Хотя тоже не плохой вариант всего-то одно дополнительное нажатие.
androbro
313 / 273 / 51
Регистрация: 17.10.2014
Сообщений: 820
20.01.2016, 10:30     Приложение для Android, которое отправляет USSD запросы #4
Цитата Сообщение от Spelcrawler Посмотреть сообщение
Без рута не послать
ну вполне возможно, сам не сталкивался, что наверно и логично с точки зрения безопасности.
эт получается интент с "Intent.ACTION_CALL" не прокатывает, можно только "Intent.ACTION_DIAL"?
Spelcrawler
521 / 491 / 110
Регистрация: 12.03.2014
Сообщений: 1,641
Завершенные тесты: 1
20.01.2016, 10:33     Приложение для Android, которое отправляет USSD запросы #5
androbro, если честно уже не помню давно пробовал. По моему там просто URI с USSD не парсился.
androbro
313 / 273 / 51
Регистрация: 17.10.2014
Сообщений: 820
20.01.2016, 11:01     Приложение для Android, которое отправляет USSD запросы #6
Цитата Сообщение от Spelcrawler Посмотреть сообщение
если честно уже не помню давно пробовал. По моему там просто URI с USSD не парсился.
да по всей видимости давно была, щас попробовал на устройстве(Android 5.0.2), баланс в лет проверяется:
Java
1
2
3
4
5
6
7
8
9
10
    String baseUssd = Uri.encode("*") + "100" + Uri.encode("#");
    StringBuilder builder = new StringBuilder();
    builder.append(baseUssd);
 
    Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + builder.toString()));
    if (ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
        // TODO: Consider calling
        return;
    }
    startActivity(intent);
еще и checkSelfPermission требует

Добавлено через 11 минут
Цитата Сообщение от androbro Посмотреть сообщение
щас попробовал на устройстве(Android 5.0.2)
на Android 4.0.4 тоже все прокатывает.
Паблито
резкий
1890 / 1624 / 505
Регистрация: 12.05.2014
Сообщений: 5,849
Завершенные тесты: 1
20.01.2016, 11:43     Приложение для Android, которое отправляет USSD запросы #7
я ведь давал кусок кода, где звонит на любой номер
при этом на экране вообще ничего не показывается
androbro
313 / 273 / 51
Регистрация: 17.10.2014
Сообщений: 820
20.01.2016, 12:03     Приложение для Android, которое отправляет USSD запросы #8
Цитата Сообщение от Паблито Посмотреть сообщение
я ведь давал кусок кода, где звонит на любой номер
ну уж извините что не видели когда Вы давали, за всем не уследишь, всего не упомнишь
если приведете, лишним не будет

Добавлено через 1 минуту
Цитата Сообщение от Паблито Посмотреть сообщение
при этом на экране вообще ничего не показывается
и что прям вообще вообще ничего не показывается? прикольно на каких версиях работает, рут нужен?
Паблито
резкий
1890 / 1624 / 505
Регистрация: 12.05.2014
Сообщений: 5,849
Завершенные тесты: 1
20.01.2016, 12:21     Приложение для Android, которое отправляет USSD запросы #9
да перепутал с смс отправкой
тут показывается, но подтверждать ничего не нужно - набор сам идет
Java
1
2
3
        Intent intent = new Intent(Intent.ACTION_CALL);
        intent.setData(Uri.parse("tel:*123*12345"));
        startActivity(intent);
или я вообще буксую и не в теме?

Добавлено через 8 минут
"показывается" я имею ввиду маленькое окошко-диалог
_bio
 Аватар для _bio
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 25
20.01.2016, 20:43  [ТС]     Приложение для Android, которое отправляет USSD запросы #10
androbro, Данные у меня есть в табличном варианте, два столбца "Название объекта - номер объекта". Как показывает опыт данные у нас меняться не будут, если только добавляться и то раз в год, поэтому хранить данные в БД нецелесообразно, может лучше массив? Или под андроид лучше БД?
Веб морда отпадает, тк некоторые объекты находятся далеко и сеть будет ловить очень плохо.
Фича с GPS заманчивая и интересная, но опыта в программирование мобильных приложений нет, чтобы реализовать нормально)) этот бы вариант на костылях собрать)
Вообщем конечный вариант приложения Я вижу так:
Миниатюры
Приложение для Android, которое отправляет USSD запросы   Приложение для Android, которое отправляет USSD запросы   Приложение для Android, которое отправляет USSD запросы  

Приложение для Android, которое отправляет USSD запросы  
_bio
 Аватар для _bio
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 25
20.01.2016, 20:48  [ТС]     Приложение для Android, которое отправляет USSD запросы #11
На один объект может быть 3 варианта USSD:
Прибытие
Проверка статуса
Убытие

Ребят, если есть более рациональная компоновка и вариант приложения скажите=)
И такой вопрос, где все таки хранить шаблоны запросов для объектов?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2016, 09:05     Приложение для Android, которое отправляет USSD запросы
Еще ссылки по теме:

Android Узнать приложение которое запустило моё приложение
Android Клиент-сервер приложение для android
Приложение для Android Android
Android Приложение для Android [Постер новостей]

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
androbro
313 / 273 / 51
Регистрация: 17.10.2014
Сообщений: 820
21.01.2016, 09:05     Приложение для Android, которое отправляет USSD запросы #12
Цитата Сообщение от _bio Посмотреть сообщение
Как показывает опыт данные у нас меняться не будут, если только добавляться и то раз в год, поэтому хранить данные в БД нецелесообразно, может лучше массив? Или под андроид лучше БД?
ну если они данные у Вас статичны, то залейте все в БД, да и не парьтесь, это на порядок упрощает создание приложения, так как не нужен сервер для синхронизации данных. Приложение будет полностью в оффлайн режиме.
Цитата Сообщение от _bio Посмотреть сообщение
На один объект может быть 3 варианта USSD:
Прибытие
Проверка статуса
Убытие
Ребят, если есть более рациональная компоновка и вариант приложения скажите=)
ну тут необходимо более точно знать как все происходит, пользователь каждый день проделывает данную последовательность действий "приехал - перевел статус в прибытие, уехал - перевел статус в убытие" или же нет, и статусы к примеру каждый день сбрасываются...а что если он забудет выставить какой либо статус о убытии например а на следующий день выставит прибытие...может ли кто то сторонний изменить статус пользователя, если нет то статус можно запоминать локально и выводить к примеру в тулбар, что бы пользователь сразу мог видеть свой текущий статус без лишних запросов...в общем тут есть над чем подумать...
Цитата Сообщение от _bio Посмотреть сообщение
И такой вопрос, где все таки хранить шаблоны запросов для объектов?
где лучше хранить с точки зрения чего?
безопасности?
так то оно там всего как я понял 3 комбинации USSD, обычные строки.
Yandex
Объявления
21.01.2016, 09:05     Приложение для Android, которое отправляет USSD запросы
Ответ Создать тему
Опции темы

Текущее время: 11:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru