Утилита SMS на Android 4.4 KitKat

Перед выпуском KitKat я разработал приложение, которое использует предварительно определенные короткие коды для выполнения транзакций по SMS. Например, отправка

"<PIN> BAL <phone number>"

Получит ответ с вашим кредитным балансом. Пользователь не видит короткие коды, а вместо этого выбирает нужную функцию из списка, вводит свой PIN-код и нажимает отправить. Сообщение формулируется и отправляется приложением. Главное здесь то, что его исходящие СМС (которые содержат его PIN-код) нигде не сохраняются.

Однако с KitKat, если мое приложение не является приложением SMS по умолчанию, исходящие SMS сохраняются в приложении обмена сообщениями по умолчанию. Я также не могу просить пользователей установить мое приложение по умолчанию, потому что его нельзя использовать для обычного обмена сообщениями.

Решение или обходной путь был бы спасателем.


person Sam    schedule 02.01.2014    source источник


Ответы (1)


Главное здесь то, что его исходящие СМС (которые содержат его PIN-код) нигде не сохраняются. Решение или обходной путь был бы спасателем.

Забудь - чистых нет. см. документы:

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

person Marcin Orlowski    schedule 02.01.2014
comment
+1 за это. Вы вряд ли найдете обходной путь, и даже если вы это сделаете, он, вероятно, не будет надежным в течение длительного времени. Вся причина этого изменения, вероятно, заключалась в том, чтобы не дать приложениям отправлять текстовые сообщения премиум-сервисам, накапливая огромные $$ на счетах за телефон, поскольку это распространенный метод для вредоносных программ для Android. Вам, вероятно, лучше переключиться с SMS на связь клиент/сервер на основе http. - person FoamyGuy; 02.01.2014
comment
@FoamyGuy: +1 за отказ от SMS-решения. ИМХО, взаимодействие на основе SMS, подобное этому, предназначено для обычных телефонов (также известных как немые телефоны), где пользователь не может установить приложение и ограничен грубыми интерфейсами, такими как SMS. Шлюз SMS следует рассматривать как API, а приложения для смартфонов (или мобильные веб-приложения или обычные веб-приложения) должны использовать какой-либо другой API. По общему признанию, это не очень хорошо работает в районах, где есть сотовая связь (голос + SMS), но ограничены мобильные данные. - person CommonsWare; 02.01.2014