如何检查我的 SMS 应用程序在 Android 中是否是默认应用程序

How to check whether my SMS app is default in Android

我想检查我的 SMS 应用程序是否在 android 中设置为默认应用程序。我正在学习本教程:

http://android-developers.blogspot.com/2013/10/getting-your-sms-apps-ready-for-kitkat.html

我可以通过以下代码将我的短信应用设置为默认短信应用:

Intent intent = new Intent(context, Sms.Intents.ACTION_CHANGE_DEFAULT);
intent.putExtra(Sms.Intents.EXTRA_PACKAGE_NAME, context.getPackageName());
startActivity(intent);

但我想检查一下我的短信应用是否被设置为默认应用。我怎样才能做到这一点?

您可以使用 getDefaultSmsPackage (Context context):

Used to determine the currently configured default SMS package.

例如:

public static boolean isDefaultSmsApp(Context context) {
    return context.getPackageName().equals(Telephony.Sms.getDefaultSmsPackage(context));
}