Intereting Posts
Операторы обработки переопределения 2 и RxJava Как обеспечить, чтобы выбранное пользователем изображение не изменилось после перезагрузки Android? Кинжал не создает компоненты для / тестового класса Зачем использовать WeakReference для прослушивателей Android? Android Показать активность Заголовок / строка состояния вверху после того, как она скрыта Android / PhoneGap: использование сторонних библиотек в разработке плагинов Android-сборщик мусора Освобожденная память Как анимация Android работает под капотом? Имя GoogleAccountCredential равно null, несмотря на вызов setSelectedAccountName (Android 6.0) Холст не рисует в пользовательском представлении Как удалить задержку перед анимацией LayoutTransition Как обрабатывать обратные вызовы URL-адресов OAuth с помощью фильтров Intent, если проверка подлинности выполняется с помощью webview? Как загрузить сервисы Google Play в эмулятор Android? Побочные эффекты изменения фильтра и требования к существующему приложению в Android Play / Market Android 4.3: Родной сбой в unkown.unknown

Android SMS API

Я знаю, что поставщик контента SMS не является частью публичного API (по крайней мере, не документирован), но если я правильно понимаю, все же можно использовать многие функции SMS, если вы знаете, как использовать API (?).

Например, довольно просто вставить SMS-сообщение в свой почтовый ящик:

ContentValues values = new ContentValues(); values.put("address", "+457014921911"); contentResolver.insert(Uri.parse("content://sms"), values); 

К сожалению, это не вызывает стандартное уведомление «new-SMS-in-your-inbox». Можно ли запускать это вручную?

Изменить : AFAIK «стандартное почтовое приложение (Messaging)» в Android прослушивает входящие SMS-сообщения, используя разрешение android.permission.RECEIVE_SMS. И затем, когда новое SMS-сообщение поступило, уведомление о статусной строке вставляется с «специальным» идентификатором уведомления. Таким образом, одним из решений моей проблемы (изложенным выше) может быть поиск и отправка правильного намерения трансляции; Что-то вроде «НОВЫЕ СМС ПРИБЫЛИ» -интерес.

Edit : Загружено приложение для обмена сообщениями сторонних производителей ( chompsms ) с Android-рынка. Это приложение удовлетворяет мои потребности лучше. Когда я выполняю код выше, chompsms замечает новые sms и показывает «стандартное уведомление о состоянии». Поэтому я бы сказал, что стандартное приложение Android Messaging не обнаруживает sms правильно? Или я не прав?

Solutions Collecting From Web of "Android SMS API"

К сожалению, код, ответственный за эти уведомления, скрыт в приложении обмена сообщениями . Класс MessagingNotification имеет static метод updateAllNotifications , который можно вызвать с помощью PathClassLoader и отражения:

 PathClassLoader c = new PathClassLoader("/system/app/Mms.apk", getClassLoader()); Class.forName("com.android.mms.util.ContactInfoCache", true, c) .getMethod("init", Context.class).invoke(null, context); Class.forName("com.android.mms.transaction.MessagingNotification", true, c) .getMethod("updateAllNotifications", Context.class).invoke(null, context); 

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

Не могли бы вы вызвать уведомление PUSH после SMS?

Тема: Поддерживает ли Android почти в режиме реального времени push-уведомление?

Возможно, вам стоит заменить

 content://sms 

с

 content://sms/inbox