2012-04-23 30 views
1

まず、私はエミュレータを使ってこれをテストします。 メッセージのテキスト(引数として送信される)でデフォルトのSMSアプリケーションを開き、ユーザーがそこから(および組み込みのアプリケーションから)コントロールを取得できるようにします。 私はこのコードを使用します:Android - 内蔵のSMSアプリケーションでSMSを送信

Button btnSMS = (Button) findViewById(R.id.btnSMS); 
    btnSMS.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View arg0) { 
      Intent it = new Intent(Intent.ACTION_VIEW); 
      it.putExtra("sms_body", "text"); 
      it.setType("vnd.android-dir/mms-sms"); 
     } 
    }); 

ボタンを押しても何も起こりません。 SMSの既定のアプリケーションを開き、ユーザーが入力しなければならないテキストやその他のフィールドを使用してメッセージを送信することが期待されます。これはエミュレータか私のコードのためですか?私はまた、マニフェストにパーミッションを指定:

<は、Androidの許可使用しています:名= "android.permission.SEND_SMS"/>

答えて

6

あなたはstartActivityが欠落している::

Intent it = new Intent(Intent.ACTION_VIEW); 
it.putExtra("sms_body", "text"); 
it.setType("vnd.android-dir/mms-sms"); 
startActivity(it); 

か次のコードを使用することもできます。

String number = "12346556"; // The number on which you want to send SMS 
startActivity(new Intent(Intent.ACTION_VIEW, Uri.fromParts("sms", number, null))); 
+0

私の頭の中で何が混乱しているのですか?ありがとう! – ali

+0

このコードはありがとうございます.... !!!!! –

1

SMSをSMSで送信SMSアプリケーション:

Intent i = new Intent(android.content.Intent.ACTION_VIEW); 

i.putExtra("address", "09090909; 092322424; 123456778"); 

i.putExtra("sms_body", "SMS Content"); 

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

startActivity(i);