La mia app Android utilizza gli SMS per inviare notifiche silenziose. Prima di Kitkat queste notifiche non venivano registrate nel provider SMS e quindi non comparivano negli elenchi di conversazioni dell'utente. Questo è il comportamento desiderato dell'app.Come inviare un SMS in Android Kitkat dall'app non predefinita senza scrivere al provider SMS
Con le modifiche di Kitkat SMS (fare riferimento alla documentazione di SmsManger riportata di seguito) questi messaggi vengono ancora inviati, ma vengono ora scritti automaticamente al provider SMS e quindi compaiono negli elenchi di conversazioni dell'utente. Questo non è auspicabile per la mia app.
Cominciando con Android 4.4 (API di livello 19), se e solo se l'applicazione non è selezionato come app SMS predefinita, il sistema scrive automaticamente i messaggi inviati tramite questo metodo per il provider SMS (l'applicazione predefinita SMS è sempre responsabile della scrittura dei messaggi inviati al provider SMS). Per informazioni su come comportarsi come l'app SMS predefinita, vedere Telefonia.
Sembra che potrei impedire la scrittura automatica al provider rendendo l'app predefinita e quindi non scrivendo al provider. Tuttavia, questa sarebbe una terribile esperienza utente nel contesto della mia app, quindi la considererei solo un'ultima risorsa.
La mia domanda è allora - c'è un modo per silenziosamente inviare SMS in Kitkat senza mia app dover essere l'applicazione di default?
Ho letto le risposte a questa domanda Send SMS message using non default SMS app on Android 4.4 ma ciò è più preoccupante per garantire che i messaggi siano scritti nel provider. Non lo voglio