0

Since as per Google, from Android KitKat onward, only the default messaging app would be able to modify the SMS database on the phone. And we should make our own app as default to do SMS database modification.

But the problem is, I have observed some Android phones with version 4.4 above, can still delete SMS or mark them as read even they are not selected as default from phone settings? (Ex. Gionee Marathon M4, etc).

How come it possible? Is the phone developer customizing the firmware as per their own requirements? If yes, then what is the solution?

I need to make an app for lollipop, which could able to read SMS and mark them as read, and ALSO, it should not affect the default messaging app which comes with the phone. The stock messaging app should give notification whenever an SMS is received? Is it possible?

Thanks in advance.

  • " Is the phone developer customizing the firmware as per their own requirements? " Yes. Some of the OEMs don't update ALL the APIs when they version the OS. This is actually quite common with a few of the OEMs. They'll say it's Android 5.0 but the Phone APIs are from 3. I have seen this with the Phone API, the Contacts API, and a few others. It's a nightmare if you are doing system level integration with devices. – David C Adams Feb 22 '16 at 20:39
  • Thanks for the information. But how come you make it that your current app API is actually from the labelled version, or from older version? – Partha Sarathi Mishra Feb 23 '16 at 05:22

1 Answers1

1

Yes, your app should be default SMS app to modify SMS storage after API 19 (KitKat), but, there is a workaround for KitKat to overcome this security. For API 21 (Lollipop), there is no known way to remove this restriction without being a default SMS app. So, you can read SMS, but can't mark as read.

Also, it is perfectly possible that some smartphone manufacturers remove this restriction, but I don't understand what solution do you need in that situation?

Community
  • 1
  • 1
Mirza Brunjadze
  • 544
  • 4
  • 10
  • I already mentioned the requirements in the question. I am repeating again. **I will set my app as default SMS app, but still I want the stock SMS app to get notifications while SMS is received. Also the stock SMS app should be able to mark the SMSes as read without been set as default** At present I have read and observed that once you make your app as default, the other stock SMS app not even get notification nor display any message when opened. As an Android developer, I didn't find any. Actually I want to make my app more generic. Is there any workaround for that? – Partha Sarathi Mishra Feb 23 '16 at 05:16
  • 1
    Sorry if I misunderstood your question, but as I already said, "For API 21 (Lollipop), there is no known way to remove this restriction". So you just can't do what you want. At least that's what I know – Mirza Brunjadze Feb 23 '16 at 05:28
  • Ok. Thanks for confirmation. – Partha Sarathi Mishra Feb 23 '16 at 05:36