The following access types each have different features. They are listed in the order in which an incoming message is processed. Ideally, you will select the lowest priority level suitable for your app. In some cases, your app will be automatically placed, and in cases where another app interferes with your app's performance, it will be re-prioritized. Proper user experience is critical.
Please contact us for system level access as a carrier or manufacturer.
Please contact us for reserved, premium access and features.
Antispam apps block messages from regular messaging and other apps
Instructions for Integrating Antispam Apps
Antispam apps should not request “SMS_DELIVERED” - if you do, you will be denied this permission level and it will default to “unregistered” and your app will not work. This will also help with backward compatibility. Also, SDSMS will send duplicate messages to your app to confirm if the broadcast should be aborted based your user settings. You will not have SMS/MMS write access to the SMS provider.
SMS / MMS preprocessing for special features.
Instructions for Integrating Plugins
Plugin apps should not request “SMS_DELIVERED” - if you do, you will be denied this permission level and it will default to “unregistered” and your app will not work. This will also help with backward compatibility. Also, SDMM will send duplicate messages to your app to confirm if the broadcast should be aborted or modified by your app. You will not have SMS/MMS write access to the SMS provider, so modifications must be made to the broadcast intent.
SMS Autoresponders
Instructions for Integrating Autoresponders
Autoresponder apps should not request “SMS_DELIVERED” - if you do, you will be denied this permission level and it will default to “unregistered” and your app will not work. This will also help with backward compatibility. Do not write the received message to the SMS provider.
Premium access for messaging apps. Provide enhanced processing and services to your users before standard messaging apps. Please contact us for details.
Full-featured messaging apps.
Instructions for Integrating Full-Featured Messaging Apps
By requesting this type of access your app will be responsible for writing to the SMS database. Therefore, all features should work in your app. As with pre-KitKat messaging, your app should abort the broadcast if there is reason to (for example, you have an anti-spam feature). The first “messaging” app to either abort or write the message will be the last in this group to receive it.
It is important to NOT follow all of Android's recommendations when you are not the “Default SMS App”. Proper integration requires that your app only disable them when neither your app nor SDMM is the “Default SMS App”. SDMM allows your app to continue to function properly as if it were the default app.
Backup apps will have full access to the SMS database.
Instructions for Integrating Messaging Backup Apps
Since the system broadcasts “SMS_RECEIVED”, SDMM will do the same (in the event that Android changes that going forward). If you integrate with SDSMS, you will be able to provide full backup/recovery without user intervention or action.
Observers will simply receive an additional SMS_RECEIVED broadcast.
Apps that integrate with SDMM but are not registered with an account.
Reserved for apps that integrate and do not request an appropriate Access Type (either based on their requested permissions, behavior, SDMM review, attempting to modify the SMS tables with authorization, etc.)