Android 安卓系统中未打开SMS意图
我正在开发android应用程序,其中我正在使用SMS功能。为此,我正在使用intent启动一项针对本机sms功能的活动 下面给出了我的代码,但在出现以下异常时: 代码: 错误日志: 像这样试试Android 安卓系统中未打开SMS意图,android,android-intent,sms,Android,Android Intent,Sms,我正在开发android应用程序,其中我正在使用SMS功能。为此,我正在使用intent启动一项针对本机sms功能的活动 下面给出了我的代码,但在出现以下异常时: 代码: 错误日志: 像这样试试 Intent intent_sms = new Intent(Intent.ACTION_VIEW); intent_sms.setData(Uri.parse("sms:")); intent_sms.putExtra("sms_body", "Hello"); startActivity(inte
Intent intent_sms = new Intent(Intent.ACTION_VIEW);
intent_sms.setData(Uri.parse("sms:"));
intent_sms.putExtra("sms_body", "Hello");
startActivity(intent_sms);
您可以尝试以下代码打开收件箱:
Intent intent_sms = new Intent(Intent.ACTION_MAIN);
intent_sms.addCategory(Intent.CATEGORY_LAUNCHER);
intent_sms.setClassName("com.android.mms",
"com.android.mms.ui.ConversationList");
startActivity(intent_sms);
请尝试以下代码:
@TargetApi(Build.VERSION_CODES.KITKAT)
protected void idClicked() {
Intent smsIntent;
// At least KitKat
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
// Need to change the build to API 19
String defaultSmsPackageName = Telephony.Sms.getDefaultSmsPackage(getActivity());
smsIntent = new Intent(Intent.ACTION_SEND);
smsIntent.setType("text/plain");
smsIntent.putExtra(Intent.EXTRA_TEXT, mText);
// Can be null in case that there is no default, then the user would be able to choose
// any app that support this intent.
if (defaultSmsPackageName != null) {
smsIntent.setPackage(defaultSmsPackageName);
}
startActivity(smsIntent);
// Older versions
} else {
smsIntent = new Intent(Intent.ACTION_VIEW);
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.putExtra("sms_body", mText);
if (smsIntent.resolveActivity(getActivity().getPackageManager()) != null) {
startActivity(smsIntent);
} else {
UIUtils.showShortToast(getString(R.string.no_sms_app), getActivity());
}
}
}
所以你需要直接打开收件箱?你想做什么?打开收件箱或发送短信android.content.ActivityNotFoundException:未找到可处理意向的活动{act=android.Intent.action.VIEW typ=vnd.android-dir/mms-sms有额外功能}
Intent intent_sms = new Intent(Intent.ACTION_MAIN);
intent_sms.addCategory(Intent.CATEGORY_LAUNCHER);
intent_sms.setClassName("com.android.mms",
"com.android.mms.ui.ConversationList");
startActivity(intent_sms);
@TargetApi(Build.VERSION_CODES.KITKAT)
protected void idClicked() {
Intent smsIntent;
// At least KitKat
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
// Need to change the build to API 19
String defaultSmsPackageName = Telephony.Sms.getDefaultSmsPackage(getActivity());
smsIntent = new Intent(Intent.ACTION_SEND);
smsIntent.setType("text/plain");
smsIntent.putExtra(Intent.EXTRA_TEXT, mText);
// Can be null in case that there is no default, then the user would be able to choose
// any app that support this intent.
if (defaultSmsPackageName != null) {
smsIntent.setPackage(defaultSmsPackageName);
}
startActivity(smsIntent);
// Older versions
} else {
smsIntent = new Intent(Intent.ACTION_VIEW);
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.putExtra("sms_body", mText);
if (smsIntent.resolveActivity(getActivity().getPackageManager()) != null) {
startActivity(smsIntent);
} else {
UIUtils.showShortToast(getString(R.string.no_sms_app), getActivity());
}
}
}