2012-05-16 40 views
0

我想用android 2.2发送消息(短信/彩信)。首先,我做的意图选择器与ACTION_SEND来选择使用哪一个:如何发送消息在android 2.2?

Intent intent = new Intent(Intent.ACTION_SEND); 

intent.setType("text/plain"); 
intent.putExtra(Intent.EXTRA_SUBJECT, Resources.getString("InvitationSubject", getBaseContext())); 
String body = Resources.getString("InvitationBody", getBaseContext()) + Local.User.FirstName; 
intent.putExtra(Intent.EXTRA_TEXT, body); 

startActivity(Intent.createChooser(intent, "Invite friends")); 

但在这种情况下,选择节目“蓝牙消息,Google +和Gmail的”。我只想显示消息或其他消息应用程序。

我在sdk文档中看到有一个新的CATEGORY_APP_MESSAGING要使用,但它只能在API级别15中使用。我必须保持API级别8.有没有办法做到这一点?

回答

1

试试这个代码

String body = Resources.getString("InvitationBody", getBaseContext()) + Local.User.FirstName; 
Intent sendIntent = new Intent(Intent.ACTION_VIEW); 
sendIntent.putExtra("sms_body", smsBody); 
sendIntent.setType("vnd.android-dir/mms-sms"); 
startActivity(sendIntent); 

不要忘了在你的清单中添加这个<uses-permission android:name="android.permission.SEND_SMS" />

0

您可以使用彩信类短信,像这样

intent.setType("vnd.android-dir/mms-sms"); 
0

使用下面的代码来发送消息

Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND); 
shareIntent.setType("text/plain"); 
shareIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "message subject"); 
shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, "text"); 
startActivity(Intent.createChooser(shareIntent, "Pick a Share method")); 

,带出以下不需要

<uses-permission android:name="android.permission.SEND_SMS" /> 
+1

SEND_SMS无须许可。 – Tarun